@charset "UTF-8";
:root{--forest:#203f34;--deep:#17362c;--ink:#233e33;--cream:#f3f0e7;--paper:#fcfaf4;--olive:#bfca9b;--muted:#536357;--line:#203f342e;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}img{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(54px,6.6vw,104px)}h2{font-size:clamp(38px,4.3vw,65px)}h3{font-size:30px;line-height:1.18}p{max-width:70ch}em{font-weight:400;color:#657447}ul,ol{padding-left:22px}li{margin:8px 0}.shell{width:min(1340px,90%);margin:auto}.section{padding:100px 0}.kicker{font-size:12px;letter-spacing:.16em;text-transform:uppercase;line-height:1.5;font-weight:600}.eyebrow{margin-bottom:25px}.intro-text{font-size:18px;line-height:1.8;max-width:560px}.muted{color:var(--muted)}.text-link{display:inline-flex;gap:24px;align-items:center;border-bottom:1px solid;padding:8px 0;line-height:1.5;font-size:14px}.text-link:hover{color:#52683c}.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;background:var(--forest);color:var(--paper);border:1px solid var(--forest);padding:17px 26px;line-height:1.4;font-size:14px;font-weight:600;transition:background .2s,transform .2s}.btn:hover{background:#315749;transform:translateY(-2px)}.btn-light{background:var(--olive);color:var(--deep);border-color:var(--olive)}.btn-outline{background:transparent;color:var(--forest);border:1px solid var(--forest)}.actions{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:32px}.topline{background:var(--forest);color:#edf0de;text-align:center;padding:9px 20px;font-size:12px;letter-spacing:.09em}.site-header{border-bottom:1px solid var(--line);background:var(--cream);position:relative;z-index:30}.header-inner{min-height:95px;display:flex;align-items:center;gap:30px;justify-content:space-between}.brand{font:42px/1 var(--serif);letter-spacing:-.055em}.brand small{font:10px var(--sans);letter-spacing:.17em;display:block;margin-top:7px;text-transform:uppercase}.nav{display:flex;align-items:center;gap:26px;font-size:13px}.nav a{padding:12px 0;position:relative}.nav a[aria-current=page]:after{content:'';position:absolute;bottom:4px;left:0;right:0;height:1px;background:currentColor}.nav a:hover{color:#52683c}.nav-cta{font-size:13px;padding:13px 19px;background:var(--forest);color:white}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:10px 15px}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:7%;align-items:center;padding-top:54px;padding-bottom:65px}.hero h1{margin-bottom:27px}.hero p{max-width:485px}.hero-art{position:relative;min-width:0}.hero-photo{height:610px;border-radius:210px 0 0 0;overflow:hidden;background:#d8d0be}.hero-photo img{object-position:50% 48%}.photo-index{position:absolute;left:-35px;bottom:65px;background:var(--forest);color:var(--cream);width:156px;padding:22px 24px;font-size:12px;line-height:1.65}.photo-index strong{font:48px/1 var(--serif);display:block;margin-bottom:10px}.caption{font-size:12px;line-height:1.6;color:var(--muted);margin-top:12px}.hero-meta{display:flex;gap:35px;margin-top:46px;padding-top:23px;border-top:1px solid var(--line);max-width:490px}.hero-meta span{font-size:12px;letter-spacing:.06em;text-transform:uppercase;line-height:1.7}.hero-meta span+span{padding-left:30px;border-left:1px solid var(--line)}.metric-band{background:var(--forest);color:var(--cream)}.metrics{display:grid;grid-template-columns:repeat(3,1fr)}.metric{padding:38px 40px;border-right:1px solid #ffffff29}.metric:first-child{padding-left:0}.metric:last-child{border:0}.metric strong{font:58px/1 var(--serif);display:block;margin:9px 0 13px}.metric p{font-size:14px;color:#d0d8c6}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px}.section-heading>p{max-width:390px}.section-heading .kicker{margin-bottom:19px}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.split h2{margin-bottom:25px}.split .photo{height:530px;overflow:hidden;border-radius:0 0 135px 0}.photo img{object-position:center 46%}.tinted{background:#e6e8da}.dark{background:var(--forest);color:var(--cream)}.dark em{color:var(--olive)}.dark .muted,.dark .caption{color:#c6d0bc}.dark .btn-outline{color:var(--cream);border-color:#d3dec2}.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 26px}.material-card{min-width:0;border-bottom:1px solid var(--line);padding-bottom:24px}.card-image{height:285px;overflow:hidden;background:#dedfce}.card-image img{transition:transform .5s}.material-card a:hover img,.journal-card a:hover img{transform:scale(1.045)}.card-image.rounded{border-radius:110px 0 0 0}.card-body{padding-top:22px}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:15px}.card-body p{font-size:15px;line-height:1.75;margin:14px 0 17px}.card-body .kicker{font-size:11px}.material-card .text-link{font-size:13px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}.tag{font-size:12px;border:1px solid var(--line);padding:6px 12px;border-radius:22px}.dark .tag{border-color:#ffffff44}.custom-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 55px;margin-top:30px}.custom-item{border-top:1px solid var(--line);padding:27px 0;display:grid;grid-template-columns:40px 1fr;gap:12px}.custom-item .kicker{padding-top:6px}.custom-item h3{font-size:29px;margin-bottom:12px}.custom-item p{font-size:15px;max-width:48ch}.feature-quote{padding:75px 5%;text-align:center;background:#dde2ce}.feature-quote p{font:clamp(31px,4.1vw,60px)/1.3 var(--serif);letter-spacing:-.025em;max-width:980px;margin:auto}.application-list{border-top:1px solid var(--line)}.application-row{display:grid;grid-template-columns:50px 1fr 1fr 36px;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding:28px 0}.application-row p{font-size:15px;max-width:46ch}.application-row:hover h3{color:#52683c}.journal-card{border-bottom:1px solid var(--line);padding-bottom:25px}.journal-card figure{height:235px;overflow:hidden}.journal-card h3{font-size:29px;margin-top:17px}.journal-card p{font-size:15px;margin:15px 0}.journal-card .kicker{margin-top:23px}.closing{padding:78px 0;background:#d6ddc3}.closing .shell{display:flex;align-items:center;justify-content:space-between;gap:40px}.closing h2{max-width:770px}.closing p{margin-top:18px}.closing .btn{flex-shrink:0}.footer{background:var(--deep);color:var(--cream);padding:70px 0 25px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:65px;padding-bottom:50px}.footer .brand{display:inline-block;margin-bottom:24px}.footer p{font-size:14px;color:#ccd7bf;max-width:340px}.footer h3{font:12px/1.4 var(--sans);letter-spacing:.13em;text-transform:uppercase;margin-bottom:22px}.footer-links{display:grid;gap:11px;font-size:14px}.footer-links a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid #fff3;padding-top:25px;display:flex;justify-content:space-between;gap:25px;font-size:12px;color:#bfcdb6}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.breadcrumb{display:flex;flex-wrap:wrap;gap:9px;padding-top:28px;font-size:12px;color:var(--muted)}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.page-intro{padding:55px 0 65px}.page-intro h1{font-size:clamp(48px,6vw,88px);max-width:1020px;margin:22px 0 25px}.page-intro .intro-text{max-width:700px}.page-intro.compact{padding-bottom:45px}.filter-bar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;padding:22px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:40px}.filter-btn{background:transparent;border:1px solid var(--line);padding:10px 18px;font-size:14px}.filter-btn[aria-pressed=true]{background:var(--forest);color:var(--cream);border-color:var(--forest)}.result-count{margin-left:auto;font-size:13px;color:var(--muted)}[hidden]{display:none!important}.product-hero{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;padding:50px 0 70px}.product-hero h1{font-size:clamp(48px,5.7vw,86px);margin:22px 0 26px}.product-hero .product-image{height:560px;border-radius:160px 0 0 0;overflow:hidden;background:#e0dfd3}.product-hero .product-image img{object-position:center}.product-hero .summary{font-size:18px}.specs{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:35px}.spec{padding:20px 18px;border-right:1px solid var(--line);font-size:14px;line-height:1.6}.spec:first-child{padding-left:0}.spec:last-child{border:0}.spec b{display:block;font-size:21px;font-family:var(--serif);font-weight:400}.content-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:8%;align-items:start}.content-grid h2{font-size:44px;margin:0 0 23px}.content-grid p+p{margin-top:20px}.aside-box{padding:35px;background:#e6e8dc;border-top:2px solid #73875c}.aside-box h3{margin-bottom:20px}.aside-box p{font-size:15px}.aside-box li{font-size:15px}.table-wrap{overflow-x:auto;margin:28px 0}table{width:100%;border-collapse:collapse;text-align:left;font-size:15px}th,td{padding:18px 20px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:13px;font-weight:600;background:#e3e7d6}td:first-child{font-weight:600}caption{text-align:left;font-size:13px;color:var(--muted);margin-bottom:15px}.faq{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:21px 0}summary{cursor:pointer;font-size:19px;line-height:1.5;list-style:none;display:flex;gap:25px;justify-content:space-between}summary:after{content:'+';font-size:23px}details[open] summary:after{content:'−'}details p{padding-top:17px;color:var(--muted);max-width:75ch;font-size:16px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.step{border-top:1px solid var(--line);padding-top:24px}.step h3{font-size:28px;margin:23px 0 16px}.step p{font-size:15px}.number{font:44px/1 var(--serif);color:#657447}.note{padding:20px 24px;border-left:3px solid #819364;background:#e6e8da;font-size:14px;margin:25px 0}.dark .note{background:#ffffff0b;border-color:#bed092}.cert-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.cert-item{border-top:1px solid var(--line);padding-top:25px}.cert-item h3{font-size:28px;margin:18px 0}.cert-item p{font-size:15px}.cert-item .status{display:inline-block;font-size:12px;padding:6px 12px;border:1px solid var(--line);margin-top:18px}.article-head{max-width:990px;padding:45px 0 48px}.article-head h1{font-size:clamp(45px,5.1vw,78px);line-height:1.1;margin:22px 0}.article-meta{display:flex;gap:18px;flex-wrap:wrap;font-size:13px;color:var(--muted);margin-top:28px}.article-layout{display:grid;grid-template-columns:240px minmax(0,760px);gap:65px;align-items:start;justify-content:center;padding:65px 0 85px}.toc{position:sticky;top:28px;font-size:14px;border-top:1px solid var(--line);padding-top:22px}.toc strong{font-size:12px;text-transform:uppercase;letter-spacing:.13em}.toc a{display:block;border-bottom:1px solid var(--line);padding:12px 0;line-height:1.5}.article-body{min-width:0}.article-body h2{font-size:36px;line-height:1.2;margin:44px 0 22px}.article-body h2:first-child{margin-top:0}.article-body h3{font-size:27px;margin:28px 0 18px}.article-body p{font-size:17px;line-height:1.85;margin:18px 0}.article-body li{line-height:1.85}.article-body a{text-decoration:underline;text-underline-offset:4px}.article-body .note{font-size:15px}.article-cover{height:390px;overflow:hidden}.source-list{font-size:14px;line-height:1.7;word-break:break-word}.source-list li{margin:15px 0}.editorial-note{border-top:1px solid var(--line);padding-top:23px;font-size:13px;color:var(--muted)}.form-layout{display:grid;grid-template-columns:.85fr 1.35fr;gap:7%;align-items:start}.inquiry-form{padding:38px;background:var(--paper);border:1px solid var(--line)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field-full{grid-column:1/-1}label{display:block;font-size:14px;font-weight:600}input,select,textarea{width:100%;border:1px solid #9ca99a;border-radius:0;padding:13px;margin-top:8px;background:#fff;color:var(--ink);font-size:16px;min-width:0}textarea{min-height:128px;resize:vertical}fieldset{border:0;padding:0;margin:0}legend{font-size:14px;font-weight:600;margin-bottom:12px}.check-row{display:flex;align-items:start;gap:10px;font-size:13px;font-weight:400;line-height:1.6}.check-row input{width:18px;height:18px;flex-shrink:0;margin-top:2px}.check-row a{text-decoration:underline}.form-section{font:28px var(--serif);padding-bottom:18px;margin-bottom:25px;border-bottom:1px solid var(--line)}.form-hint{font-size:12px;line-height:1.6;color:var(--muted);margin:8px 0}.field-note{font-size:14px;margin:14px 0 0}.request-tabs{display:flex;gap:10px;margin-bottom:28px}.request-tabs button{flex:1;min-width:0;border:1px solid var(--line);padding:13px 10px;background:transparent;font-size:14px}.request-tabs button[aria-pressed=true]{background:var(--forest);color:var(--paper)}.status-message{font-size:15px;margin-top:20px;padding:16px;background:#e3ebd8;display:none}.status-message:not(:empty){display:block}.status-message[data-error=true]{background:#f4e7d9}.trap{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.moq-note{font-size:14px;padding:15px 18px;background:#e8eddc;margin-bottom:24px}.brief-preview{white-space:pre-wrap;padding:20px;border:1px solid var(--line);font:14px/1.7 var(--sans);max-height:330px;overflow:auto}.plain-page{max-width:820px;margin:auto;padding:55px 0 95px}.plain-page h1{font-size:65px;margin-bottom:30px}.plain-page h2{font-size:35px;margin:40px 0 20px}.plain-page p{margin:18px 0}.credit-row{display:grid;grid-template-columns:190px 1fr;gap:25px;padding:25px 0;border-top:1px solid var(--line);align-items:center}.credit-row img{height:145px}.credit-row h3{font-size:25px;margin-bottom:12px}.credit-row p{font-size:14px}.skip{position:fixed;top:-80px;left:15px;z-index:100;background:var(--forest);color:white;padding:10px 20px}.skip:focus{top:10px}:focus-visible{outline:3px solid #879d5b;outline-offset:5px}.btn[disabled]{opacity:.6;cursor:wait}.mobile-cta{display:none}.utility-links{display:flex;gap:20px;flex-wrap:wrap}.after-note{font-size:12px;color:var(--muted);margin-top:20px}.product-note{font-size:13px;margin-top:24px;color:var(--muted)}
@media(max-width:1100px){.nav{gap:15px;font-size:12px}.header-inner{gap:20px}.hero{gap:5%}.hero-photo{height:550px}.photo-index{left:-18px}.card-grid{gap:30px 20px}.steps{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:200px minmax(0,1fr);gap:35px}.card-image{height:245px}}
@media(max-width:850px){.menu-toggle{display:block;margin-left:auto}.header-inner>.nav-cta{display:none}.header-inner{min-height:86px;flex-wrap:wrap;padding:18px 0}.nav{display:none;width:100%;flex-direction:column;align-items:stretch;font-size:16px;gap:0;border-top:1px solid var(--line);padding-top:12px}.nav.is-open{display:flex}.nav a{padding:12px}.hero{grid-template-columns:1fr 1fr;gap:35px}.hero-photo{height:470px}.hero h1{font-size:58px}.hero-meta{gap:15px;margin-top:30px}.hero-meta span+span{padding-left:15px}.photo-index{width:128px;left:-15px;padding:18px;bottom:45px}.card-grid{grid-template-columns:1fr 1fr}.section{padding:72px 0}.section-heading{align-items:start}.section-heading>p{max-width:290px}.split{gap:6%}.split .photo{height:450px}.content-grid{gap:5%}.article-layout{grid-template-columns:1fr}.toc{position:static;display:none}.form-layout{grid-template-columns:1fr;gap:40px}.form-layout>aside{max-width:650px}.cert-grid{grid-template-columns:1fr}.footer-top{gap:35px}.metric{padding:28px 20px}.metric strong{font-size:47px}.product-hero{gap:5%}.product-hero .product-image{height:500px}.specs{grid-template-columns:1fr}.spec,.spec:first-child{border-right:0;border-bottom:1px solid var(--line);padding:13px 0}.spec:last-child{border:0}.spec b{display:inline;margin-right:10px}.closing .shell{align-items:start;flex-direction:column}.custom-grid{gap:0 30px}}
@media(max-width:600px){html{scroll-padding-top:25px}.shell{width:90%}.topline{font-size:10px;padding:8px 12px;letter-spacing:.05em}.brand{font-size:36px}.brand small{font-size:9px}.hero{grid-template-columns:1fr;padding-top:37px;padding-bottom:40px;gap:37px}.hero h1{font-size:clamp(53px,13vw,75px)}.hero .intro-text{font-size:16px}.hero-photo{height:460px;border-radius:150px 0 0 0}.photo-index{left:-8px;bottom:40px;width:130px}.photo-index strong{font-size:42px}.hero-meta{margin-top:32px}.hero-meta span{font-size:11px}.actions{gap:18px}.btn{padding:16px 21px}.metrics{grid-template-columns:1fr}.metric,.metric:first-child{display:grid;grid-template-columns:105px 1fr;gap:3px 20px;padding:24px 0;border-right:0;border-bottom:1px solid #fff3;align-items:center}.metric strong{grid-column:1;grid-row:1/3;margin:0;font-size:40px}.metric .kicker{grid-column:2;font-size:11px}.metric p{grid-column:2;font-size:13px}.section{padding:60px 0}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:20px;max-width:none}h2{font-size:41px}.split{grid-template-columns:1fr;gap:32px}.split .photo{height:390px}.card-grid{grid-template-columns:1fr;gap:32px}.card-image{height:290px}.card-image.rounded{border-radius:100px 0 0 0}.card-body h3{font-size:31px}.custom-grid{grid-template-columns:1fr}.custom-item{padding:24px 0}.custom-item h3{font-size:27px}.feature-quote{padding:55px 6%}.feature-quote p{font-size:33px}.application-row{grid-template-columns:28px 1fr 20px;gap:14px;padding:24px 0}.application-row h3{font-size:27px}.application-row p{grid-column:2;font-size:14px}.application-row>span:last-child{grid-column:3;grid-row:1/3}.journal-card figure{height:245px}.closing{padding:60px 0}.closing h2{font-size:43px}.footer{padding-top:55px}.footer-top{grid-template-columns:1fr 1fr;gap:38px 25px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:16px}.breadcrumb{font-size:11px;padding-top:22px}.page-intro{padding:35px 0 45px}.page-intro h1{font-size:51px}.intro-text{font-size:17px}.filter-bar{gap:8px}.filter-btn{font-size:13px;padding:9px 13px}.result-count{width:100%;margin:7px 0 0}.product-hero{grid-template-columns:1fr;padding:34px 0 50px;gap:30px}.product-hero h1{font-size:52px}.product-hero .product-image{height:420px}.product-hero .summary{font-size:17px}.product-hero figure{order:2}.specs{margin-top:24px}.content-grid{grid-template-columns:1fr;gap:30px}.content-grid h2{font-size:37px}.aside-box{padding:26px}th,td{padding:14px 15px;min-width:130px;font-size:14px}.steps{grid-template-columns:1fr}.step h3{margin:18px 0 14px}.article-head{padding:35px 0}.article-head h1{font-size:43px}.article-meta{font-size:12px;gap:9px 15px}.article-cover{height:280px}.article-layout{padding:45px 0}.article-body h2{font-size:32px}.article-body p{font-size:16px}.article-body li{font-size:16px}.inquiry-form{padding:24px 19px}.form-grid{grid-template-columns:1fr;gap:19px}.field-full{grid-column:auto}.request-tabs button{font-size:13px}.plain-page{padding:40px 0 65px}.plain-page h1{font-size:49px}.credit-row{grid-template-columns:1fr;gap:18px}.credit-row img{height:220px}.form-section{font-size:27px}.note{padding:18px;font-size:13px}.caption{font-size:11px}.mobile-cta{display:block;position:fixed;bottom:15px;right:18px;z-index:20;background:var(--forest);color:var(--cream);border:1px solid #ced9bb;box-shadow:0 6px 20px #0002;padding:11px 18px;font-size:13px;border-radius:30px}.footer{padding-bottom:85px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
picture{display:block;width:100%;height:100%}.inquiry-contact{border-top:1px solid var(--line);margin-top:28px;padding-top:24px}.inquiry-contact a{display:block;margin-top:10px;text-decoration:underline;text-underline-offset:4px}.card-image:has(img[src$=".svg"]) img{object-fit:contain}.brand{white-space:nowrap}button:disabled{pointer-events:none}

/* Acceptance fixes: allow grid content to shrink and keep enlarged text readable. */
.hero>*,.product-hero>*,.split>*,.content-grid>*,.form-layout>*,.footer-top>*,.form-grid>*{min-width:0}
h1,h2,h3,p,a,summary,.hero-meta{overflow-wrap:anywhere}
.table-wrap:focus-visible{outline:3px solid #52683c;outline-offset:5px}
@media(max-width:360px){.product-hero h1{font-size:44px}.page-intro h1{font-size:46px}.article-head h1{font-size:39px}}
@media(max-width:600px){.inquiry-form .actions .btn{width:100%}.mobile-cta{bottom:max(15px,env(safe-area-inset-bottom))}}

.inquiry-page .mobile-cta{display:none}

.section-label{font:600 12px/1.5 var(--sans);letter-spacing:.16em;text-transform:uppercase;margin-bottom:24px}

/* A distinctive wordmark and a persistent, compact contact dock. */
.brand-word{display:inline-flex;align-items:baseline;white-space:nowrap;letter-spacing:-.065em}
.brand-punct{display:inline-block;color:#657447;letter-spacing:-.22em;margin-right:.17em;transform:rotate(-8deg);transform-origin:50% 80%}
.footer .brand-punct{color:var(--olive)}
.contact-dock{position:fixed;right:22px;bottom:max(28px,env(safe-area-inset-bottom));z-index:40;display:flex;flex-direction:column;gap:10px;align-items:flex-end}
.contact-dock-link{min-height:50px;display:flex;align-items:center;justify-content:center;gap:11px;padding:12px 19px;border:1px solid #fff6;border-radius:28px;background:var(--forest);color:var(--paper);font-size:13px;font-weight:600;line-height:1.35;box-shadow:0 5px 22px #142c2526;transition:background .2s,transform .2s}
.contact-dock-link:hover{background:#315749;transform:translateY(-2px)}
.contact-whatsapp{background:#245d44}.contact-whatsapp:hover{background:#174a34}
.contact-dock-link svg{width:24px;height:24px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.contact-trigger{background:var(--cream);border-color:#9daa97;color:var(--forest)}.contact-trigger:hover{background:#e5eadb}
.contact-panel{position:fixed;inset:0 0 0 auto;margin:0;border:0;border-left:1px solid var(--line);padding:0;width:min(500px,100%);max-width:100%;height:100vh;height:100dvh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;background:var(--paper);color:var(--ink);box-shadow:-15px 0 70px #15271e26}
.contact-panel::backdrop{background:#142a2359;backdrop-filter:blur(2px)}
.contact-is-open{overflow:hidden;scrollbar-gutter:stable}
.contact-panel-head{position:relative;background:var(--forest);color:var(--cream);padding:36px 32px 30px}
.contact-panel-head .kicker{font-size:10px;letter-spacing:.13em;max-width:280px;margin-bottom:18px}
.contact-panel-head h2{font-size:42px;line-height:1.08}.contact-panel-head em{color:var(--olive)}
.contact-close{position:absolute;right:16px;top:16px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #ffffff50;border-radius:50%;color:var(--cream);background:transparent;font:29px/1 var(--sans)}
.contact-close:hover{background:#ffffff16}
.contact-panel-body{padding:26px 32px max(30px,env(safe-area-inset-bottom))}
.contact-panel-body>p{font-size:14px;line-height:1.65;margin-bottom:23px}
.quick-inquiry-form .form-grid{gap:16px}.quick-inquiry-form label{font-size:12px}.quick-inquiry-form input,.quick-inquiry-form select,.quick-inquiry-form textarea{padding:11px;margin-top:6px;font-size:16px}.quick-inquiry-form textarea{min-height:94px}
.quick-inquiry-form .check-row{font-size:12px}.quick-inquiry-form .check-row input{margin-top:2px;padding:0}.quick-inquiry-form .form-hint{margin-top:19px}.quick-inquiry-form .status-message{font-size:14px}.quick-inquiry-form summary{font-size:15px}.quick-inquiry-form .brief-preview{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}
.contact-form-actions{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-top:22px}.contact-form-actions .btn{flex:1;padding:14px 17px;min-width:150px}.contact-form-actions .text-link{font-size:12px;border-width:0 0 1px;background:transparent;padding:7px 0}
.contact-panel-foot{display:flex;flex-wrap:wrap;gap:9px 16px;margin-top:25px;padding-top:20px;border-top:1px solid var(--line);font-size:12px}.contact-panel-foot span{width:100%;color:var(--muted)}.contact-panel-foot a{text-decoration:underline;text-underline-offset:4px}
.footer{padding-bottom:165px}
@media(max-width:600px){.contact-dock{right:12px;bottom:max(12px,env(safe-area-inset-bottom));gap:8px}.contact-dock-link{min-height:46px;padding:10px 14px;font-size:12px}.contact-dock-link svg{width:21px;height:21px}.contact-panel-head{padding:29px 22px 25px}.contact-panel-head h2{font-size:36px}.contact-panel-head .kicker{max-width:235px;padding-right:25px}.contact-panel-body{padding:22px 22px max(25px,env(safe-area-inset-bottom))}.quick-inquiry-form .form-grid{grid-template-columns:1fr 1fr;gap:14px}.quick-inquiry-form .field-full{grid-column:1/-1}.quick-inquiry-form label{font-size:12px}}
@media(max-width:360px){.quick-inquiry-form .form-grid{grid-template-columns:1fr}.quick-inquiry-form .field-full{grid-column:auto}.contact-form-actions .btn{width:100%}.contact-panel-head h2{font-size:33px}}
@media(prefers-reduced-motion:reduce){.contact-dock-link{transition:none}}

/* Optional analytics: equal choices, matching the site's editorial palette. */
.analytics-notice{position:fixed;left:22px;bottom:22px;width:min(405px,calc(100% - 44px));max-height:calc(100dvh - 44px);overflow:auto;z-index:50;padding:25px;background:var(--paper);border:1px solid #a4ad96;box-shadow:0 8px 35px #142c2526;border-radius:3px}
.analytics-notice[hidden]{display:none}.analytics-notice .kicker{font-size:10px;margin-bottom:12px}.analytics-notice h2{font-size:29px;line-height:1.12;margin-bottom:15px}.analytics-notice>p:not(.kicker){font-size:13px;line-height:1.6;color:var(--ink)}
.analytics-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:19px}.analytics-actions button{min-height:46px;padding:10px 8px;border:1px solid var(--forest);background:var(--forest);color:var(--cream);font-size:12px;line-height:1.4;border-radius:2px}.analytics-actions button:hover{background:#315749}
.analytics-notice-foot{display:flex;gap:14px;justify-content:space-between;align-items:center;margin-top:15px;font-size:12px}.analytics-notice-foot a{text-decoration:underline;text-underline-offset:3px}.analytics-notice-foot button{border:0;background:transparent;color:var(--forest);text-decoration:underline;font:inherit;padding:8px 0}.analytics-notice-foot [hidden]{display:none}
.analytics-preferences{border:0;background:transparent;color:inherit;font:inherit;padding:0;text-decoration:underline;text-underline-offset:3px}.analytics-preferences[hidden]{display:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:600px){.analytics-notice{left:12px;bottom:12px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:20px}.analytics-notice h2{font-size:26px}.analytics-notice-open .contact-dock{visibility:hidden}}
