:root{color-scheme:light;--bg:#fafbf8;--surface:#fff;--surface-soft:#f3f6f2;--surface-mint:#e4f1ea;--ink:#142c27;--muted:#66766e;--green:#103f32;--green-2:#075c46;--mint:#a9e9ca;--jade:#148a68;--outline:#e0e8e2;--shadow:0 15px 45px rgba(17,54,41,.075);--radius:18px;--max:1320px}
html[data-theme=dark]{color-scheme:dark;--bg:#0b1816;--surface:#13221e;--surface-soft:#172b25;--surface-mint:#193c31;--ink:#edf8f1;--muted:#afc2b8;--green:#0b3329;--green-2:#156c50;--mint:#8bd6b2;--jade:#7cd1a9;--outline:#2b473b;--shadow:0 17px 44px rgba(0,0,0,.16)}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:var(--bg);font-family:'DM Sans',sans-serif;font-size:16px;-webkit-font-smoothing:antialiased;line-height:1.6}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}svg{vertical-align:middle;flex-shrink:0}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3,h4{font-family:'Plus Jakarta Sans',sans-serif;line-height:1.16;letter-spacing:-.047em}h2{font-size:clamp(2rem,3.2vw,3.45rem);font-weight:800}h3{font-size:1.09rem;font-weight:750;letter-spacing:-.025em}p{line-height:1.65}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #4fc49d;outline-offset:3px}.container{width:min(calc(100% - 80px),var(--max));margin-inline:auto}.section{padding:87px 0}.eyebrow{font-weight:800;font-size:.72rem;letter-spacing:.135em;color:var(--jade);line-height:1.5;margin-bottom:16px}.eyebrow-light{color:#acecd0}.section-intro>p:not(.eyebrow){font-size:1.01rem;color:var(--muted);max-width:350px}.section-intro h2{margin-bottom:19px}.section-intro .btn{margin-top:19px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid transparent;min-height:46px;padding:12px 20px;border-radius:999px;font-size:.84rem;font-weight:800;line-height:1.2;transition:transform .22s,box-shadow .22s,background .22s,color .22s;white-space:nowrap;text-align:center}.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(16,63,50,.15)}.btn-primary{background:linear-gradient(110deg,#0b513f,#087758);color:#fff}.btn-primary:hover{background:linear-gradient(110deg,#146f50,#0d8864)}.btn-outline{background:transparent;color:var(--ink);border-color:#7b9e8e}.btn-outline:hover{background:var(--surface-mint)}.btn-outline-light{border-color:#a1cdb8;color:white;background:transparent}.btn-outline-light:hover{background:#1d6650}.btn-secondary{background:#509df4;color:white}.btn-pink{background:#f18a9d;color:#321e27}.btn-mint{background:#b4efd1;color:#0b392b}.btn-large{min-height:52px;padding:14px 23px}.skip-link{position:fixed;top:-120px;left:14px;z-index:3000;background:white;color:#103f32;padding:12px 20px}.skip-link:focus{top:12px}
/* Header / navigation */
.site-header{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 95%,transparent);border-bottom:1px solid var(--outline);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.nav-inner{min-height:80px;display:flex;align-items:center;gap:20px}.site-brand{display:inline-flex;align-items:center;gap:11px;flex-shrink:0}.brand-symbol{display:flex;align-items:center;justify-content:center;position:relative;width:39px;height:39px;border-radius:9px;background:#103e32;color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-size:21px;font-weight:800;letter-spacing:-.1em}.brand-symbol span{color:#92e0bb}.brand-wordmark{display:flex;flex-direction:column;line-height:1.12;letter-spacing:-.038em}.brand-wordmark strong{font-family:'Plus Jakarta Sans';font-size:1.17rem;font-weight:800}.brand-wordmark small{font-size:.47rem;letter-spacing:.34em;font-weight:800;margin-top:4px}.brand-custom-logo{max-height:62px;width:auto;max-width:240px}.desktop-nav{flex:1;display:flex;justify-content:center}.nav-menu,.nav-menu ul{list-style:none;padding:0;margin:0}.nav-menu{display:flex;align-items:center;gap:clamp(15px,1.8vw,32px)}.nav-menu a{display:block;color:var(--ink);font-weight:700;font-size:.79rem;transition:color .2s;padding:12px 0}.nav-menu a:hover,.nav-menu .current-menu-item>a{color:var(--jade)}.nav-menu li{position:relative}.nav-menu .sub-menu{position:absolute;left:-14px;top:100%;min-width:185px;background:var(--surface);border:1px solid var(--outline);padding:9px 16px;border-radius:14px;box-shadow:var(--shadow);opacity:0;visibility:hidden;transform:translateY(7px);transition:.2s}.nav-menu li:hover>.sub-menu,.nav-menu li:focus-within>.sub-menu{opacity:1;visibility:visible;transform:none}.nav-actions{display:flex;align-items:center;gap:10px}.icon-button{width:37px;height:37px;border:0;background:transparent;color:var(--ink);border-radius:50%;display:grid;place-items:center}.icon-button:hover{background:var(--surface-mint)}.sun-icon,.moon-icon{display:flex}html[data-theme=light] .moon-icon,html[data-theme=dark] .sun-icon{display:none}.nav-book{min-height:42px;padding:10px 18px}.menu-toggle{display:none}.mobile-nav[hidden]{display:none!important}.mobile-nav{background:var(--surface);border-top:1px solid var(--outline);padding:16px 24px 24px;flex-direction:column;gap:2px;box-shadow:0 22px 30px rgba(0,0,0,.1)}.mobile-nav a:not(.btn){padding:10px 6px;border-bottom:1px solid var(--outline);font-weight:700}.mobile-nav .btn{margin-top:14px}.language-switcher{max-width:100px;font-size:.77rem}.language-switcher select{max-width:100px;padding:5px;border:1px solid var(--outline);background:var(--surface);color:var(--ink);border-radius:7px}
/* Hero */
.hero-section{background:radial-gradient(circle at 65% 90%,rgba(136,192,156,.2),transparent 39%),var(--bg);overflow:hidden}.hero-layout{display:grid;grid-template-columns:.96fr 1.12fr;align-items:center;gap:15px;min-height:570px;padding-top:48px;padding-bottom:44px}.hero-copy{position:relative;z-index:2;padding:12px 0 4px}.hero-copy h1{font-size:clamp(3.25rem,5.1vw,5.9rem);line-height:1.075;letter-spacing:-.068em;margin:0 0 22px;font-weight:800}.hero-copy h1 span{color:var(--jade)}.hero-description{font-size:1.1rem;line-height:1.65;color:var(--ink);max-width:565px;margin-bottom:24px}.hero-points{display:flex;align-items:center;flex-wrap:wrap;gap:18px;margin:24px 0 30px}.hero-points span{display:flex;align-items:center;gap:8px;font-weight:700;font-size:.77rem;line-height:1.35;max-width:154px}.hero-points svg{background:#d4f3e0;color:#126f53;border-radius:50%;box-sizing:content-box;padding:9px}html[data-theme=dark] .hero-points svg{background:#1e604b;color:#b5f1d0}.cta-row{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.hero-trust{display:flex;align-items:center;gap:8px;color:var(--muted);margin:27px 0 0;font-size:.83rem;font-weight:600}.hero-trust svg{color:var(--jade)}.hero-media{position:relative;isolation:isolate;max-width:770px;margin-right:-53px}.hero-media>img{width:100%;border-radius:28px;box-shadow:0 22px 56px rgba(12,44,30,.09)}.hero-sticker{position:absolute;display:flex;align-items:center;gap:10px;background:#fff;color:#174237;border:1px solid #e4eee6;border-radius:15px;padding:13px 16px;box-shadow:0 14px 35px rgba(27,68,49,.16)}.hero-sticker svg{color:#168966}.hero-sticker strong,.hero-sticker small{display:block;line-height:1.25}.hero-sticker strong{font-size:.75rem}.hero-sticker small{font-size:.66rem;margin-top:3px;color:#667d6e}.hero-sticker-top{top:14%;left:-5%}.hero-sticker-bottom{bottom:8%;right:1%}
/* Platforms */
.platform-strip{border-top:1px solid var(--outline);border-bottom:1px solid var(--outline);background:var(--surface-soft)}.platform-inner{display:flex;align-items:center;gap:45px;justify-content:space-between;padding:24px 0}.platform-intro{font-size:.67rem;letter-spacing:.11em;line-height:1.4;color:var(--muted);font-weight:800;min-width:140px;max-width:160px}.platform-list{display:flex;flex:1;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:13px 23px}.platform-list span{font-size:clamp(.8rem,1.25vw,1.13rem);font-weight:800;letter-spacing:-.035em;color:var(--ink);opacity:.79}
/* Services */
.services-section{background:var(--bg)}.services-layout{display:grid;grid-template-columns:310px 1fr;gap:50px;align-items:center}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.service-card{min-height:214px;background:var(--surface);border:1px solid var(--outline);border-radius:16px;padding:23px 19px 21px;position:relative;box-shadow:0 8px 26px rgba(18,52,39,.035);transition:transform .22s,box-shadow .22s,border-color .22s}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:#9cd6b6}.service-icon,.consult-icon{width:47px;height:47px;display:grid;place-items:center;border-radius:13px;margin-bottom:20px}.icon-blue{background:#d5e9ff;color:#276cce}.icon-orange{background:#ffedcf;color:#d58824}.icon-pink{background:#ffe1e1;color:#d65b68}.icon-violet{background:#efe1fe;color:#8a51cb}.icon-mint{background:#d9f4e8;color:#087e61}.icon-periwinkle{background:#e4e7ff;color:#6b63c9}.service-card h3{font-size:.94rem;line-height:1.28;margin:0 0 10px}.service-card p{font-size:.82rem;color:var(--muted);line-height:1.45;margin:0;padding-right:15px}.service-arrow{position:absolute;bottom:19px;right:17px;width:28px;height:28px;display:grid;place-items:center;border:1px solid #9ed6c0;color:#0d805a;border-radius:50%;transition:background .2s}.service-card:hover .service-arrow{background:#c5efdc}
/* Portfolio */
.portfolio-section{background:linear-gradient(115deg,#0b352a 0%,#073b30 57%,#074a3b 100%);color:#fff;position:relative;overflow:hidden}.portfolio-section:before{content:"";position:absolute;inset:-100px auto auto -160px;width:450px;height:450px;background:radial-gradient(circle,rgba(71,166,119,.12),transparent 70%);pointer-events:none}.portfolio-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:33px}.portfolio-heading h2{margin-bottom:13px}.portfolio-heading>div:first-child{max-width:470px}.portfolio-heading p:not(.eyebrow){font-size:.96rem;line-height:1.6;color:#c9ded2;margin-bottom:0}.portfolio-filters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;max-width:730px}.filter-btn{color:#e4f2e8;border:1px solid #568574;background:rgba(255,255,255,.045);border-radius:50px;padding:9px 14px;font-size:.75rem;font-weight:700;transition:.2s}.filter-btn:hover,.filter-btn.is-active{color:#103f32;background:#aaedd0;border-color:#aaedd0}.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.portfolio-card{border:1px solid rgba(189,233,207,.17);border-radius:16px;overflow:hidden;background:rgba(255,255,255,.045);transition:transform .2s,background .2s}.portfolio-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.085)}.portfolio-card[hidden]{display:none}.portfolio-image{position:relative;overflow:hidden;aspect-ratio:1.55}.portfolio-image img{height:100%;width:100%;object-fit:cover;transition:transform .3s}.portfolio-card:hover img{transform:scale(1.03)}.portfolio-label{position:absolute;top:12px;left:12px;font-size:.64rem;color:#174436;background:rgba(251,255,251,.95);border-radius:50px;padding:5px 10px;font-weight:800}.portfolio-card-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:18px 17px}.portfolio-card-meta h3{font-size:.98rem;margin:0 0 4px;color:#fff}.portfolio-card-meta p{margin:0;color:#bed3c8;font-size:.78rem;line-height:1.3}.portfolio-go{width:34px;height:34px;flex-shrink:0;border-radius:50%;display:grid;place-items:center;background:#adedd0;color:#0d4938}.portfolio-go:hover{background:#fff}.portfolio-footnote{font-size:.77rem;color:#bbd7c8;margin:18px 0 0}.portfolio-more{margin-top:22px;text-align:center}.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:65px;height:65px;border-radius:50%;border:0;background:#fff;color:#0b503c}.video-play:hover{background:#aff0d0}
/* Consultations */
.consultations-section{background:var(--bg)}.consultation-layout{display:grid;grid-template-columns:300px 1fr;gap:45px;align-items:center}.consult-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.consult-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--outline);border-radius:17px;padding:25px 18px 18px;box-shadow:0 6px 21px rgba(13,52,31,.035)}.consult-card .consult-icon{margin-bottom:15px}.consult-card h3{font-size:.95rem;margin:0 0 12px;line-height:1.3}.consult-price{font-size:1.94rem;letter-spacing:-.045em;font-weight:800;line-height:1.2;margin-bottom:15px}.consult-price span{font-size:.69rem;font-weight:650;color:var(--muted);letter-spacing:0}.consult-price-text{font-size:1.04rem;letter-spacing:-.022em;min-height:37px}.consult-card p{font-size:.83rem;color:var(--muted);line-height:1.5;flex:1;min-height:76px}.consult-card .btn{font-size:.72rem;white-space:normal;min-height:40px;padding:11px 8px;width:100%}
/* Process */
.process-section{padding-top:76px;padding-bottom:70px;border-top:1px solid var(--outline);background:var(--bg)}.process-layout{display:grid;grid-template-columns:300px 1fr;gap:48px;align-items:center}.process-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.process-step{position:relative}.process-step:not(:last-child):after{content:'→';position:absolute;right:-13px;top:30px;color:var(--jade);font-size:25px;font-weight:400}.process-icon{height:53px;width:53px;border-radius:50%;border:1px solid #64bcab;display:grid;place-items:center;color:#167d64;background:#def4e8;margin-bottom:13px}.process-step:nth-child(2) .process-icon{background:#e2eeff;border-color:#88b4e7;color:#2c69b4}.process-step:nth-child(4) .process-icon{background:#d8f1df}.process-step b{color:var(--jade);font-size:.82rem}.process-step h3{font-size:1.01rem;margin:4px 0 7px}.process-step p{font-size:.77rem;color:var(--muted);line-height:1.55;margin:0;max-width:150px}
/* Client care */
.care-section{background:var(--surface-soft);border-top:1px solid var(--outline);border-bottom:1px solid var(--outline)}.care-layout{display:grid;grid-template-columns:300px 1fr;gap:45px;align-items:center}.care-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.care-card{background:var(--surface);border:1px solid var(--outline);border-radius:16px;padding:25px 22px;min-height:225px}.care-card svg{color:var(--jade);margin-bottom:19px}.care-card h3{font-size:1rem;margin-bottom:10px}.care-card p{font-size:.83rem;margin:0;color:var(--muted)}
/* Resources */
.resources-section{background:var(--bg);padding-top:72px;padding-bottom:72px}.resources-layout{display:grid;grid-template-columns:300px 1fr;gap:45px;align-items:center}.resource-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.resource-card{min-height:176px;border-radius:15px;border:1px solid var(--outline);background:var(--surface);padding:19px 15px;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.resource-card:hover{transform:translateY(-3px);border-color:#8dccb1}.resource-icon{display:grid;place-items:center;color:#16856a;width:40px;height:40px;background:#e3f3ed;border-radius:11px;margin-bottom:12px}.resource-card strong{font-size:.83rem;line-height:1.35;letter-spacing:-.022em}.resource-card small{display:flex;align-items:center;gap:6px;margin-top:auto;padding-top:12px;color:var(--jade);font-size:.72rem;font-weight:750}
/* Contact */
.contact-section{background:#0b3b2f;color:white;position:relative}.contact-layout{display:grid;grid-template-columns:.85fr 1fr;gap:90px;align-items:start}.contact-intro h2{font-size:clamp(2.3rem,3.8vw,4rem);margin-bottom:23px}.contact-intro>p:not(.eyebrow){color:#d4e5dd;font-size:1.02rem;max-width:460px}.contact-perks{display:flex;flex-direction:column;gap:15px;margin:30px 0}.contact-perks span{display:flex;align-items:center;gap:12px;font-size:.92rem}.contact-perks svg{color:#93e4bd}.contact-form-wrap{background:#fff;color:#15362b;border-radius:19px;padding:31px 32px;box-shadow:0 25px 50px rgba(0,0,0,.13)}.contact-form-wrap h3{font-size:1.45rem;margin:0 0 7px}.contact-form-wrap>p{color:#64756c;font-size:.86rem;margin-bottom:23px}.contact-form{display:flex;flex-direction:column;gap:12px}.contact-form label{font-size:.79rem;font-weight:750;color:#304c3d}.contact-form label span:not(.consent-label span){color:#ce6978}.contact-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-form input:not([type=checkbox]),.contact-form select,.contact-form textarea{display:block;width:100%;color:#173b30;background:#f7faf7;border:1px solid #dce7df;border-radius:10px;padding:13px 13px;min-height:46px;margin-top:7px;font-weight:500;font-size:.88rem;outline-offset:2px}.contact-form select{margin-top:0}.contact-form textarea{min-height:130px;resize:vertical;margin-top:0}.consent-label{display:flex;align-items:flex-start;gap:9px;font-size:.77rem!important;line-height:1.5;font-weight:500!important}.consent-label input{flex-shrink:0;margin-top:4px;accent-color:#177a5a}.consent-label span{color:#455d52}.btn-submit{margin-top:5px;align-self:flex-start;min-width:195px}.form-disclaimer{color:#6d7f75;font-size:.69rem;margin:3px 0 0}.honeypot{position:absolute;left:-99999px}.form-notice{padding:12px 15px;border-radius:10px;margin-bottom:16px;font-size:.87rem}.form-notice.success{background:#daf2e2;color:#135734}.form-notice.error{background:#ffe6e1;color:#914537}
/* Footer */
.site-footer{background:var(--bg);padding-top:57px}.footer-main{display:grid;grid-template-columns:2.1fr 1fr 1fr 1.2fr;gap:58px;padding-bottom:55px}.footer-about>p{font-size:.85rem;color:var(--muted);max-width:330px;margin:20px 0}.social-list{display:flex;flex-wrap:wrap;gap:10px}.social-list a{font-size:.75rem;color:var(--jade);font-weight:700}.footer-column{display:flex;flex-direction:column;align-items:start;gap:13px}.footer-column h3{font-size:.91rem;margin:4px 0 10px}.footer-column a{display:inline-flex;align-items:center;gap:8px;color:var(--muted);font-size:.85rem;line-height:1.35}.footer-column a:hover{color:var(--jade)}.footer-bottom{border-top:1px solid var(--outline);display:flex;justify-content:space-between;gap:20px;padding:21px 0;font-size:.73rem;color:var(--muted)}.floating-whatsapp{position:fixed;bottom:24px;right:24px;border-radius:50%;width:56px;height:56px;background:#17855d;color:white;display:grid;place-items:center;z-index:90;box-shadow:0 10px 25px rgba(11,69,42,.24)}.floating-whatsapp:hover{background:#0d6245}
/* Inner pages */
.generic-page{min-height:53vh;padding-top:85px;padding-bottom:100px}.generic-heading{margin-bottom:36px;max-width:800px}.generic-heading h1,.not-found h1{font-size:clamp(2.4rem,5vw,5rem);margin:6px 0 0}.prose-content{max-width:880px;font-size:1.04rem;line-height:1.8}.prose-content img{border-radius:12px}.prose-content a,.text-link{color:var(--jade);text-decoration:underline}.prose-content h2{font-size:2rem}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.blog-card{border:1px solid var(--outline);border-radius:15px;background:var(--surface);padding:16px}.blog-card img{width:100%;aspect-ratio:1.5;object-fit:cover;border-radius:10px}.blog-card h2{font-size:1.25rem;margin-top:18px}.blog-card p{font-size:.85rem;color:var(--muted)}.single-featured img{width:100%;height:auto;max-height:550px;object-fit:cover;border-radius:20px;margin-bottom:35px}.single-next{margin-top:50px}.not-found{padding-top:130px;padding-bottom:150px}.not-found p:not(.eyebrow){color:var(--muted)}.video-dialog{padding:55px 20px 20px;width:min(92vw,820px);border:none;background:#0c221c;border-radius:17px;color:#fff}.video-dialog::backdrop{background:rgba(0,0,0,.8)}.video-dialog video{width:100%;max-height:76vh}.video-close{position:absolute;top:10px;right:10px;color:white;background:transparent;border:0;padding:6px}
/* Dark mode touches */
html[data-theme=dark] .hero-media>img{filter:brightness(.89)}html[data-theme=dark] .consult-card,html[data-theme=dark] .resource-card,html[data-theme=dark] .service-card,html[data-theme=dark] .care-card{box-shadow:none}html[data-theme=dark] .contact-form-wrap{background:#f6faf6;color:#15362b}html[data-theme=dark] .portfolio-section{background:#07241c}
@media(max-width:1200px){.container{width:min(calc(100% - 50px),var(--max))}.hero-copy h1{font-size:clamp(3.1rem,5vw,4.6rem)}.services-layout,.consultation-layout,.process-layout,.care-layout,.resources-layout{grid-template-columns:265px 1fr;gap:30px}.nav-menu{gap:17px}.nav-menu a{font-size:.75rem}.service-card{padding:20px 15px}.portfolio-filters{max-width:620px}}
@media(max-width:1020px){.desktop-nav{display:none}.menu-toggle{display:grid}.nav-inner{justify-content:space-between}.mobile-nav{display:flex}.container{width:min(calc(100% - 42px),var(--max))}.hero-layout{min-height:auto;padding-top:47px;padding-bottom:55px;grid-template-columns:1fr 1fr;gap:8px}.hero-copy h1{font-size:clamp(2.8rem,5.1vw,4rem)}.hero-description{font-size:1rem}.hero-points{gap:12px}.hero-points span{font-size:.7rem}.hero-media{margin-right:-20px}.hero-sticker-top{left:-7%}.services-layout,.consultation-layout,.process-layout,.care-layout,.resources-layout{grid-template-columns:1fr;gap:28px}.section-intro>p:not(.eyebrow){max-width:680px}.services-grid{grid-template-columns:repeat(3,1fr)}.portfolio-heading{align-items:start;flex-direction:column;gap:19px}.portfolio-filters{justify-content:flex-start;max-width:none}.process-steps{gap:27px}.resource-cards{grid-template-columns:repeat(4,1fr)}.contact-layout{gap:40px}.footer-main{gap:22px}}
@media(max-width:760px){.container{width:min(calc(100% - 34px),540px)}.section{padding:57px 0}.nav-inner{min-height:66px}.brand-symbol{height:35px;width:35px}.brand-wordmark strong{font-size:1.03rem}.brand-wordmark small{font-size:.4rem}.nav-book{display:none}.hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:31px;padding:39px 0 41px}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(2.8rem,9vw,4.4rem);line-height:1.1;margin-bottom:16px}.hero-description{font-size:.98rem;margin-bottom:19px}.hero-points{display:none}.cta-row{display:flex;flex-direction:column;align-items:stretch;gap:11px}.cta-row .btn{width:100%;min-height:51px}.hero-trust{margin-top:19px;font-size:.77rem}.hero-media{width:100%;margin-right:0}.hero-media>img{border-radius:18px}.hero-sticker{padding:8px 10px;border-radius:10px}.hero-sticker strong{font-size:.57rem}.hero-sticker small{font-size:.52rem}.hero-sticker svg{width:15px;height:15px}.hero-sticker-top{top:5%;left:-1%}.hero-sticker-bottom{bottom:4%;right:-1%}.platform-inner{flex-direction:column;align-items:start;gap:13px;padding:20px 0}.platform-intro{max-width:none}.platform-list{gap:13px 24px;justify-content:flex-start}.platform-list span{font-size:.88rem}.section-intro h2,.portfolio-heading h2{font-size:clamp(2.1rem,8vw,2.8rem)}.services-grid{grid-template-columns:1fr;gap:10px}.service-card{min-height:auto;display:grid;grid-template-columns:48px 1fr 28px;grid-template-rows:auto auto;column-gap:14px;padding:17px;align-items:center}.service-icon{grid-column:1;grid-row:1/3;margin:0}.service-card h3{grid-column:2;grid-row:1;margin:0;font-size:.95rem}.service-card p{grid-column:2;grid-row:2;font-size:.76rem;padding:0;margin-top:6px}.service-arrow{position:static;grid-column:3;grid-row:1/3}.portfolio-grid{display:grid;grid-template-columns:1fr;gap:15px}.portfolio-filters{flex-wrap:nowrap;overflow:auto;scrollbar-width:thin;padding-bottom:7px;width:calc(100vw - 34px)}.filter-btn{white-space:nowrap}.portfolio-card:not(:nth-child(-n+3)){display:none}.portfolio-grid.show-all .portfolio-card:not([hidden]){display:block}.portfolio-card .portfolio-image{aspect-ratio:1.55}.portfolio-section{padding-bottom:63px}.consult-cards{grid-template-columns:1fr;gap:12px}.consult-card{padding:21px 19px;display:grid;grid-template-columns:52px 1fr;column-gap:14px;align-items:center}.consult-card .consult-icon{grid-row:1/3;grid-column:1;margin:0}.consult-card h3{grid-column:2;grid-row:1;margin:0}.consult-price{grid-column:2;grid-row:2;margin:6px 0;font-size:1.5rem}.consult-price-text{font-size:.98rem;min-height:0}.consult-card p{grid-column:1/-1;min-height:0;margin:14px 0}.consult-card .btn{grid-column:1/-1}.process-steps{grid-template-columns:repeat(2,1fr);gap:23px}.process-step:nth-child(2):after{display:none}.process-step h3{font-size:1rem}.care-grid{grid-template-columns:1fr;gap:11px}.care-card{min-height:0;padding:21px}.care-card svg{margin-bottom:10px}.care-card p{max-width:360px}.resource-cards{grid-template-columns:repeat(2,1fr)}.resource-card{min-height:155px}.contact-layout{grid-template-columns:1fr;gap:30px}.contact-intro h2{font-size:2.7rem}.contact-form-wrap{padding:25px 20px}.contact-form .form-row{grid-template-columns:1fr}.footer-main{grid-template-columns:repeat(2,1fr);gap:34px}.footer-about{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}.generic-page{padding-top:55px}.blog-grid{grid-template-columns:1fr}.not-found{padding-top:70px;padding-bottom:80px}}
@media(max-width:390px){.hero-copy h1{font-size:2.65rem}.resource-cards{grid-template-columns:1fr 1fr;gap:8px}.resource-card{padding:13px;min-height:165px}.platform-list{gap:12px 17px}.portfolio-image{aspect-ratio:1.4}.footer-main{gap:27px}.contact-form-wrap{padding:21px 15px}.site-brand{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Published, permission-based client testimonials only */
.services-packages-link{display:block;margin-top:16px;font-size:.82rem}
/* v1.1.8: Branded, fully accessible progressive-enhancement testimonials carousel. */
.reviews-section{background:var(--bg);border-top:1px solid var(--outline);position:relative;overflow:hidden;isolation:isolate}
.reviews-section::before{content:"";position:absolute;pointer-events:none;inset:0 0 auto auto;width:min(36vw,540px);height:360px;background:radial-gradient(ellipse at top right,rgba(49,131,96,.075),transparent 72%);z-index:-1}
.reviews-intro{text-align:center;margin:0 auto 31px;max-width:780px}
.reviews-eyebrow{display:flex;align-items:center;gap:16px;justify-content:center;margin-bottom:13px;letter-spacing:.19em;color:var(--jade)}
.reviews-eyebrow span{height:1px;width:54px;background:var(--outline)}
.reviews-intro h2{font-family:Georgia,'Times New Roman',serif;letter-spacing:-.035em;font-weight:600;font-size:clamp(2.2rem,4.1vw,3.65rem);margin:0 0 13px;color:var(--ink)}
.reviews-description{margin:0 auto;color:var(--muted);max-width:615px;font-size:clamp(.89rem,1.1vw,1.02rem);line-height:1.65}
.reviews-carousel{position:relative;padding-inline:0}
/* Without JS the testimonials remain a normal responsive grid. */
.reviews-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:16px}
.review-card{margin:0;padding:25px 22px 23px;background:var(--surface);border:1px solid var(--outline);border-radius:18px;min-width:0;display:flex;flex-direction:column;box-shadow:0 6px 20px rgba(10,36,27,.025);transition:border-color .2s ease,box-shadow .2s ease;min-height:265px}
.review-card:hover{border-color:color-mix(in srgb,var(--jade) 55%,var(--outline));box-shadow:0 12px 27px rgba(10,36,27,.06)}
.review-card-heading{display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:40px}
.review-quote{display:grid;place-items:center;color:#d5bb78;background:var(--surface-mint);border:1px solid var(--outline);width:42px;height:42px;border-radius:13px}
.review-stars{display:inline-flex;align-items:center;gap:2px;flex-shrink:0;color:#bea061}
.review-star{display:block;fill:transparent;stroke:#bea061;stroke-width:1.7;stroke-linejoin:round;width:15px;height:15px}
.review-star.is-filled{fill:currentColor}
.review-card blockquote{font-size:clamp(.92rem,1.15vw,1.02rem);font-weight:600;color:var(--ink);line-height:1.58;letter-spacing:-.014em;margin:20px 0 22px;overflow-wrap:anywhere;flex:1}
.review-card figcaption{border-top:1px solid var(--outline);padding-top:17px;display:flex;align-items:center;gap:11px;min-width:0}
.review-avatar{display:grid;place-items:center;flex:0 0 49px;width:49px;height:49px;overflow:hidden;border-radius:50%;background:var(--surface-mint);border:1px solid var(--outline);color:var(--jade)}
.review-avatar-image{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%}
.review-avatar-initial{font-size:1.12rem;font-weight:800;line-height:1}
.review-author-copy{display:flex;flex-direction:column;gap:2px;min-width:0;color:var(--ink)}
.review-author-copy strong{font-size:.82rem;font-weight:800;line-height:1.4;overflow-wrap:anywhere}
.review-author-copy .review-client-role{color:var(--muted);font-size:.75rem;line-height:1.45;overflow-wrap:anywhere}
/* Only JS-enhanced galleries use page fades and on-screen navigation. */
.reviews-carousel.is-enhanced .reviews-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:stretch}
.reviews-carousel.is-enhanced .review-page{grid-area:1/1;display:grid;grid-template-columns:repeat(var(--review-count-on-page,4),minmax(0,1fr));gap:16px;width:100%;max-width:calc(var(--review-count-on-page,4) * 310px + (var(--review-count-on-page,4) - 1) * 16px);margin-inline:auto;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .48s ease,visibility .48s ease}
.reviews-carousel.is-enhanced .review-page.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.reviews-nav{position:absolute;top:50%;transform:translateY(-50%);z-index:5;display:grid;place-items:center;width:43px;height:43px;border-radius:50%;background:var(--surface);border:1px solid color-mix(in srgb,var(--jade) 50%,var(--outline));color:var(--ink);box-shadow:0 5px 18px rgba(0,0,0,.065);transition:background .2s,border-color .2s,color .2s}
.reviews-nav:hover{background:var(--surface-mint);color:var(--jade);border-color:var(--jade)}
.reviews-nav--prev{left:-56px}.reviews-nav--next{right:-56px}
.reviews-nav[hidden],.reviews-pagination[hidden]{display:none!important}
.reviews-pagination{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:23px}
.reviews-dots{display:flex;gap:9px;align-items:center;justify-content:center;flex-wrap:wrap}
.review-dot{width:10px;height:10px;border-radius:50%;border:1px solid var(--outline);background:color-mix(in srgb,var(--jade) 23%,var(--surface));padding:0;transition:background .2s,transform .2s}
.review-dot[aria-current="true"]{background:#bba366;border-color:#bba366;transform:scale(1.2)}
.review-dot:hover{border-color:var(--jade)}
.reviews-counter{font-size:.75rem;letter-spacing:.08em;color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}
.reviews-signoff{text-align:center;margin:28px 0 0;color:var(--muted);font-size:.66rem;letter-spacing:.22em;font-weight:700}
.reviews-signoff span{color:#bea061;padding:0 9px}
@media(max-width:1439px){.reviews-carousel.is-enhanced{margin-inline:30px}.reviews-nav--prev{left:-44px}.reviews-nav--next{right:-44px}}
@media(max-width:1150px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reviews-carousel.is-enhanced .review-page{max-width:calc(var(--review-count-on-page,2) * 420px + (var(--review-count-on-page,2) - 1) * 16px)}}
@media(max-width:767px){.reviews-section{padding-block:69px}.reviews-eyebrow{gap:10px}.reviews-eyebrow span{width:30px}.reviews-intro{text-align:center;margin-bottom:25px}.reviews-intro h2{font-size:clamp(2rem,7vw,2.6rem)}.reviews-grid{grid-template-columns:1fr;gap:13px}.review-card{padding:24px 20px 22px;min-height:255px}.reviews-carousel.is-enhanced{margin-inline:8px;padding-bottom:48px}.reviews-carousel.is-enhanced .review-page{max-width:100%;gap:13px}.reviews-nav{width:36px;height:36px;top:auto;bottom:0;transform:none}.reviews-nav--prev{left:2px}.reviews-nav--next{right:2px}.reviews-nav svg{width:19px;height:19px}.reviews-pagination{margin-top:10px}.reviews-signoff{font-size:.56rem;letter-spacing:.10em;line-height:2.1}}
@media(max-width:430px){.reviews-carousel.is-enhanced{margin-inline:4px}.reviews-nav--prev{left:0}.reviews-nav--next{right:0}.review-card-heading{gap:5px}.review-star{width:15px;height:15px}}
@media(prefers-reduced-motion:reduce){.review-card,.reviews-carousel.is-enhanced .review-page,.reviews-nav,.review-dot{transition:none!important}}
.project-archive{min-height:65vh}.archive-title{font-size:clamp(2.5rem,5vw,4.5rem);margin-bottom:15px}.archive-lead{color:#c4e5d4;margin-bottom:34px}.archive-card-title{font-size:1rem;margin-bottom:5px;color:#fff}.archive-pagination{padding-top:40px}.archive-pagination a,.archive-pagination span{color:#b7edce;margin-right:12px}

.mobile-nav-menu{list-style:none;padding:0;margin:0}.mobile-nav-menu li{list-style:none}.mobile-nav-menu a{display:block}.mobile-nav-menu .sub-menu{list-style:none;padding:0 0 0 14px;margin:0}

/* v1.1.3 — premium client-account navigation, refined to a clean standalone icon. */
.chm-account-nav{position:relative;display:flex;flex:none;align-items:center}
.chm-account-toggle{position:relative;width:auto;height:auto;min-width:0;min-height:0;padding:0 4px;border:0;border-radius:0;background:transparent;color:var(--ink);display:grid;place-items:center;transition:color .18s,transform .18s}
.chm-account-toggle svg{width:22px;height:22px}
.chm-account-toggle:hover,.chm-account-toggle[aria-expanded="true"]{color:var(--jade);background:transparent;box-shadow:none;transform:translateY(-1px)}
html[data-theme="dark"] .chm-account-toggle:hover,html[data-theme="dark"] .chm-account-toggle[aria-expanded="true"]{color:var(--mint)}
.chm-account-status{position:absolute;top:-2px;right:-1px;height:8px;width:8px;border:2px solid var(--bg);background:#73c89b;border-radius:50%}
.chm-account-popover[hidden]{display:none!important}
.chm-account-popover{position:absolute;top:calc(100% + 15px);right:-4px;width:min(310px,calc(100vw - 26px));z-index:120;background:var(--surface);color:var(--ink);border:1px solid var(--outline);box-shadow:0 22px 60px rgba(8,28,20,.21);border-radius:17px;overflow:hidden;padding:9px;animation:chm-account-in .15s ease-out}
.chm-account-popover::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,#b99e70,#7ed5a9);pointer-events:none}
.chm-account-popover-head{display:flex;flex-direction:column;gap:5px;padding:16px 14px 15px;border-bottom:1px solid var(--outline)}
.chm-account-kicker{font-size:.63rem;letter-spacing:.13em;font-weight:800;color:var(--jade)}
.chm-account-popover-head strong{font-family:'Plus Jakarta Sans',sans-serif;font-size:1.08rem;line-height:1.3;overflow-wrap:anywhere}
.chm-account-popover-head small{color:var(--muted);font-size:.75rem;line-height:1.5;overflow-wrap:anywhere}
.chm-account-popover-links{padding:7px 3px 3px;display:flex;flex-direction:column;gap:3px}
.chm-account-popover-links>a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:11px;font-size:.79rem;line-height:1.45;font-weight:700;color:var(--ink);transition:background .18s,color .18s}
.chm-account-popover-links>a:hover,.chm-account-popover-links>a:focus-visible{background:var(--surface-mint);color:var(--jade)}
.chm-account-popover-links .chm-account-primary{background:#1b563f;color:#fff;justify-content:flex-start;min-height:42px}
.chm-account-popover-links .chm-account-primary svg:last-child{margin-left:auto}
.chm-account-popover-links .chm-account-primary:hover,.chm-account-popover-links .chm-account-primary:focus-visible{background:#0b7251;color:#fff}
.chm-account-popover-links .chm-account-signout{color:var(--muted);border-top:1px solid var(--outline);border-radius:0;margin-top:5px}
.chm-account-popover-links .chm-account-recovery{font-size:.7rem;color:var(--muted);justify-content:center}
.chm-account-unavailable{font-size:.72rem;line-height:1.5;color:var(--muted);padding:5px 12px 1px;margin:0}
@keyframes chm-account-in{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:390px){.nav-actions{gap:4px}.chm-account-toggle{padding:0 2px}.chm-account-popover{right:-45px}}
@media(prefers-reduced-motion:reduce){.chm-account-popover{animation:none}}

/* v1.1.4 — Branded WooCommerce My Account experience. Scope everything to the
   account page; WooCommerce still owns its forms, endpoints, and notices. */
.chm-account-page{min-height:66vh;padding:clamp(46px,5.7vw,86px) 0 90px;background:radial-gradient(ellipse at 90% 0%,color-mix(in srgb,var(--surface-mint) 45%,transparent),transparent 45%),var(--bg);color:var(--ink)}
.chm-account-shell{max-width:1250px}
.chm-account-heading{max-width:850px;margin-bottom:34px}
.chm-account-heading .eyebrow{font-size:.68rem;margin-bottom:13px}
.chm-account-heading h1{font-size:clamp(2.25rem,4.3vw,4.25rem);letter-spacing:-.062em;line-height:1.08;margin-bottom:18px;text-wrap:balance}
.chm-account-heading>p:last-child{color:var(--muted);font-size:clamp(.9rem,1.05vw,1.05rem);max-width:630px;line-height:1.72;margin:0}
.chm-account-content-layout{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(0,1.6fr);align-items:stretch;gap:19px}
.chm-account-welcome{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:flex-start;min-height:470px;padding:clamp(25px,2.7vw,40px);border-radius:21px;background:linear-gradient(138deg,#10291f,#174737 75%,#28543e);border:1px solid rgba(171,225,187,.18);color:#eef7ef;box-shadow:0 20px 44px rgba(10,25,17,.1)}
.chm-account-welcome-top{display:flex;flex-direction:column;align-items:start;gap:25px;position:relative;z-index:1}
.chm-account-welcome-mark{display:inline-flex;align-items:center;justify-content:center;width:43px;height:43px;background:#2a5b46;border:1px solid rgba(183,240,205,.2);border-radius:11px;color:#fff;font-family:'Plus Jakarta Sans',sans-serif;font-weight:800;font-size:22px;letter-spacing:-.09em}
.chm-account-welcome-mark span{color:#b9e8c7}
.chm-account-welcome-kicker{font-size:.63rem;font-weight:800;letter-spacing:.16em;color:#b6e5ca}
.chm-account-welcome h2{position:relative;z-index:1;font-size:clamp(1.65rem,2.55vw,2.65rem);font-weight:750;letter-spacing:-.055em;line-height:1.14;margin:15px 0 17px;max-width:400px}
.chm-account-welcome>p{position:relative;z-index:1;font-size:.85rem;color:#d4e9dc;line-height:1.7;max-width:370px;margin:0 0 23px}
.chm-account-benefits{position:relative;z-index:1;display:flex;flex-direction:column;gap:16px;margin:2px 0 26px}
.chm-account-benefits>div{display:flex;align-items:flex-start;gap:11px;color:#dff4e6;font-size:.79rem;line-height:1.5;font-weight:600}
.chm-account-benefits svg{color:#a6e6bf;flex-shrink:0}
.chm-account-welcome-link{position:relative;z-index:1;display:inline-flex;align-items:center;gap:9px;color:#c4efce;font-size:.76rem;font-weight:800;margin-top:auto;padding:10px 0}
.chm-account-welcome-link:hover{text-decoration:underline;color:#fff}
.chm-account-welcome-decoration{position:absolute;z-index:0;right:-84px;bottom:-122px;display:block;width:300px;height:300px;border:1px solid rgba(172,231,191,.12);border-radius:50%;box-shadow:0 0 0 55px rgba(166,227,188,.04),0 0 0 105px rgba(171,228,196,.025);pointer-events:none}
.chm-woocommerce-account{min-width:0;min-height:470px;padding:clamp(22px,2.5vw,34px);border:1px solid var(--outline);background:var(--surface);border-radius:21px;box-shadow:var(--shadow)}
.chm-woocommerce-account>.woocommerce{width:100%;max-width:100%;min-width:0}
.chm-account-page .woocommerce h2{font-size:clamp(1.3rem,1.8vw,1.7rem);letter-spacing:-.04em;line-height:1.2;margin:0 0 20px;color:var(--ink)}
.chm-account-page .woocommerce h3{color:var(--ink)}
.chm-account-page .woocommerce #customer_login,.chm-account-page .woocommerce .u-columns#customer_login{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px;margin:0;width:100%}
.chm-account-page .woocommerce #customer_login::before,.chm-account-page .woocommerce #customer_login::after{display:none}
.chm-account-page .woocommerce #customer_login>.u-column1,.chm-account-page .woocommerce #customer_login>.u-column2,.chm-account-page .woocommerce #customer_login>.col-1,.chm-account-page .woocommerce #customer_login>.col-2{float:none;width:100%;max-width:none;margin:0;min-width:0}
.chm-account-page .woocommerce #customer_login>.u-column2{border-left:1px solid var(--outline);padding-left:25px}
.chm-account-page .woocommerce form.woocommerce-form-login,.chm-account-page .woocommerce form.woocommerce-form-register,.chm-account-page .woocommerce form.woocommerce-ResetPassword,.chm-account-page .woocommerce form.edit-account{margin:0;padding:0;border:0;background:transparent;max-width:none}
.chm-account-page .woocommerce form .form-row{margin:0 0 17px;padding:0;float:none;max-width:100%;width:100%}
.chm-account-page .woocommerce form .form-row label,.chm-account-page .woocommerce form .form-row label:not(.woocommerce-form__label){display:block;color:var(--ink);font-size:.79rem;font-weight:700;margin-bottom:7px;line-height:1.5}
.chm-account-page .woocommerce .required{color:var(--jade);font-weight:800}
.chm-account-page .woocommerce input.input-text,.chm-account-page .woocommerce form input[type="text"],.chm-account-page .woocommerce form input[type="email"],.chm-account-page .woocommerce form input[type="password"],.chm-account-page .woocommerce form textarea,.chm-account-page .woocommerce form select{box-sizing:border-box;display:block;min-height:46px;width:100%;max-width:100%;padding:11px 14px;background:var(--bg);border:1px solid var(--outline);border-radius:10px;color:var(--ink);font-family:inherit;font-size:.87rem;line-height:1.4;transition:border-color .16s,box-shadow .16s}
.chm-account-page .woocommerce input.input-text:hover,.chm-account-page .woocommerce form textarea:hover{border-color:var(--jade)}
.chm-account-page .woocommerce input.input-text:focus,.chm-account-page .woocommerce form input:focus-visible,.chm-account-page .woocommerce form textarea:focus-visible,.chm-account-page .woocommerce form select:focus-visible{border-color:var(--jade);outline:2px solid color-mix(in srgb,var(--jade) 40%,transparent);outline-offset:1px}
.chm-account-page .woocommerce .password-input{display:block;width:100%;position:relative}
.chm-account-page .woocommerce .show-password-input{position:absolute;right:10px;top:50%;transform:translateY(-50%);margin:0;cursor:pointer;color:var(--ink)}
.chm-account-page .woocommerce .woocommerce-form-login__rememberme{display:inline-flex!important;align-items:center;gap:7px;vertical-align:middle;font-size:.76rem;font-weight:600;color:var(--muted)}
.chm-account-page .woocommerce input[type="checkbox"]{accent-color:#198464;width:15px;height:15px}
.chm-account-page .woocommerce button.button,.chm-account-page .woocommerce a.button,.chm-account-page .woocommerce input.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent!important;border-radius:11px!important;background:#1e7456!important;color:white!important;font-size:.83rem!important;font-weight:800!important;line-height:1.2;min-height:46px;padding:12px 21px!important;box-shadow:none;transition:background .2s,transform .2s}
.chm-account-page .woocommerce button.button:hover,.chm-account-page .woocommerce a.button:hover,.chm-account-page .woocommerce input.button:hover{background:#12593f!important;transform:translateY(-1px)}
.chm-account-page .woocommerce form.woocommerce-form-login button[type="submit"],.chm-account-page .woocommerce form.woocommerce-form-register button[type="submit"],.chm-account-page .woocommerce form.woocommerce-ResetPassword button[type="submit"]{width:100%;margin:8px 0 5px;float:none}
.chm-account-page .woocommerce form.woocommerce-form-login .lost_password,.chm-account-page .woocommerce form.woocommerce-form-register>p:not(.form-row){margin:15px 0 0;font-size:.79rem;line-height:1.75;color:var(--muted)}
.chm-account-page .woocommerce a:not(.button){color:var(--jade);text-underline-offset:3px}
.chm-account-page .woocommerce a:not(.button):hover{text-decoration:underline}
.chm-account-page .woocommerce form p{line-height:1.66}
.chm-account-page .woocommerce .woocommerce-ResetPassword>p:first-child{font-size:.88rem;line-height:1.8;color:var(--muted);margin:0 0 23px}
.chm-account-page .woocommerce .woocommerce-ResetPassword .form-row-first{float:none;width:100%}
.chm-account-page .woocommerce .woocommerce-ResetPassword{max-width:510px}
.chm-account-page .woocommerce .woocommerce-error,.chm-account-page .woocommerce .woocommerce-message,.chm-account-page .woocommerce .woocommerce-info{background:var(--surface-mint);color:var(--ink);border:1px solid var(--outline);border-left:3px solid var(--jade);padding:17px 17px 17px 22px;border-radius:11px;font-size:.82rem;line-height:1.6;margin:0 0 19px;box-shadow:none}
.chm-account-page .woocommerce .woocommerce-error::before,.chm-account-page .woocommerce .woocommerce-message::before,.chm-account-page .woocommerce .woocommerce-info::before{display:none}
.chm-account-page .woocommerce .woocommerce-error{border-left-color:#b46b5b}
.chm-account-page .woocommerce .woocommerce-privacy-policy-text,.chm-account-page .woocommerce .woocommerce-form-register p:not(.form-row){font-size:.76rem;color:var(--muted)}
.chm-account-page .woocommerce label.woocommerce-form__label{display:inline-flex;align-items:center;gap:7px}
.chm-account-page .woocommerce .woocommerce-MyAccount-navigation{float:none;width:auto;min-width:0}
.chm-account-page .woocommerce .woocommerce-MyAccount-navigation ul{padding:0;margin:0;list-style:none;display:flex;flex-direction:column;gap:6px}
.chm-account-page .woocommerce .woocommerce-MyAccount-navigation ul li a{display:block;background:var(--surface-soft);color:var(--ink);border:1px solid var(--outline);padding:11px 13px;border-radius:9px;font-size:.79rem;font-weight:750}
.chm-account-page .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a,.chm-account-page .woocommerce .woocommerce-MyAccount-navigation ul li a:hover{background:var(--surface-mint);border-color:var(--jade);color:var(--ink);text-decoration:none}
.chm-account-page .woocommerce .woocommerce-MyAccount-content{float:none;width:auto;min-width:0;line-height:1.7}
.chm-account-page .woocommerce:has(.woocommerce-MyAccount-navigation){display:grid;grid-template-columns:minmax(180px,230px) minmax(0,1fr);gap:30px;align-items:start}
.chm-account-page .woocommerce .woocommerce-MyAccount-content p{color:var(--ink)}
.chm-account-page .woocommerce table.shop_table{border:1px solid var(--outline);border-radius:12px;color:var(--ink);border-collapse:separate;overflow:hidden}
.chm-account-page .woocommerce table.shop_table th,.chm-account-page .woocommerce table.shop_table td{padding:11px;border-color:var(--outline)}
.chm-account-page .woocommerce fieldset{padding:17px;border:1px solid var(--outline);border-radius:13px;margin:16px 0}
.chm-account-page .woocommerce legend{padding:0 8px;font-size:.83rem;font-weight:800}
.chm-account-page--dashboard .chm-account-content-layout{display:block}
.chm-account-page--dashboard .chm-woocommerce-account{min-height:400px}
.chm-account-page--recovery .chm-account-content-layout{grid-template-columns:minmax(270px,.87fr) minmax(0,1.13fr)}
@media(max-width:1160px){.chm-account-content-layout{grid-template-columns:minmax(230px,.76fr) minmax(0,1.65fr)}.chm-account-page .woocommerce #customer_login,.chm-account-page .woocommerce .u-columns#customer_login{gap:16px}.chm-account-page .woocommerce #customer_login>.u-column2{padding-left:16px}}
@media(max-width:900px){.chm-account-content-layout,.chm-account-page--recovery .chm-account-content-layout{grid-template-columns:1fr}.chm-account-welcome{min-height:0}.chm-account-welcome-top{gap:14px}.chm-account-welcome h2{margin-top:12px}.chm-account-benefits{gap:9px;margin-bottom:14px}.chm-account-welcome-link{margin-top:8px}}
@media(max-width:620px){.chm-account-page{padding:42px 0 62px}.chm-account-heading{margin-bottom:22px}.chm-account-heading h1{font-size:clamp(2.05rem,9vw,3rem)}.chm-account-content-layout{gap:13px}.chm-account-welcome,.chm-woocommerce-account{padding:23px 20px;border-radius:15px}.chm-account-page .woocommerce #customer_login,.chm-account-page .woocommerce .u-columns#customer_login{grid-template-columns:minmax(0,1fr);gap:25px}.chm-account-page .woocommerce #customer_login>.u-column2{border-left:0;border-top:1px solid var(--outline);padding:23px 0 0}.chm-account-page .woocommerce:has(.woocommerce-MyAccount-navigation){grid-template-columns:1fr;gap:20px}.chm-account-page .woocommerce .woocommerce-MyAccount-navigation ul{display:flex;flex-direction:row;overflow:auto;gap:8px;scrollbar-width:thin;padding-bottom:6px}.chm-account-page .woocommerce .woocommerce-MyAccount-navigation ul li{flex:none}.chm-account-page .woocommerce .woocommerce-MyAccount-navigation ul li a{white-space:nowrap}.chm-account-page .woocommerce table.shop_table{display:block;max-width:100%;overflow-x:auto}}

/* Keep action forms ahead of the decorative welcome panel on narrow screens. */
@media(max-width:900px){.chm-account-content-layout>.chm-woocommerce-account{order:1}.chm-account-content-layout>.chm-account-welcome{order:2}}
.chm-account-page #customer_login>.u-column2{scroll-margin-top:105px}
/* WooCommerce may prepend notices to the signed-in account navigation. */
.chm-account-page .woocommerce:has(.woocommerce-MyAccount-navigation)>.woocommerce-notices-wrapper{grid-column:1/-1}
.chm-account-page .woocommerce:has(.woocommerce-MyAccount-navigation)>.woocommerce-MyAccount-navigation{grid-column:1}
.chm-account-page .woocommerce:has(.woocommerce-MyAccount-navigation)>.woocommerce-MyAccount-content{grid-column:2}
@media(max-width:620px){.chm-account-page .woocommerce:has(.woocommerce-MyAccount-navigation)>.woocommerce-MyAccount-navigation,.chm-account-page .woocommerce:has(.woocommerce-MyAccount-navigation)>.woocommerce-MyAccount-content{grid-column:1}}


/* v1.1.5 — CHANNMAS account refinement: stronger hierarchy, clear form states,
   native WooCommerce forms and validation, no neon lighting or external assets. */
.chm-account-page{
  --chm-auth-cta:#326b53;
  --chm-auth-cta-hover:#255941;
  --chm-auth-tint:#d9e9dd;
  --chm-auth-field:#ffffff;
  background:var(--bg);
}
html[data-theme="dark"] .chm-account-page{
  --chm-auth-cta:#367459;
  --chm-auth-cta-hover:#46876b;
  --chm-auth-tint:#bce8cf;
  --chm-auth-field:#0d1e19;
}
.chm-account-page .chm-account-heading{max-width:980px;margin-bottom:35px}
.chm-account-page .chm-account-heading h1{letter-spacing:-.056em;line-height:1.075;font-weight:800;max-width:970px}
.chm-account-page .chm-account-heading>p:last-child{max-width:820px;font-size:clamp(.96rem,1.12vw,1.06rem);line-height:1.64}
.chm-account-page .chm-account-content-layout{gap:19px;grid-template-columns:minmax(280px,.85fr) minmax(0,1.6fr)}
.chm-account-page--recovery .chm-account-content-layout{grid-template-columns:minmax(285px,.91fr) minmax(0,1.18fr)}
.chm-account-page .chm-account-welcome{
  min-height:490px;
  background:linear-gradient(145deg,#142b22 0%,#1b3f30 100%);
  border:1px solid rgba(175,221,189,.23);
  box-shadow:0 10px 30px rgba(0,0,0,.07);
}
.chm-account-page .chm-account-welcome-mark{width:47px;height:47px;background:#285845;border-color:rgba(192,226,202,.3)}
.chm-account-page .chm-account-welcome h2{max-width:420px;font-size:clamp(1.8rem,2.65vw,2.7rem);margin:20px 0 16px}
.chm-account-page .chm-account-welcome>p{font-size:.9rem;line-height:1.72;margin-bottom:24px;color:#e0ece4}
.chm-account-page .chm-account-benefits{gap:20px}
.chm-account-page .chm-account-benefits>div{gap:13px;font-size:.83rem;line-height:1.5;align-items:flex-start}
.chm-account-page .chm-account-benefits>div>span{display:flex;flex-direction:column;gap:3px}
.chm-account-page .chm-account-benefits strong{font-weight:700;color:#f3faf5}
.chm-account-page .chm-account-benefits small{font-size:.74rem;font-weight:400;color:#cadbd1;line-height:1.55}
.chm-account-page .chm-account-benefits svg{width:21px;height:21px;color:#b6e5c6}
.chm-account-page .chm-account-welcome-link{border-top:1px solid rgba(212,241,222,.15);padding-top:22px;width:100%;font-size:.83rem;color:#c9ebd4}
.chm-account-page .chm-account-welcome-decoration{
  width:270px;height:270px;right:-62px;bottom:-136px;
  border:1px solid rgba(183,224,194,.12);
  box-shadow:0 0 0 43px rgba(171,214,184,.018),0 0 0 88px rgba(171,214,184,.012);
}
.chm-account-page .chm-woocommerce-account{
  min-height:490px;
  padding:clamp(24px,2.5vw,36px);
  background:var(--surface);
  border:1px solid var(--outline);
  box-shadow:0 12px 32px rgba(5,23,16,.055);
}
.chm-account-page .chm-account-security-heading{display:flex;align-items:flex-start;gap:17px;margin:0 0 26px}
.chm-account-page .chm-account-security-icon{display:inline-grid;place-items:center;flex-shrink:0;width:58px;height:58px;color:var(--ink);border:1px solid var(--outline);background:var(--surface-mint);border-radius:13px}
.chm-account-page .chm-account-security-eyebrow{font-size:.62rem!important;font-weight:800;letter-spacing:.13em;color:var(--jade);margin:0 0 5px!important}
.chm-account-page .chm-account-security-heading h2{font-size:clamp(1.42rem,2.05vw,1.95rem);letter-spacing:-.045em;margin:0 0 7px}
.chm-account-page .chm-account-security-heading p:last-child{font-size:.84rem;color:var(--muted);line-height:1.6;margin:0}
.chm-account-page .woocommerce #customer_login,.chm-account-page .woocommerce .u-columns#customer_login{gap:27px}
.chm-account-page .woocommerce #customer_login>.u-column2{padding-left:27px}
.chm-account-page .woocommerce #customer_login h2{font-size:clamp(1.42rem,2vw,1.85rem);font-weight:800;margin:0 0 21px}
.chm-account-page .woocommerce form .form-row label:not(.woocommerce-form__label){font-size:.84rem;font-weight:750;margin-bottom:8px}
.chm-account-page .woocommerce form .form-row{margin-bottom:17px}
.chm-account-page .woocommerce input.input-text,
.chm-account-page .woocommerce form input[type="text"],
.chm-account-page .woocommerce form input[type="email"],
.chm-account-page .woocommerce form input[type="password"],
.chm-account-page .woocommerce form textarea,
.chm-account-page .woocommerce form select{
  min-height:51px;padding:12px 15px;
  background:var(--chm-auth-field);
  border:1px solid var(--outline);
  border-radius:10px;
  color:var(--ink);
  font-size:.9rem;
  box-shadow:none;
}
.chm-account-page .woocommerce input.input-text:focus,
.chm-account-page .woocommerce form input:focus-visible,
.chm-account-page .woocommerce form textarea:focus-visible,
.chm-account-page .woocommerce form select:focus-visible{
  border-color:var(--jade);
  outline:2px solid color-mix(in srgb,var(--jade) 32%,transparent);
  outline-offset:1px;
}
.chm-account-page .woocommerce .password-input input{padding-right:53px}
.chm-account-page .woocommerce .show-password-input{right:13px;top:50%;min-width:26px;min-height:30px;display:inline-flex;align-items:center;justify-content:center;transform:translateY(-50%);opacity:.9;color:var(--ink)!important}
.chm-account-page .woocommerce .show-password-input::after{color:var(--ink)!important;opacity:.9!important}
.chm-account-page .woocommerce form .woocommerce-form-login__rememberme{font-size:.83rem;font-weight:700;color:var(--ink)}
.chm-account-page .woocommerce input[type="checkbox"]{accent-color:var(--chm-auth-cta)}
.chm-account-page .woocommerce button.button,
.chm-account-page .woocommerce a.button,
.chm-account-page .woocommerce input.button{
  background:var(--chm-auth-cta)!important;
  color:#fff!important;
  min-height:51px;
  border-radius:10px!important;
  font-weight:800!important;
  font-size:.88rem!important;
  box-shadow:none!important;
}
.chm-account-page .woocommerce button.button:hover,
.chm-account-page .woocommerce a.button:hover,
.chm-account-page .woocommerce input.button:hover{background:var(--chm-auth-cta-hover)!important;box-shadow:none!important;transform:translateY(-1px)}
.chm-account-page .woocommerce .woocommerce-form-login .lost_password{margin-top:19px!important}
.chm-account-page .woocommerce .woocommerce-form-login .lost_password a{font-size:.83rem;font-weight:700}
.chm-account-page .woocommerce .woocommerce-ResetPassword{max-width:none}
.chm-account-page .woocommerce .woocommerce-ResetPassword>p:first-child{font-size:.9rem;line-height:1.7;color:var(--muted);margin:0 0 24px}
.chm-account-page .woocommerce .woocommerce-ResetPassword button[type="submit"]{margin-top:19px}
.chm-account-page .woocommerce .woocommerce-message,
.chm-account-page .woocommerce .woocommerce-info{
  background:var(--surface-mint);
  border:1px solid var(--outline);
  border-left:3px solid var(--jade);
  border-radius:10px;
  padding:17px 20px;
  margin-bottom:25px;
  font-size:.89rem;
  font-weight:600;
  line-height:1.6;
}
.chm-account-page .woocommerce .woocommerce-error{font-weight:600;background:var(--surface-soft);border-left:3px solid #a9745b;padding:17px 20px}
/* Native WooCommerce password-meter statuses, not a custom password validator. */
.chm-account-page .woocommerce-password-strength{
  position:relative;
  display:flex;align-items:center;justify-content:flex-end;
  min-height:42px;margin:8px 0 7px;padding:14px 13px 10px;
  border:1px solid var(--outline);
  border-radius:9px;
  background:var(--surface-soft)!important;
  color:var(--ink)!important;
  box-shadow:none;
  font-size:.76rem;font-weight:800;text-align:right;
  overflow:hidden;
}
.chm-account-page .woocommerce-password-strength::before,
.chm-account-page .woocommerce-password-strength::after{
  content:"";position:absolute;left:13px;top:50%;height:5px;
  border-radius:99px;transform:translateY(-50%);
}
.chm-account-page .woocommerce-password-strength::before{width:56%;background:var(--outline)}
.chm-account-page .woocommerce-password-strength::after{width:var(--chm-meter-width,0%);background:var(--chm-meter-color,#ae7750);max-width:calc(56% - 0px)}
.chm-account-page .woocommerce-password-strength.short{--chm-meter-width:14%;--chm-meter-color:#a86f58}
.chm-account-page .woocommerce-password-strength.bad{--chm-meter-width:27%;--chm-meter-color:#aa8455}
.chm-account-page .woocommerce-password-strength.good{--chm-meter-width:42%;--chm-meter-color:#8e9f66}
.chm-account-page .woocommerce-password-strength.strong{--chm-meter-width:56%;--chm-meter-color:#539274}
.chm-account-page .woocommerce-password-hint{display:block;margin:5px 0 14px;color:var(--muted);font-size:.77rem;line-height:1.55}
.chm-account-page .woocommerce-privacy-policy-text{line-height:1.68}
@media(max-width:1160px){.chm-account-page .chm-account-content-layout{grid-template-columns:minmax(245px,.78fr) minmax(0,1.55fr)}.chm-account-page--recovery .chm-account-content-layout{grid-template-columns:minmax(245px,.92fr) minmax(0,1.18fr)}.chm-account-page .woocommerce #customer_login{gap:16px}.chm-account-page .woocommerce #customer_login>.u-column2{padding-left:16px}}
@media(max-width:900px){.chm-account-page .chm-account-content-layout,.chm-account-page--recovery .chm-account-content-layout{grid-template-columns:1fr}.chm-account-page .chm-account-welcome,.chm-account-page .chm-woocommerce-account{min-height:0}}
@media(max-width:620px){.chm-account-page .chm-account-heading h1{font-size:clamp(2.1rem,9vw,3rem)}.chm-account-page .chm-account-security-heading{gap:13px}.chm-account-page .chm-account-security-icon{width:48px;height:48px}.chm-account-page .chm-account-security-heading h2{font-size:1.32rem}.chm-account-page .chm-account-welcome,.chm-account-page .chm-woocommerce-account{padding:23px 20px}.chm-account-page .woocommerce #customer_login,.chm-account-page .woocommerce .u-columns#customer_login{grid-template-columns:minmax(0,1fr);gap:25px}.chm-account-page .woocommerce #customer_login>.u-column2{border-left:0;border-top:1px solid var(--outline);padding:23px 0 0}}

/* v1.1.12 — Mode-aware Site Identity logos. data-theme is set in <head> before styles load. */
html[data-theme="light"] .chm-logo-for-dark,
html[data-theme="dark"] .chm-logo-for-light { display: none !important; }

/* v1.2.1: media fallback. Uploaded photos keep their proportions without clipping the subject. */
.hero-media.chm-hero-custom-media>img{display:block;aspect-ratio:3/2;object-fit:contain;background:var(--surface,transparent)}
@media(max-width:760px){.hero-media.chm-hero-custom-media>img{aspect-ratio:auto;max-height:440px;object-fit:contain}}
/* Consultation catalogue: up to three featured services, dynamic price and duration. */
.consult-card .consult-price-text span{display:block;margin-top:4px;font-size:.73rem;font-weight:650;color:var(--muted);letter-spacing:0}
.chm-consult-empty{grid-column:1/-1;display:flex;align-items:center;justify-content:center;gap:20px;flex-wrap:wrap;padding:30px;border:1px solid var(--outline);border-radius:17px;background:var(--surface)}
.chm-consult-empty p{margin:0;color:var(--muted)}


/* v1.2.10 — Independently managed, theme-aware footer wordmark. */
.footer-about .chm-footer-identity{display:inline-flex;align-items:center;gap:11px;max-width:100%;vertical-align:middle}
.footer-about .chm-footer-custom-logo{display:block;width:auto;height:auto;max-width:260px;max-height:62px;object-fit:contain;object-position:left center}
html[data-theme="light"] .footer-about .chm-footer-identity--dark,
html[data-theme="dark"] .footer-about .chm-footer-identity--light{display:none!important}
@media(max-width:760px){.footer-about .chm-footer-custom-logo{max-width:min(240px,100%);max-height:56px}}
