:root{--font-heading:"Plus Jakarta Sans","Sharp Sans",Helvetica,Arial,sans-serif;--font-body:"Figtree","Proxima Nova",Helvetica,Arial,sans-serif;--font-ui:Inter,"Helvetica Neue",Helvetica,Arial,sans-serif;--text-xs:.8125rem;--text-sm:.9rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.3rem;--text-2xl:1.6rem;--h1-size:clamp(2rem,3.6vw,3rem);--h2-size:clamp(1.6rem,2.8vw,2.25rem);--h3-size:1.125rem;--line-height-body:1.65;--line-height-heading:1.22;--font-weight-body:400;--font-weight-nav:600;--font-weight-heading:700;--letter-spacing-heading:-.01em}
:root{--green:#145F48;--green-dark:#0A3629;--text:#15171a;--muted:#555;--line:#e8eaed;--soft:#fafafa;--cream:#fbfaf6;--orange:#e77935;--radius:14px;--container:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--muted);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--line-height-body);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}
a{text-decoration:none;color:inherit}
p{margin:0 0 1rem}
h1,h2,h3{margin:0;color:var(--green-dark);font-family:var(--font-heading);font-weight:var(--font-weight-heading);letter-spacing:var(--letter-spacing-heading);line-height:var(--line-height-heading)}
h1{font-size:var(--h1-size)}
h2{font-size:var(--h2-size)}
h3{font-size:var(--h3-size)}
button,input,textarea{font:inherit}
.container{width:min(100% - 40px,var(--container));margin-inline:auto}
.skip-link,.screen-reader-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link:focus{position:fixed;z-index:1000;top:1rem;left:1rem;width:auto;height:auto;clip:auto;padding:.75rem 1rem;color:#fff;background:var(--green)}

.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.98);border-bottom:1px solid rgba(20,95,72,.1);box-shadow:0 2px 18px rgba(10,54,41,.04)}
.header-inner{min-height:72px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:.8rem}
.brand{display:inline-flex;align-items:center;gap:.7rem;min-width:max-content}
.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--green);color:#fff;font-weight:700}
.brand-logo-img,.brand .custom-logo{display:block;height:42px;width:auto;max-width:190px;object-fit:contain}
.brand-text strong{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--font-weight-heading);color:var(--green-dark);letter-spacing:var(--letter-spacing-heading)}
.brand-text small{display:none}
.primary-nav{justify-self:end}
.menu{display:flex;align-items:center;gap:1.08rem;margin:0;padding:0;list-style:none}
.mobile-menu{display:none}
.menu>li{position:relative}
.menu a{font-size:var(--text-sm);font-weight:600;color:#1d2d29}
.menu a:hover{color:var(--green)}
.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border-radius:10px;border:1px solid transparent;padding:.84rem 1.1rem;font-size:var(--text-sm);font-weight:700;line-height:1}
.header-cta,.button.primary{background:var(--orange);color:#fff}
.button.secondary{background:#fff;color:var(--green);border-color:rgba(20,95,72,.18)}
.nav-toggle{display:none;width:40px;height:40px;border-radius:10px;border:1.5px solid rgba(20,95,72,.12);background:#fff;color:var(--green);padding:0}
.nav-toggle span:not(.screen-reader-text){display:block;width:18px;height:2px;margin:4px auto;background:var(--green)}
.nav-search-bar{display:flex;align-items:center;gap:8px;background:#f5f5f5;border:1px solid #e8e8e8;border-radius:10px;padding:8px 14px;cursor:pointer;transition:all .2s;min-width:200px;margin:0 6px}
.nav-search-bar:hover{background:#efefef;border-color:#ddd}
.search-icon{font-size:var(--text-base);color:#999;line-height:1}
.nav-search-placeholder{font-size:var(--text-sm);color:#999;white-space:nowrap;flex:1}
.nav-search-kbd{font-size:var(--text-xs);color:#bbb;background:#fff;border:1px solid #e0e0e0;border-radius:4px;padding:1px 6px;font-family:var(--font-ui);line-height:1.4}

/* Header search: opened-state overlay. */
.search-overlay{display:none;position:fixed;inset:0;z-index:2000;background:rgba(0,0,0,.5);padding-top:130px;justify-content:center;align-items:flex-start}
.search-overlay.is-open{display:flex}
.search-overlay-inner{position:relative;width:560px;max-width:calc(100% - 40px);max-height:calc(100vh - 160px);background:#fff;border-radius:16px;box-shadow:0 24px 60px rgba(0,0,0,.15);overflow:hidden;display:flex;flex-direction:column}
.search-box{display:flex;align-items:center;gap:12px;padding:16px 20px;border-bottom:1px solid #f0f0f0}
.search-box .search-icon{color:#999;font-size:1.1rem}
.search-input{flex:1;border:none;outline:none;font-size:.98rem;color:#15171a;background:transparent}
.search-input::placeholder{color:#aaa}
.search-close{flex:none;width:28px;height:28px;display:grid;place-items:center;border:none;background:transparent;color:#8a8a8a;font-size:1.3rem;line-height:1;cursor:pointer;border-radius:50%}
.search-close:hover{background:#f5f5f5;color:#1a1a1a}
.search-quick{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:14px 20px;border-bottom:1px solid #f0f0f0}
.search-quick-label{font-size:.78rem;font-weight:700;color:#8a8a8a;text-transform:uppercase;letter-spacing:.04em}
.search-quick a{font-size:.86rem;color:var(--green);text-decoration:none;background:#f5f8f6;padding:5px 10px;border-radius:999px}
.search-quick a:hover{background:#e5f0ea}
.search-results{overflow-y:auto}
.search-result{display:flex;align-items:center;gap:12px;padding:12px 20px;text-decoration:none;color:#1a1a1a;font-size:.95rem;font-weight:500;border-bottom:1px solid #f8f8f8}
.search-result:last-child{border-bottom:none}
.search-result:hover{background:#f5f8f6}
.search-result svg{flex:none;color:var(--green)}
.search-result-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.search-loading,.search-empty{padding:20px;text-align:center;color:#999;font-size:.9rem}
.search-empty a{color:var(--green);font-weight:600;text-decoration:none}
body.search-lock{overflow:hidden}
@media(max-width:600px){
.search-overlay{padding-top:0;align-items:flex-start}
.search-overlay-inner{width:100%;max-width:100%;max-height:100vh;border-radius:0}
}

.mega-menu{position:absolute;top:calc(100% + 17px);left:50%;display:none;width:min(900px,calc(100vw - 40px));transform:translateX(-50%);padding:24px;border:1px solid rgba(20,95,72,.1);border-radius:16px;background:#fff;box-shadow:0 24px 60px rgba(0,0,0,.13)}
html:not(.js) .has-mega:hover .mega-menu,.has-mega:focus-within .mega-menu,.has-mega.is-open .mega-menu{display:grid}
.mega-menu::before{content:"";position:absolute;left:0;right:0;bottom:100%;height:24px}
.product-mega{gap:18px}
.mega-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.industry-mega{width:480px;left:0;transform:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}
.mega-col{min-width:0}
.mega-label{display:block;margin-bottom:12px;color:var(--green);font-size:var(--text-xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.mega-col a,.industry-mega a{display:block;padding:7px 0;color:#4f5f5c;font-size:var(--text-sm);line-height:1.35}
.mega-col a:hover,.industry-mega a:hover{color:var(--green);background:#f8fbfa}
.mega-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:16px;border-top:1px solid rgba(20,95,72,.08)}
.mega-bottom-text{font-size:var(--text-sm);color:#697572}
.mega-bottom-text strong{color:var(--green)}
.mega-cta{color:var(--green)!important;font-weight:700!important}

.hero{position:relative;overflow:hidden;background:linear-gradient(180deg,#fbfaf6 0%,#fff 100%)}
.home-hero{padding:86px 0 76px}
.hero-split{display:grid;grid-template-columns:minmax(0,.92fr) minmax(430px,.88fr);gap:56px;align-items:center}
.hero-copy{max-width:620px}
.hero-copy>p:not(.eyebrow){max-width:560px;margin-top:18px;font-size:var(--text-base);line-height:1.75;color:#555}
.eyebrow{margin-bottom:14px;color:var(--green);font-size:var(--text-xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.hero-product-card{overflow:hidden;border-radius:20px;background:#fff;box-shadow:0 24px 64px rgba(10,54,41,.12)}
.hero-product-card img{width:100%;aspect-ratio:1.24/.88;object-fit:cover}

.section{padding:88px 0}
.soft-section{background:#fafafa}
.section-heading{max-width:760px;margin:0 auto 42px;text-align:center}
.section-heading.align-left{margin-inline:0;text-align:left}
.section-heading p:not(.eyebrow){margin-top:12px;color:#626b68}
.text-link{font-weight:700;color:var(--green)}
.category-grid,.resource-grid,.industry-page-grid,.blog-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.category-card,.resource-card,.industry-page-card,.blog-card,.content-card,.sidebar-card,.product-card{border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 12px 30px rgba(10,54,41,.04)}
.category-card,.resource-card,.industry-page-card,.blog-card,.content-card{padding:26px}
.category-card:hover,.resource-card:hover,.product-card:hover{border-color:rgba(20,95,72,.28);box-shadow:0 18px 42px rgba(10,54,41,.08)}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.product-card{overflow:hidden}
.product-card a{display:grid;height:100%}
.product-card img{width:100%;aspect-ratio:1/1;object-fit:cover;background:#f6f6f4;border-bottom:1px solid var(--line)}
.product-card div{padding:18px}
.product-card h3{font-size:var(--text-lg)}
.product-card p{margin-top:9px;font-size:var(--text-sm);color:#606966}
.product-card span{display:inline-block;margin-top:8px;color:var(--green);font-size:var(--text-sm);font-weight:700}
.split-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:56px;align-items:center}
.industry-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.industry-card-grid span,.pill-list span,.option-grid span{display:block;border:1px solid var(--line);border-radius:12px;padding:14px 16px;background:#fff;color:#243d38;font-weight:700}
.faq-grid{display:grid;grid-template-columns:300px minmax(0,860px);gap:44px;align-items:start}
.faq-list{display:grid;gap:0}
.faq-list details{border:0;border-bottom:1px solid rgba(20,95,72,.08);border-radius:0;background:transparent;padding:20px 0}
.faq-list summary{cursor:pointer;color:var(--green-dark);font-family:var(--font-heading);font-size:var(--text-lg);letter-spacing:var(--letter-spacing-heading);font-weight:var(--font-weight-nav);list-style:none}
.faq-list p{margin:12px 0 0;color:#555;font-size:var(--text-sm);line-height:1.7}
.hp-faq{position:relative;overflow:hidden;background:#fafafa;padding:100px 24px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#2a2826;line-height:1.6}
.hp-faq::before{content:"";position:absolute;top:30px;right:40px;width:50px;height:50px;background:url("../img/recycle.webp") center/contain no-repeat;opacity:.06;transform:rotate(10deg);pointer-events:none}
.hp-faq .hp-faq-inner{width:100%;max-width:860px;margin-inline:auto}
.hp-faq-head{margin:0}
.hp-faq .eyebrow{margin:0 0 12px;color:#145f48;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:.75rem;font-weight:700;line-height:1.6;letter-spacing:.12em;text-transform:uppercase}
.hp-faq h2{margin:0 0 16px;color:#0f4a38;font-family:var(--font-heading);font-size:clamp(2.2rem,4vw,3rem);font-weight:var(--font-weight-heading);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-heading)}
.hp-faq .faq-list{display:block;margin-top:40px}
.hp-faq .faq-item{border:0;border-bottom:1px solid rgba(20,95,72,.08);border-radius:0;background:transparent;padding:20px 0}
.hp-faq .faq-item:last-child{border-bottom:0}
.hp-faq summary{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;cursor:pointer;list-style:none;color:#0a3629;font-family:var(--font-heading);font-size:1.15rem;font-weight:var(--font-weight-nav);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-heading)}
.hp-faq summary::-webkit-details-marker{display:none}
.hp-faq summary span{min-width:0}
.hp-faq summary b{display:block;flex:none;color:#145f48;font-family:var(--font-heading);font-size:1.4rem;font-weight:var(--font-weight-nav);line-height:var(--line-height-heading)}
.hp-faq .faq-item[open] summary b{transform:rotate(45deg)}
.hp-faq .faq-item p{margin:12px 0 0;color:#555250;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:.95rem;line-height:1.7}
.hp-faq .faq-item a{color:#145f48;font-weight:600}
.final-cta{padding:70px 0;background:var(--green-dark);color:rgba(255,255,255,.82)}
.final-cta-inner{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;max-width:960px}
.final-cta h2{color:#fff}
.final-cta .button.primary,.quote-card .button.primary{background:#fff;color:var(--green)}

.page-hero{padding:72px 0;background:#fbfaf6;border-bottom:1px solid var(--line)}
.narrow-hero{max-width:860px}
.narrow-hero p:not(.eyebrow){max-width:700px;margin-top:14px;font-size:var(--text-base)}
.policy-section{padding:76px 0 92px;background:#fff}
.policy-content{max-width:min(840px,100%);color:#333;overflow-wrap:break-word}
.policy-content h1{margin:0 0 18px;font-size:clamp(2.15rem,4vw,3.25rem);line-height:1.08;color:#111;font-weight:700;letter-spacing:0}
.policy-content h2{margin:34px 0 12px;font-size:1.45rem;line-height:1.25;color:#111;font-weight:700;letter-spacing:0}
.policy-content h3{margin:26px 0 10px;font-size:1.12rem;color:#111;letter-spacing:0}
.policy-content p{margin:0 0 16px;font-size:1rem;line-height:1.72;color:#444}
.policy-content .policy-lead{margin-bottom:12px;color:#444}
.policy-content .policy-updated{margin-bottom:30px;color:#666;font-size:.95rem}
.policy-content ul,.policy-content ol{margin:0 0 18px;padding-left:1.35rem;color:#444;font-size:1rem;line-height:1.7}
.policy-content li{margin:7px 0}
.policy-content a{color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:2px}
.product-groups,.industry-groups{display:grid;gap:58px}
.group-heading{margin-bottom:22px}

.product-hero{padding:54px 0 68px;background:#fbfaf6;border-bottom:1px solid var(--line)}
.product-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) 410px;gap:42px;align-items:start}
.product-hero-image{overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 20px 54px rgba(10,54,41,.1)}
.product-hero-image img{width:100%;aspect-ratio:1/1;object-fit:cover}
.product-hero-panel{border:1px solid var(--line);border-radius:18px;background:#fff;padding:28px;box-shadow:0 16px 42px rgba(10,54,41,.06)}
.product-hero-panel h1{font-size:var(--h2-size)}
.product-hero-panel p:not(.eyebrow){margin-top:12px;color:#555}
.product-badges{display:grid;grid-template-columns:1fr;gap:8px;margin:20px 0}
.product-badges span{border:1px solid rgba(20,95,72,.12);border-radius:10px;padding:10px 12px;color:#24423c;background:#f8fbfa;font-weight:700;font-size:var(--text-sm)}
.mini-quote-form{display:grid;gap:12px;margin-top:18px}
.mini-quote-form label,.quote-form label{display:grid;gap:6px;color:#1d2d29;font-weight:700;font-size:var(--text-sm)}
.mini-quote-form input,.mini-quote-form textarea,.mini-quote-form select,.quote-form input,.quote-form textarea,.quote-form select{width:100%;border:1px solid #dde5e2;border-radius:10px;background:#fff;padding:11px 12px;color:#15171a;font-weight:400}
.mini-quote-form input::placeholder,.mini-quote-form textarea::placeholder,.quote-form input::placeholder,.quote-form textarea::placeholder{color:#8a8f8c;font-weight:400}
.product-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:24px;align-items:start}
.product-main{display:grid;gap:18px}
.product-sidebar{position:sticky;top:94px;display:grid;gap:18px}
.content-card h2{margin-bottom:14px;font-size:var(--text-2xl)}
.content-image{width:100%;aspect-ratio:1.8/1;object-fit:cover;border-radius:14px;margin-top:20px}
.two-column-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.check-list,.sidebar-card ul,.order-list{margin:10px 0 0;padding-left:1.15rem}
.check-list li,.sidebar-card li,.order-list li{margin:6px 0}
.pill-list,.option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.sidebar-card{padding:20px}
.sidebar-card h3{margin-bottom:10px;font-size:var(--text-lg)}
.sidebar-links{list-style:none;padding-left:0}
.sidebar-links a{color:var(--green);font-weight:700}
.quote-card{background:var(--green);color:rgba(255,255,255,.84)}
.quote-card h3{color:#fff}
.product-collection-hero,.product-inquiry-hero,.product-content-hero{padding:56px 0 64px;background:#fbfaf6;border-bottom:1px solid var(--line)}
.product-collection-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(430px,1fr);gap:48px;align-items:center}
.product-collection-copy{max-width:610px}
.product-collection-copy h1,.quote-panel h1,.product-content-hero h1{font-size:var(--h2-size)}
.product-collection-copy>p:not(.eyebrow),.quote-panel>p:not(.eyebrow),.product-content-hero p:not(.eyebrow){margin-top:14px;color:#555;font-size:var(--text-base);line-height:1.75}
.product-collection-image,.product-inquiry-media{overflow:hidden;border-radius:18px;background:#fff;box-shadow:0 20px 54px rgba(10,54,41,.1)}
.product-collection-image img,.product-inquiry-media img{width:100%;aspect-ratio:1.05/1;object-fit:cover}
.product-info-strip{border-bottom:1px solid var(--line);background:#fff}
.product-info-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.product-info-row span{display:flex;align-items:center;justify-content:center;min-height:68px;border-left:1px solid var(--line);color:#233f39;font-size:var(--text-sm);font-weight:700;text-align:center}
.product-info-row span:last-child{border-right:1px solid var(--line)}
.collection-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.collection-content-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(380px,1fr);gap:28px;align-items:start}
.collection-image-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.collection-image-stack img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:16px;background:#fff;border:1px solid var(--line)}
.collection-image-stack img:first-child{grid-column:1/-1;aspect-ratio:1.7/1}
.product-inquiry-grid{display:grid;grid-template-columns:minmax(0,1fr) 430px;gap:36px;align-items:start}
.quote-panel{border:1px solid var(--line);border-radius:18px;background:#fff;padding:28px;box-shadow:0 16px 42px rgba(10,54,41,.06)}
.inquiry-form{padding-top:16px;border-top:1px solid var(--line)}
.form-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.inquiry-content{display:grid;grid-template-columns:minmax(0,.84fr) minmax(430px,1fr);gap:24px;align-items:start}
.image-mosaic{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.image-mosaic img{width:100%;aspect-ratio:1/1;object-fit:cover;border:1px solid var(--line);border-radius:16px;background:#fff}
.first-content-image{margin-top:0;margin-bottom:22px;aspect-ratio:1.7/1}
.content-image-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:22px}
.content-image-row img{width:100%;aspect-ratio:1.25/1;object-fit:cover;border-radius:14px;border:1px solid var(--line)}

.about-grid,.contact-grid,.quote-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;align-items:start}
.large-resource-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.quote-form{display:grid;gap:14px;padding:26px;border:1px solid var(--line);border-radius:16px;background:#fff}
.form-success{padding:.8rem 1rem;border-radius:10px;color:#0a5d2f;background:#e5f8ed;font-weight:700}
.form-error{padding:.8rem 1rem;border-radius:10px;color:#8a1f11;background:#fdecea;font-weight:700}
.site-footer{padding:64px 0 22px;background:var(--green-dark);color:rgba(255,255,255,.72)}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:36px}
.footer-brand .brand-mark{background:#fff;color:var(--green)}
.footer-logo-img{display:block;height:42px;width:auto;max-width:190px;object-fit:contain}
.footer-brand .brand-text strong,.footer-brand .brand-text small,.site-footer h2,.site-footer a{color:#fff}
.site-footer h2{margin-bottom:14px;font-family:var(--font-body);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.09em;font-weight:700}
.site-footer ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}
.footer-bottom{margin-top:44px;padding-top:18px;border-top:1px solid rgba(255,255,255,.14);font-size:var(--text-sm)}

@media (max-width:1100px){.header-inner{grid-template-columns:auto auto auto}.primary-nav{grid-column:1/-1;display:none;width:100%;justify-self:stretch}.primary-nav.is-open{display:block}.nav-toggle{display:block;justify-self:end}.menu{display:grid;gap:0;padding:10px 0 16px}.menu a{display:block;padding:10px 0}.mega-menu,.industry-mega{position:static;display:grid;width:auto;transform:none;box-shadow:none;margin:4px 0 14px}.mega-grid{grid-template-columns:1fr}.header-cta{display:none}.nav-search-bar{min-width:0;flex:1}.product-mega{grid-template-columns:1fr}}
@media (min-width:1101px){.header-menu{display:flex}.mobile-menu{display:none}}
@media (max-width:1100px){.header-menu{display:none}.mobile-menu{display:grid}}
@media (max-width:980px){.hero-split,.product-hero-grid,.split-grid,.faq-grid,.product-layout,.about-grid,.contact-grid,.quote-grid,.footer-grid,.product-collection-grid,.product-inquiry-grid,.inquiry-content,.collection-content-grid{grid-template-columns:1fr}.product-sidebar{position:static}.product-grid,.category-grid,.resource-grid,.industry-page-grid,.blog-card-grid,.collection-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-info-row{grid-template-columns:repeat(2,minmax(0,1fr))}.final-cta-inner{grid-template-columns:1fr}}
@media (max-width:680px){.container{width:min(100% - 28px,var(--container))}.header-inner{min-height:66px}.brand-mark{width:40px;height:40px}.brand-logo-img,.brand .custom-logo{height:40px;max-width:170px}.nav-search-placeholder,.nav-search-kbd{display:none}.nav-search-bar{min-width:40px;padding:8px 10px}.section{padding:58px 0}.home-hero,.product-hero,.page-hero,.product-collection-hero,.product-inquiry-hero,.product-content-hero{padding:48px 0}.policy-section{padding:48px 0 64px}.policy-content h1{font-size:2.05rem}.policy-content h2{margin-top:28px;font-size:1.25rem}.policy-content p,.policy-content ul,.policy-content ol{font-size:.96rem;line-height:1.68}.hero-actions,.button{width:100%}.product-grid,.category-grid,.resource-grid,.industry-page-grid,.blog-card-grid,.industry-card-grid,.pill-list,.option-grid,.two-column-card,.large-resource-grid,.collection-card-grid,.product-info-row,.form-two,.image-mosaic,.collection-image-stack,.content-image-row{grid-template-columns:1fr}.product-info-row span,.product-info-row span:last-child{border-right:0;border-left:0;border-top:1px solid var(--line)}}

button,input,textarea,select{font-family:var(--font-ui)}
.site-header nav a,.site-header .btn,.button,.btn{font-family:var(--font-heading);font-weight:var(--font-weight-nav)}

/* Type D: product detail */
.d-hero{padding:40px 0 32px;background:#fff}
.d-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:40px;align-items:start}
.d-gallery-main{aspect-ratio:1/1;border-radius:var(--radius);overflow:hidden;background:var(--soft);border:1px solid var(--line)}
.d-gallery-main img{width:100%;height:100%;object-fit:cover;display:block}
.d-gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:12px}
.d-thumb{padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;background:var(--soft);cursor:pointer;aspect-ratio:1/1}
.d-thumb.is-active{border-color:var(--green)}
.d-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.d-quote h1{margin:0}
.d-updated{margin:6px 0 0;font-size:.78rem;color:#7a8089}
.d-subtitle{margin:10px 0 14px;color:var(--muted)}
.d-blocks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 16px}
.d-block{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}
.d-block h3{margin:0 0 4px;font-size:.85rem}
.d-block p{margin:0;font-size:.82rem;color:var(--muted)}
.d-form-title{font-size:1.1rem;margin:8px 0 0}
.d-form-notice{padding:10px 12px;border-radius:10px;background:#eaf5f0;color:var(--green-dark);font-size:.9rem}
.d-form-notice.d-form-error{background:#fdecea;color:#8a1f11}
.d-size{display:grid;gap:6px;font-weight:700;font-size:var(--text-sm)}
.d-size-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 84px;gap:8px}
.d-size-row input,.d-size-row select{width:100%;border:1px solid #dde5e2;border-radius:10px;padding:10px;background:#fff}
.d-sample{display:grid;gap:2px;margin-top:14px;padding:12px 14px;border:1px dashed var(--green);border-radius:12px;font-size:.88rem}
.d-takeaway-card{max-width:820px;margin:0 auto}
.d-article-inner{max-width:820px}
.d-article h2,.d-order h2,.d-related h2{margin:34px 0 14px}
.d-article h2:first-child{margin-top:0}
.d-specs{display:grid;gap:0;margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.d-specs div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px;padding:12px 16px;border-bottom:1px solid var(--line)}
.d-specs div:last-child{border-bottom:0}
.d-specs dt{font-weight:700}
.d-specs dd{margin:0;color:var(--muted)}
.d-cards,.d-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.d-cards li,.d-steps li{display:grid;gap:4px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#fff}
.d-cards span,.d-steps span{color:var(--muted);font-size:var(--text-sm)}
.d-steps{counter-reset:s}
.d-steps li::before{counter-increment:s;content:counter(s);display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--green);color:#fff;font-weight:700;font-size:.8rem}
.d-lists{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:28px}
.d-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.d-related-card{display:grid;gap:6px;align-content:start;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--text)}
.d-related-card img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:10px}
.d-related-card h3{margin:4px 0 0;font-size:1rem}
.d-related-card p{margin:0;color:var(--muted);font-size:var(--text-sm)}
.d-related-card span{color:var(--green);font-weight:700;font-size:var(--text-sm)}
.d-final-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,460px);gap:40px;align-items:start}
.d-final .quote-panel{background:#fff;color:var(--text);padding:24px;border-radius:var(--radius)}
.d-final .d-form-title{color:var(--text)}
@media(max-width:900px){.d-hero-grid,.d-final-grid,.d-lists{grid-template-columns:1fr}.d-cards,.d-steps,.d-related-grid{grid-template-columns:1fr}.d-specs div{grid-template-columns:1fr;gap:2px}.d-blocks{grid-template-columns:1fr}}
.d-content{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:48px;align-items:start}
.d-main h2{margin:34px 0 12px}
.d-main>h2:first-child,.d-prose+h2{margin-top:30px}
.d-bullets{margin:0 0 8px;padding-left:20px;display:grid;gap:8px;color:var(--muted)}
.d-bullets strong{color:var(--text)}
.d-sidebar{display:grid;gap:16px;position:sticky;top:96px}
.d-side-card{padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:#fff}
.d-side-card h3{margin:0 0 10px;font-size:1rem}
.d-side-list{margin:0;padding:0;list-style:none;display:grid;gap:8px;font-size:var(--text-sm);color:var(--muted)}
.d-side-list li{display:flex;gap:8px;align-items:baseline}
.d-side-list li::before{content:"";flex:none;width:6px;height:6px;border-radius:50%;background:var(--green);transform:translateY(-1px)}
.d-side-links a{color:var(--green);font-weight:600}
@media(max-width:900px){.d-content{grid-template-columns:1fr;gap:28px}.d-sidebar{position:static}}
.d-strip .product-info-row span{display:grid;gap:2px;text-align:center}
.d-strip strong{display:block}

/* Type D: proportions matched to the reference product page (1440px viewport) */
.d-hero,.d-specbar,.d-takeaway,.d-article{background:#fffaeb}
.d-hero{padding:24px 48px 0}
.d-hero .container,.d-content,.d-specbar-inner,.d-faq .container,.d-final .container{width:min(100%,1320px);max-width:1320px;margin-inline:auto}
.d-hero-grid{grid-template-columns:minmax(0,1fr) 480px;gap:64px}
.d-gallery-main{border-radius:24px;background:#fff}
.d-gallery-thumbs{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:12px}
.d-thumb{border-radius:10px;background:#fff}
.d-quote{padding:36px;border-radius:24px;border:1px solid rgba(0,0,0,.04);background:#fff;box-shadow:0 8px 40px rgba(0,0,0,.04)}
.d-quote h1{font-size:2.6rem;line-height:1.1}
.d-subtitle{font-size:.82rem;line-height:1.5;margin:8px 0 16px}
.d-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:#ede9e7;border-radius:10px;overflow:hidden;margin:0 0 18px}
.d-tile{display:grid;gap:2px;align-content:center;justify-items:center;padding:14px 6px;background:#fffaeb;text-align:center}
.d-tile strong{font-size:.95rem;color:var(--green)}
.d-tile span{font-size:.62rem;letter-spacing:.06em;text-transform:uppercase;color:#7a8089}
.d-form-title{font-size:.85rem;margin:6px 0 10px}
.d-form .form-two{gap:12px}
.d-form input:not([type=radio]),.d-form select,.d-form textarea{height:48px;padding:13px 14px;border:1px solid #ede9e7;border-radius:10px;background:#fffaeb;font-size:.88rem;font-family:inherit;width:100%}
.d-form textarea{height:auto;min-height:88px}
.d-form select{appearance:auto}
.d-form label{font-size:.75rem;font-weight:700;gap:6px}
.d-form .button.primary{height:41px;padding:10px 24px;border-radius:100px;font-size:.9rem;font-weight:700;background:#ff7d20;color:#fff;border:0;cursor:pointer;transition:background .15s,transform .05s}
.d-form .button.primary:hover{background:#e86a10}
.d-form .button.primary:active{transform:translateY(1px)}
.d-form .button.primary:focus-visible,.d-form input:focus-visible,.d-form select:focus-visible,.d-form textarea:focus-visible{outline:2px solid var(--green);outline-offset:2px}
.d-size-row{display:flex;align-items:center;gap:8px}
.d-size-row input{width:56px;text-align:center;padding:13px 4px}
.d-unit{display:inline-flex;gap:4px;margin-left:6px}
.d-unit label{display:block;font-size:.75rem}
.d-unit input{position:absolute;opacity:0;width:1px;height:1px}
.d-unit span{display:grid;place-items:center;min-width:38px;height:36px;padding:0 10px;border-radius:8px;background:#ede9e7;color:#555;font-weight:700;cursor:pointer}
.d-unit input:checked+span{background:var(--green);color:#fff}
.d-unit input:focus-visible+span{outline:2px solid var(--green);outline-offset:2px}
.d-specbar-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:24px}
.d-specbar-item{padding:28px 32px}
.d-specbar-item h3{margin:0 0 4px;font-size:.85rem}
.d-specbar-item p{margin:0;font-size:.85rem;color:var(--muted)}
.d-takeaway{padding:30px 0}
.d-takeaway-card{max-width:760px;padding:24px 28px;border-radius:16px}
.d-content{grid-template-columns:minmax(0,1fr) 340px;gap:64px;padding-inline:0}
.d-article{padding:40px 48px 64px}
.d-main p,.d-main li{font-size:.95rem;line-height:1.8;color:#555250}
.d-main h2{font-size:1.8rem;margin:40px 0 16px}
.d-sidebar{gap:16px}
.d-side-card{padding:24px;border-radius:16px}
.d-side-card h3{font-size:1.17rem;margin-bottom:8px}
.d-side-list{font-size:.82rem;gap:0}
.d-side-list li{padding:6px 0}
.d-faq{padding:64px 48px;background:#fff}
.d-faq .faq-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;max-width:1320px}
.d-faq h2{font-size:2.4rem}
.d-final{padding:80px 48px}
.d-final-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;max-width:1320px;margin-inline:auto}
.d-final h2{font-size:2.6rem}
.d-final .d-quote{padding:28px}
@media(max-width:1100px){.d-hero,.d-article,.d-faq,.d-final{padding-left:20px;padding-right:20px}}
@media(max-width:900px){.d-hero-grid{grid-template-columns:1fr;gap:28px}.d-quote{padding:24px}.d-quote h1{font-size:2rem}.d-content,.d-faq .faq-grid,.d-final-grid{grid-template-columns:1fr;gap:28px}.d-specbar-inner{grid-template-columns:repeat(2,minmax(0,1fr))}.d-specbar-item{padding:18px 16px}.d-faq{padding:40px 20px}.d-final{padding:48px 20px}.d-final h2{font-size:2rem}.d-faq h2{font-size:1.8rem}}
@media(max-width:480px){.d-hero{padding:16px 16px 0}.d-article{padding:24px 16px 40px}.d-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.d-specbar-inner{grid-template-columns:1fr}.d-size-row input{width:48px}.d-gallery-thumbs{gap:8px}}
.site-header .header-inner{min-height:65px}
.d-quote h1{font-size:2.1rem}
.d-form .d-size-row input{width:56px;padding:13px 4px;text-align:center}
.d-final .quote-panel{border-radius:24px}
@media(max-width:480px){.d-form .d-size-row input{width:46px}}
.d-hero-grid>*,.d-final-grid>*,.d-content>*{min-width:0}
.d-form .d-size-row{flex-wrap:wrap;row-gap:8px}
@media(max-width:480px){.d-final .d-quote,.d-quote{padding:20px}.d-form .d-size-row input{width:44px}.d-unit{margin-left:0}}

/* Type D: colors/details taken from the reference page's computed styles */
.d-gallery-main{border:1px solid rgba(0,0,0,.04)}
.d-thumb{border:2px solid transparent;background:#fff;padding:0}
.d-thumb.is-active{border-color:#145f48}
.d-quote h1{color:#0a3629}
.d-updated{font-size:.78rem;color:#7a8089}
.d-subtitle{font-size:.82rem;color:#5f6d67;line-height:1.5;margin:6px 0 16px}
.d-form-title{font-size:1.1rem;color:#2a2826;margin:0 0 12px}
.d-promo{font-size:.82rem;line-height:1.4;background:#f0f9f5;border:1px solid #cdeadd;border-radius:6px;padding:7px 10px;margin:0 0 12px;color:#145f48}
.d-form{margin-top:0;gap:12px}
.d-form label,.d-form .d-label{font-size:.78rem;font-weight:600;color:#555250;gap:6px}
.d-form label em{color:#e53e3e;font-style:normal}
.d-form input:not([type=radio]),.d-form select,.d-form textarea{background:#fffaeb;border:1px solid #ede9e7;border-radius:10px;color:#000}
.d-form textarea{height:88px}
.d-form .d-size-row{gap:6px;align-items:center}
.d-form .d-size-row input{width:50px;height:44px;padding:0 4px;background:#fff;text-align:center}
.d-x{color:#999;font-size:.85rem}
.d-unit{display:inline-flex;gap:2px;margin-left:10px}
.d-unit span{min-width:0;width:auto;height:38px;padding:8px 10px;border:1px solid #ddd;border-radius:4px;background:#f5f5f5;color:#666;font-size:.75rem;font-weight:400}
.d-unit input:checked+span{background:#145f48;border-color:#145f48;color:#fff}
.d-form .d-submit{width:100%;height:41px;padding:10px 24px;border-radius:100px;background:#ff7d20;color:#fff;font-size:.9rem;font-weight:700}
.d-form .d-submit:hover{background:#ef6c10}
.d-checks{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px;font-size:.72rem;color:#888}
.d-sample{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:16px;padding:16px 18px;background:#fafaf8;border:1px solid rgba(20,95,72,.1);border-radius:12px}
.d-sample-info{display:flex;align-items:center;gap:10px}
.d-sample-icon{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:8px;background:#145f48}
.d-sample p{margin:0}
.d-sample-title{font-size:.82rem;font-weight:700;color:#1a1a1a}
.d-sample-text{font-size:.68rem;color:#888}
.d-sample-btn{display:inline-block;flex:none;padding:10px 20px;border-radius:8px;background:#145f48;color:#fff!important;font-size:.82rem;font-weight:700;white-space:nowrap}
.d-specbar{padding:0 48px}
.d-specbar-inner{margin-top:32px;gap:1px;background:#ede9e7;border-radius:24px;overflow:hidden}
.d-specbar-item{display:flex;align-items:center;gap:16px;padding:28px 32px;background:#fff}
.d-specbar-icon{display:grid;place-items:center;flex:none;width:48px;height:48px;border-radius:14px;background:rgba(20,95,72,.08);color:#145f48}
.d-specbar-item h3{margin:0;font-size:.85rem;color:#2a2826}
.d-specbar-item p{margin:2px 0 0;font-size:.78rem;color:#a8a5a0}
@media(max-width:900px){.d-specbar{padding:0 20px}.d-specbar-inner{border-radius:16px}.d-specbar-item{padding:18px 16px;gap:12px}.d-specbar-icon{width:40px;height:40px;border-radius:10px}}
@media(max-width:480px){.d-specbar{padding:0 16px}}
.d-specbar-item p{font-size:.78rem;margin:0}
.d-specbar-item{padding:24px 28px}
.d-sample-info{flex:1;min-width:0}
.d-sample{flex-wrap:nowrap}
@media(max-width:480px){.d-sample{flex-wrap:wrap}}

/* Sample kit card + request modal (layout measured from the reference page's modal) */
.d-sample{flex-wrap:wrap}
.d-sample-info{flex:0 1 auto}
.d-sample-btn{border:0;cursor:pointer;font-family:inherit}
.d-sample-btn:hover{background:#0f4d3a}
.sk-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(0,0,0,.5);backdrop-filter:blur(4px)}
.sk-overlay[hidden]{display:none}
.sk-shell{display:grid;grid-template-columns:260px 1fr;width:100%;max-width:720px;max-height:90vh;overflow:hidden;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,.2);animation:skUp .3s ease}
@keyframes skUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.sk-left{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 24px;overflow:hidden;text-align:center;color:#fff;background:linear-gradient(160deg,#145f48 0%,#1b7a5e 100%)}
.sk-pattern{position:absolute;inset:0;opacity:.06;background-image:repeating-linear-gradient(45deg,transparent,transparent 10px,rgba(255,255,255,.1) 10px,rgba(255,255,255,.1) 20px)}
.sk-left-inner{position:relative;z-index:1}
.sk-left-icon{display:block;margin:0 auto 16px;opacity:.9}
.sk-left h3{margin:0 0 8px;font-size:1.5rem;line-height:1.1;color:#fff}
.sk-tagline{margin:0 0 20px;font-size:.82rem;line-height:1.5;opacity:.75}
.sk-box{padding:14px 16px;border-radius:10px;background:rgba(255,255,255,.12);font-size:.8rem;line-height:1.5}
.sk-box-title{font-weight:700;font-size:1.15rem;margin-bottom:2px}
.sk-box-price{opacity:.9}
.sk-box-note{opacity:.7;font-size:.74rem;margin-top:2px}
.sk-checks{margin-top:16px;font-size:.72rem;opacity:.6;display:grid;gap:2px}
.sk-right{position:relative;min-height:380px;max-height:90vh;overflow-y:auto;padding:28px 24px}
.sk-close{position:absolute;top:10px;right:10px;width:30px;height:30px;border:0;border-radius:50%;background:rgba(0,0,0,.04);font-size:1rem;cursor:pointer;color:#555}
.sk-close:hover{background:rgba(0,0,0,.1)}
.sk-strip{display:none;margin:0 30px 14px 0;padding:10px 12px;border:1px solid #cdeadd;border-radius:10px;background:#f1f8f5;color:#145f48;font-size:.74rem;line-height:1.5}
.sk-eyebrow{margin:0 0 6px;font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:#99aaaa}
.sk-right h3{margin:0 0 2px;font-size:1.1rem;font-weight:700;color:#1a1a1a}
.sk-sub{margin:0 0 14px;font-size:.78rem;color:#999}
.sk-form input:not([type=hidden]),.sk-form select{width:100%;box-sizing:border-box;padding:11px 12px;border:1px solid #e0e0e0;border-radius:8px;background:#fff;font:inherit;font-size:.9rem;outline:none}
.sk-form input:focus,.sk-form select:focus{border-color:#145f48}
.sk-grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.sk-grid3{display:grid;grid-template-columns:1fr 1fr 100px;gap:10px;margin-bottom:10px}
.sk-row{margin-bottom:12px}
.sk-address{margin-bottom:4px;padding-top:12px;border-top:1px solid #eee}
.sk-address>p{margin:0 0 8px;font-size:.74rem;font-weight:600;color:#555}
.sk-address .sk-row{margin-bottom:10px}
.sk-hp{position:absolute;left:-9999px}
.sk-submit{display:block;width:100%;margin-top:16px;padding:13px;border:0;border-radius:8px;background:#ff7d20;color:#fff;font:inherit;font-size:.92rem;font-weight:700;cursor:pointer}
.sk-submit:hover{background:#ef6c10}
.sk-submit[disabled]{opacity:.6;cursor:wait}
.sk-error{min-height:1em;margin:8px 0 0;font-size:.78rem;color:#c0392b;text-align:center}
.sk-foot{margin:6px 0 0;font-size:.68rem;color:#bbb;text-align:center}
.sk-done{display:grid;justify-items:center;text-align:center;padding-top:32px}
.sk-done[hidden],.sk-step[hidden]{display:none}
.sk-done-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:#eaf5f0;color:#145f48;font-size:1.6rem}
.sk-done h3{margin:14px 0 6px;font-size:1.2rem;color:#145f48}
.sk-done p{margin:0 0 6px;font-size:.88rem;color:#666}
.sk-done-btn{max-width:200px;background:#145f48}
body.sk-lock{overflow:hidden}
@media(max-width:640px){.sk-overlay{padding:10px}.sk-shell{grid-template-columns:1fr;max-height:95vh;overflow-y:auto}.sk-left{display:none}.sk-strip{display:block}.sk-right{max-height:none;overflow:visible}.sk-grid2,.sk-grid3{grid-template-columns:1fr}}

/* Sample kit step 2 (payment layout) */
.sk-back{display:inline-flex;align-items:center;gap:6px;margin-bottom:12px;padding:7px 14px;border:1px solid #e0e0e0;border-radius:8px;background:#f3f4f6;color:#444;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}
.sk-back:hover{background:#e8eaed}
.sk-sub-2{margin-bottom:16px}
.sk-pay-card{margin:14px 0 0;padding:16px;border:1px solid #e9ecef;border-radius:12px;background:#fafafa}
.sk-pay-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.sk-pay-head>div{flex:1}
.sk-shimmer{display:block;background:linear-gradient(90deg,#f0f0f0 25%,#e6e6e6 37%,#f0f0f0 63%);background-size:400% 100%;animation:skShimmer 1.25s ease-in-out infinite}
@keyframes skShimmer{0%{background-position:100% 50%}100%{background-position:0 50%}}
.sk-line{height:14px;border-radius:999px}
.sk-pay-icon{width:36px;height:36px;border-radius:10px;flex:none}
.sk-l1{width:42%;margin-bottom:8px}
.sk-l2{width:68%;height:10px}
.sk-l3{width:100%;margin-bottom:12px}
.sk-l4{width:58%}
.sk-pay-note{margin:12px 0 16px;text-align:center;font-size:.74rem;color:#999}
.sk-pay-btn{margin-top:0;background:#145f48}
.sk-pay-btn:hover{background:#0f4d3a}
.sk-done{padding:40px 0 8px}
.sk-done-btn{margin-top:20px;padding:10px 24px;border:0;border-radius:8px;background:#145f48;color:#fff;font:inherit;font-weight:600;cursor:pointer}
@media(prefers-reduced-motion:reduce){.sk-shimmer{animation:none}}

/* FAQ accordion (left title, right list, arrow on every row, first item open) */
.d-faq .faq-grid{align-items:start}
.d-faq .eyebrow{margin:0 0 12px;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:#145f48;font-weight:700}
.d-faq h2{margin:0;color:#0a3629}
.d-faq-sub{margin:12px 0 0;font-size:.9rem;color:#7a8089}
.d-faq .faq-list{display:block;border-top:1px solid #ede9e7}
.d-faq .faq-list details{padding:0;border:0;border-bottom:1px solid #ede9e7;border-radius:0;background:transparent}
.d-faq .faq-list summary{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0;cursor:pointer;list-style:none;font-family:inherit;font-size:.92rem;font-weight:600;letter-spacing:0;color:#2a2826}
.d-faq .faq-list summary::-webkit-details-marker{display:none}
.d-faq .faq-list summary::after{content:"\203A";flex:none;font-size:1.1rem;line-height:1;color:#2a2826;transition:transform .2s ease,color .2s ease}
.d-faq .faq-list details[open] summary{color:#145f48}
.d-faq .faq-list details[open] summary::after{transform:rotate(90deg);color:#145f48}
.d-faq .faq-list summary:focus-visible{outline:2px solid #145f48;outline-offset:2px}
.d-faq .faq-list p{margin:0;padding:0 0 20px;font-size:.95rem;line-height:1.7;color:#555250}

/* QA pass: header, breadcrumb, FAQ and CTA matched to the reference page */
.site-header{background:#fff;border-bottom:1px solid rgba(0,0,0,.06);box-shadow:none}
.brand-mark{width:36px;height:36px;border-radius:9px}
.menu a{font-weight:500;color:#554f4b}
.site-header .header-cta{border-radius:999px}
.hp-best .product-card{box-shadow:none}
.hp-best .product-card span{color:var(--orange)}
.footer-bottom{border-top-color:rgba(255,245,203,.1);font-size:.8rem;color:#7abfa0}
.site-footer h2{color:rgba(255,255,255,.45)}
.site-footer ul a{color:rgba(255,255,255,.78);font-size:.88rem}
.d-hero{padding-top:23px}
.d-crumbs-wrap{width:min(100%,1320px);max-width:1320px;margin-inline:auto}
.d-crumbs{display:flex;align-items:center;flex-wrap:wrap;height:31px;margin-bottom:24px;font-size:.8rem}
.d-crumbs a{color:#7a7773}
.d-crumbs a:hover{color:#145f48}
.d-crumbs span{margin:0 4.5px;color:#d4d1cd}
@media(max-width:900px){.d-crumbs{height:auto;min-height:31px;margin-bottom:16px}}
.d-final{background:#145f48}
.d-faq .eyebrow{line-height:1}
.d-faq .faq-list summary{line-height:1.4}
.d-faq .faq-list summary::after{font-size:.92rem}
.d-faq .faq-list p{font-size:1rem;line-height:1.55;color:#2a2826}
.footer-grid{grid-template-columns:1.6fr repeat(4,1fr)}
.d-specbar{padding-top:32px}
.d-specbar-inner{margin-top:0}
body:has(.d-hero){background:#fffaeb}
.d-side-list li{line-height:1.25}
.d-bullets li{line-height:1.7}
.d-specbar-item{padding:28px 32px}
@media(max-width:900px){.d-specbar-item{padding:18px 16px}}
.footer-grid{grid-template-columns:1.6fr repeat(4,1fr)}
@media(max-width:980px){.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.footer-grid{grid-template-columns:1fr}}
@media(max-width:480px){.nav-search-bar{min-width:0;width:40px;padding:0;justify-content:center}.nav-search-placeholder,.nav-search-kbd{display:none}}
@media(max-width:480px){.nav-search-bar{height:40px;border-radius:12px}}

/* ===== Type D v3: compact B2B layout (max 1280, 56px section rhythm) ===== */
.d-hero{padding:23px 48px 0}
.d-hero .container,.d-crumbs-wrap,.d-specbar-inner{width:100%;max-width:1280px;margin-inline:auto}
.d-wrap{width:min(100% - 40px,1280px);margin-inline:auto}
@media(max-width:480px){.d-wrap{width:min(100% - 32px,1280px)}}
.d-hero-grid{grid-template-columns:minmax(0,1fr) 460px;gap:48px;align-items:start}
.d-quote{padding:26px 28px 28px}
.d-quote h1{font-size:2rem;line-height:1.1}
.d-subtitle{margin:8px 0 14px;font-size:.85rem}
.d-tiles{margin:0 0 14px}
.d-tile{padding:10px 6px}
.d-tile strong{font-size:.92rem}
.d-form-title{margin:0 0 10px;font-size:1rem}
.d-form{gap:10px}
.d-form input:not([type=radio]):not([type=file]),.d-form select{height:42px;padding:0 12px}
.d-form textarea{height:64px;min-height:64px;padding:10px 12px}
.d-row-qty{display:grid;gap:10px}
.d-row-qty>label{max-width:calc(50% - 5px)}
.d-form .d-size-row input{height:40px}
.d-unit span{height:36px}
.d-form .d-submit{height:44px;margin-top:2px;font-size:.95rem}
.d-form-notice{margin:0 0 10px}
.d-specbar{padding:32px 48px 0}
.d-block{padding:56px 48px 0}
.d-block h2,.d-sample-band h2,.d-cta h2{margin:0 0 20px;font-size:1.9rem;line-height:1.15;color:#0a3629}
.d-overview-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:48px;align-items:center}
.d-overview-grid.is-single{grid-template-columns:1fr}
.d-prose p{margin:0 0 12px;font-size:.95rem;line-height:1.7;color:#555250}
.d-h3{margin:20px 0 10px;font-size:1.1rem;color:#0a3629}
.d-check{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.d-check li{position:relative;padding-left:24px;font-size:.92rem;line-height:1.5;color:#555250}
.d-check li::before{content:"";position:absolute;left:0;top:.45em;width:12px;height:12px;border-radius:50%;background:rgba(20,95,72,.14);box-shadow:inset 0 0 0 3px #145f48}
.d-check strong{color:#2a2826}
.d-overview-media{margin:0;border-radius:16px;overflow:hidden;border:1px solid rgba(0,0,0,.04);background:#fff}
.d-overview-media img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover}
.d-spec-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch}
.d-spec-card{padding:22px 24px;border:1px solid rgba(0,0,0,.04);border-radius:16px;background:#fff}
.d-spec-card h3{margin:0 0 10px;font-size:1.1rem;color:#0a3629}
.d-spec-card dl{margin:0}
.d-spec-card dl>div{display:grid;grid-template-columns:130px minmax(0,1fr);gap:14px;padding:9px 0;border-top:1px solid #ede9e7}
.d-spec-card dt{font-size:.88rem;font-weight:700;color:#2a2826}
.d-spec-card dd{margin:0;font-size:.85rem;line-height:1.45;color:#555250}
.d-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.d-steps li{display:grid;gap:6px;align-content:start;padding:18px 16px;border:1px solid rgba(0,0,0,.04);border-radius:16px;background:#fff}
.d-step-num{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#145f48;color:#fff;font-size:.8rem;font-weight:700}
.d-steps strong{font-size:.92rem;line-height:1.3;color:#2a2826}
.d-step-text{font-size:.8rem;line-height:1.45;color:#7a7773}
.d-sample-band{padding:56px 48px 0}
.d-sample-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 28px;border:1px solid rgba(20,95,72,.12);border-radius:16px;background:#f0f9f5}
.d-sample-inner h2{margin:0 0 6px;font-size:1.3rem}
.d-sample-inner p{margin:0;max-width:720px;font-size:.9rem;line-height:1.55;color:#555250}
.d-btn{display:inline-flex;align-items:center;justify-content:center;flex:none;height:44px;padding:0 26px;border-radius:999px;color:#fff!important;font-size:.92rem;font-weight:700;white-space:nowrap}
.d-btn-green{background:#145f48}
.d-btn-green:hover{background:#0f4d3a}
.d-btn-orange{background:#ff7d20}
.d-btn-orange:hover{background:#ef6c10}
.d-faq{margin-top:56px;padding:56px 48px}
.d-faq .faq-grid{max-width:1280px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px}
.d-related{padding-bottom:56px}
.d-related .eyebrow{margin:0 0 8px;font-size:.72rem;letter-spacing:.15em;text-transform:uppercase;color:#145f48;font-weight:700}
.d-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.d-related-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(0,0,0,.04);border-radius:16px;background:#fff;color:#2a2826}
.d-related-card:hover{border-color:rgba(20,95,72,.3)}
.d-related-img{display:block;aspect-ratio:4/3;overflow:hidden;background:#f5f2ea}
.d-related-img img{display:block;width:100%;height:100%;object-fit:cover}
.d-related-info{display:grid;gap:2px;padding:14px 16px 16px}
.d-related-info strong{font-size:.95rem;line-height:1.3;min-height:2.6em}
.d-related-info em{font-style:normal;font-size:.75rem;color:#a8a5a0}
.d-related-cta{margin-top:6px;font-size:.8rem;font-weight:600;color:#ff7d20}
.d-cta{padding:56px 48px;background:#145f48;color:rgba(255,255,255,.85)}
.d-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:32px}
.d-cta h2{margin:0 0 8px;color:#fff;font-size:1.9rem}
.d-cta p{margin:0;max-width:680px;font-size:.95rem;line-height:1.6}
@media(max-width:1100px){.d-steps{grid-template-columns:repeat(3,minmax(0,1fr))}.d-hero-grid{grid-template-columns:minmax(0,1fr) 420px;gap:32px}}
@media(max-width:900px){
.d-hero,.d-specbar,.d-block,.d-sample-band,.d-cta,.d-faq{padding-left:20px;padding-right:20px}
.d-hero-grid,.d-overview-grid,.d-spec-cards,.d-faq .faq-grid{grid-template-columns:1fr;gap:24px}
.d-block{padding-top:40px}.d-sample-band{padding-top:40px}.d-faq{margin-top:40px;padding-top:40px;padding-bottom:40px}.d-cta{padding-top:40px;padding-bottom:40px}
.d-block h2,.d-cta h2{font-size:1.6rem}
.d-sample-inner,.d-cta-inner{flex-direction:column;align-items:flex-start}
.d-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.d-row-qty>label{max-width:none}
}
@media(max-width:700px){
.d-steps{grid-template-columns:1fr}
.d-steps li{grid-template-columns:28px minmax(0,1fr);column-gap:12px;row-gap:2px;padding:14px}
.d-step-num{grid-row:1/3}
.d-spec-card dl>div{grid-template-columns:1fr;gap:2px}
}
@media(max-width:480px){
.d-hero{padding:16px 16px 0}
.d-specbar,.d-block,.d-sample-band,.d-cta,.d-faq{padding-left:16px;padding-right:16px}
.d-quote{padding:20px 18px}
.d-quote h1{font-size:1.7rem}
.d-btn{width:100%}
}
.d-block{border:0;border-radius:0;background:transparent}
.d-block h3.d-h3{margin:20px 0 10px}
.d-steps li::before{content:none;display:none}
.d-steps li{box-shadow:none}
.d-related-card{padding:0;gap:0}
.d-related-card img{border-radius:0;aspect-ratio:auto}
.d-related-card .d-related-info{color:#2a2826;font-weight:400;font-size:1rem}
.d-related-card .d-related-info strong{color:#2a2826;font-weight:700}
.d-related-card .d-related-cta{color:#ff7d20;font-weight:600;font-size:.8rem}
.d-related-card .d-related-img{display:block}
.d-steps .d-step-num{color:#fff;font-size:.8rem;font-weight:700}
.d-steps .d-step-text{color:#7a7773;font-size:.8rem}
@media(max-width:900px){.d-spec-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.d-spec-card dl>div{grid-template-columns:1fr;gap:2px}.d-overview-media img{aspect-ratio:16/9}}
@media(max-width:700px){.d-spec-cards{grid-template-columns:1fr}.d-overview-media img{aspect-ratio:4/3}}
.d-spec-card{padding:18px 22px 10px}
.d-spec-card h3{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-size:1.05rem}
.d-spec-card h3::before{content:"";width:8px;height:8px;border-radius:50%;background:#145f48}
.d-spec-card dl>div{padding:8px 0}
.d-spec-cards{gap:16px}
.d-spec-card dl>div{grid-template-columns:150px minmax(0,1fr)}
@media(max-width:900px){.d-spec-card dl>div{grid-template-columns:1fr}}

/* ===== Type D v4: overview, spec cards (chips), steps and sample band ===== */
.d-block h2{font-size:2.1rem;margin:0 0 14px}
.d-section-sub{margin:0 0 24px;font-size:1.02rem;line-height:1.65;color:#555250}
.d-overview-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px}
.d-overview-text h2{margin-bottom:16px}
.d-prose p{margin:0 0 14px;font-size:1.05rem;line-height:1.75;color:#3f3d3a}
.d-overview-media{border-radius:24px;background:#f5f2ea}
.d-overview-media img{aspect-ratio:4/3}
.d-block h3.d-h3{margin:24px 0 12px;font-size:1.2rem;color:#0a3629}
.d-uses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;padding:0;list-style:none}
.d-uses li{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border:1px solid rgba(0,0,0,.04);border-radius:14px;background:#fff}
.d-use-dot{flex:none;width:10px;height:10px;margin-top:.45em;border-radius:50%;background:#145f48;box-shadow:0 0 0 4px rgba(20,95,72,.12)}
.d-uses strong{display:block;font-size:.95rem;line-height:1.35;color:#2a2826}
.d-uses small{display:block;margin-top:2px;font-size:.8rem;line-height:1.4;color:#7a7773}
.d-spec-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.d-spec-card{padding:24px 26px 26px;border-radius:20px}
.d-spec-head{display:flex;align-items:center;gap:12px}
.d-spec-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:rgba(20,95,72,.09);color:#145f48}
.d-spec-card h3{display:block;margin:0;font-size:1.25rem;color:#0a3629}
.d-spec-card h3::before{content:none}
.d-chips{display:flex;flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none}
.d-chips li{padding:8px 14px;border:1px solid #cdeadd;border-radius:999px;background:#f0f9f5;font-size:.9rem;line-height:1.3;color:#2a2826}
.d-steps{gap:16px}
.d-steps li{padding:24px 20px;gap:10px;border-radius:20px}
.d-step-num{width:34px;height:34px;font-size:.95rem}
.d-steps strong{font-size:1.02rem;line-height:1.3}
.d-steps .d-step-text{font-size:.9rem;line-height:1.55}
.d-sample-inner{padding:28px 32px;border-radius:20px}
.d-sample-inner h2{margin:0 0 6px;font-size:1.5rem}
.d-sample-inner p{font-size:1rem}
@media(min-width:701px) and (max-width:1199px){
.d-steps{grid-template-columns:repeat(6,minmax(0,1fr))}
.d-steps li{grid-column:span 2}
.d-steps li:nth-child(4){grid-column:2/4}
.d-steps li:nth-child(5){grid-column:4/6}
}
@media(max-width:900px){
.d-overview-grid{grid-template-columns:1fr;gap:28px}
.d-spec-cards{grid-template-columns:1fr}
.d-block h2{font-size:1.7rem}
.d-overview-media img{aspect-ratio:16/10}
}
@media(max-width:700px){
.d-steps li{grid-column:auto}
.d-steps{grid-template-columns:1fr}
.d-uses{grid-template-columns:1fr}
.d-overview-media img{aspect-ratio:4/3}
.d-sample-inner{padding:22px 20px}
}
.d-block p.d-section-sub{margin:0 0 24px;font-size:1.02rem;line-height:1.65;color:#555250}

/* ===== Type D v5: explanatory spec cards + overview proportions ===== */
.d-spec-cards{align-items:stretch;gap:20px}
.d-spec-card{display:flex;flex-direction:column;padding:26px 28px 28px}
.d-spec-desc{margin:14px 0 0;font-size:1rem;line-height:1.65;color:#3f3d3a}
.d-spec-card .d-chips{margin:14px 0 0}
.d-spec-note{margin:auto 0 0;padding:12px 14px;border-left:3px solid #145f48;border-radius:0 10px 10px 0;background:#f0f9f5;font-size:.92rem;line-height:1.55;color:#3f3d3a}
.d-spec-card .d-chips+.d-spec-note{margin-top:18px}
.d-spec-note strong{display:block;margin-bottom:2px;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#145f48}
.d-block p.d-spec-desc{font-size:1rem;line-height:1.65;color:#3f3d3a;margin:14px 0 0}
.d-block p.d-spec-note{margin:auto 0 0;font-size:.92rem;line-height:1.55}
.d-block .d-chips+p.d-spec-note{margin-top:18px}
.d-overview-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:56px;align-items:center}
.d-overview-media{align-self:center}
.d-overview-media img{aspect-ratio:1/1;max-height:460px}
@media(max-width:900px){.d-overview-grid{grid-template-columns:1fr}.d-overview-media img{aspect-ratio:16/10;max-height:none}}
@media(max-width:700px){.d-overview-media img{aspect-ratio:4/3}}

/* ===== Type D v6: vertical spec rows, 3+2 steps, tighter FAQ rhythm ===== */
.d-spec-rows{display:grid;gap:20px}
.d-spec-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-areas:"head opts" "desc opts" "note opts";column-gap:48px;row-gap:12px;align-content:start;padding:30px 34px;border:1px solid rgba(0,0,0,.04);border-radius:20px;background:#fff}
.d-spec-row .d-spec-head{grid-area:head;display:flex;align-items:center;gap:14px}
.d-spec-row .d-spec-head h3{margin:0;font-size:1.4rem;color:#0a3629}
.d-spec-row .d-spec-icon{width:48px;height:48px}
.d-block .d-spec-row p.d-spec-desc{grid-area:desc;margin:0;font-size:1.02rem;line-height:1.7;color:#3f3d3a}
.d-block .d-spec-row p.d-spec-note{grid-area:note;margin:4px 0 0;align-self:start}
.d-spec-opts{grid-area:opts;align-self:center;padding:22px 24px;border-radius:16px;background:#f8fbf9;border:1px solid #e3efe9}
.d-spec-opts-label{display:block;margin-bottom:12px;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#145f48}
.d-spec-row .d-chips{margin:0;gap:10px}
.d-spec-row .d-chips li{padding:9px 16px;font-size:.95rem;background:#fff}
.d-overview-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}
.d-steps{grid-template-columns:repeat(6,minmax(0,1fr))}
.d-steps li{grid-column:span 2;padding:28px 26px;gap:12px}
.d-steps li:nth-child(4){grid-column:2/4}
.d-steps li:nth-child(5){grid-column:4/6}
.d-step-num{width:40px;height:40px;font-size:1.05rem}
.d-steps strong{font-size:1.15rem}
.d-steps .d-step-text{font-size:1rem;line-height:1.6}
.d-sample-band{padding-bottom:24px}
.d-faq{margin-top:56px}
.d-sample-band+.d-faq{margin-top:0;padding-top:40px}
@media(max-width:900px){
.d-spec-row{grid-template-columns:1fr;grid-template-areas:"head" "desc" "opts" "note";padding:22px 20px;row-gap:12px}
.d-spec-opts{align-self:stretch;padding:16px 16px}
.d-spec-row .d-spec-head h3{font-size:1.2rem}
}
@media(max-width:700px){
.d-steps{grid-template-columns:1fr}
.d-steps li,.d-steps li:nth-child(4),.d-steps li:nth-child(5){grid-column:auto;padding:16px}
.d-step-num{width:34px;height:34px}
.d-steps strong{font-size:1.05rem}
.d-steps .d-step-text{font-size:.92rem}
}

/* ===== Type D v7: compact spec strips, compact 5-step order, tight sample band (final) ===== */
.d-block{padding-top:48px}
.d-block h2{font-size:1.9rem;margin-bottom:10px}
.d-block p.d-section-sub{margin:0 0 20px;font-size:1rem;line-height:1.6}
.d-spec-rows{gap:12px}
.d-spec-row{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-areas:"head opts" "desc opts" "note note";column-gap:32px;row-gap:4px;align-items:center;padding:18px 24px 16px;border-radius:16px}
.d-spec-row .d-spec-head{gap:12px}
.d-spec-row .d-spec-icon{width:36px;height:36px}
.d-spec-row .d-spec-icon svg{width:18px;height:18px}
.d-spec-row .d-spec-head h3{font-size:1.15rem}
.d-block .d-spec-row p.d-spec-desc{margin:0 0 0 48px;font-size:.92rem;line-height:1.5;color:#555250}
.d-spec-row .d-spec-opts{padding:0;border:0;border-radius:0;background:transparent;align-self:center}
.d-spec-row .d-chips{gap:6px}
.d-spec-row .d-chips li{padding:5px 11px;font-size:.82rem;background:#f0f9f5}
.d-block .d-spec-row p.d-spec-note{margin:6px 0 0 48px;padding:0;border:0;border-radius:0;background:transparent;font-size:.82rem;line-height:1.45;color:#7a7773}
.d-spec-row .d-spec-note strong{display:inline;margin:0 4px 0 0;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#145f48}
.d-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.d-steps li,.d-steps li:nth-child(4),.d-steps li:nth-child(5){grid-column:auto;padding:16px 16px 18px;gap:6px;border-radius:14px}
.d-step-num{width:28px;height:28px;font-size:.85rem}
.d-steps strong{font-size:.95rem;line-height:1.3}
.d-steps .d-step-text{font-size:.85rem;line-height:1.45}
.d-sample-band{padding-top:40px;padding-bottom:16px}
.d-sample-inner{padding:18px 24px;border-radius:14px}
.d-sample-inner h2{margin:0 0 2px;font-size:1.25rem}
.d-sample-inner p{font-size:.9rem;line-height:1.5}
.d-btn{height:40px;padding:0 22px;font-size:.88rem}
@media(max-width:1100px){.d-steps{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){
.d-spec-row{grid-template-columns:1fr;grid-template-areas:"head" "desc" "opts" "note";padding:16px 16px;row-gap:8px}
.d-block .d-spec-row p.d-spec-desc,.d-block .d-spec-row p.d-spec-note{margin-left:0}
.d-block{padding-top:36px}
.d-block h2{font-size:1.6rem}
}
@media(max-width:700px){
.d-steps{grid-template-columns:1fr}
.d-steps li,.d-steps li:nth-child(4),.d-steps li:nth-child(5){padding:12px 14px}
.d-sample-inner{padding:16px}
}
@media(min-width:901px){.d-spec-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}

/* ===== Type D v8: brand polish only (no structural change) ===== */
/* Overview */
.d-overview-grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:52px}
.d-prose p:first-child{font-size:1.15rem;line-height:1.7;color:#2a2826}
.d-overview-media{border-radius:24px;border:6px solid #fff;background:linear-gradient(160deg,#f5efe3,#efe6d6);box-shadow:0 18px 40px rgba(10,54,41,.14)}
.d-overview-media img{border-radius:18px;aspect-ratio:1/1;max-height:500px}
.d-uses li{border-color:rgba(20,95,72,.1);background:linear-gradient(180deg,#fff,#fbfdfc);box-shadow:0 2px 8px rgba(10,54,41,.04);transition:box-shadow .2s,transform .2s}
.d-uses li:hover{box-shadow:0 6px 16px rgba(10,54,41,.09);transform:translateY(-1px)}
/* Materials & Specifications */
.d-spec-row{position:relative;overflow:hidden;border-color:rgba(20,95,72,.08);box-shadow:0 4px 16px rgba(10,54,41,.05)}
.d-spec-row::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:#145f48}
.d-spec-row .d-spec-icon{background:linear-gradient(145deg,#e3f2ec,#cfe8de);color:#0f4d3a;box-shadow:inset 0 0 0 1px rgba(20,95,72,.12)}
.d-spec-row .d-spec-head h3{font-size:1.2rem;letter-spacing:-.005em}
.d-spec-row .d-chips li{border:1px solid #cdeadd;background:#f0f9f5;color:#2a2826;font-weight:500}
.d-spec-row .d-spec-note strong{padding:2px 7px;border-radius:999px;background:rgba(20,95,72,.09);letter-spacing:.06em}
/* How to Order */
.d-steps{position:relative}
.d-steps li{position:relative;border-color:rgba(20,95,72,.08);box-shadow:0 6px 18px rgba(10,54,41,.06)}
.d-step-num{background:linear-gradient(145deg,#1b7a5e,#145f48);box-shadow:0 0 0 4px rgba(20,95,72,.12)}
/* Sample CTA */
.d-sample-inner{border:1px solid rgba(20,95,72,.2);background:linear-gradient(100deg,#e6f3ed 0%,#f5faf7 100%);box-shadow:0 6px 18px rgba(10,54,41,.06)}
.d-sample-inner .d-btn-green{box-shadow:0 6px 14px rgba(20,95,72,.25);transition:transform .15s,box-shadow .15s,background .15s}
.d-sample-inner .d-btn-green:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(20,95,72,.32)}
/* FAQ */
@media(max-width:900px){.d-overview-media{border-width:4px}.d-overview-media img{max-height:none}}
@media(max-width:900px){.d-overview-media{width:100%}.d-overview-media img{width:100%;aspect-ratio:16/10;max-height:none}}
@media(max-width:700px){.d-overview-media img{aspect-ratio:4/3}}
@media(max-width:900px){.d-overview-grid{grid-template-columns:1fr;gap:24px}}

/* ===== Type D v9: small cleanups ===== */
/* 1. spec strips: no green side line, clean bordered card */
.d-spec-row::before{content:none;display:none}
.d-spec-row{overflow:visible;border:1px solid #ebe7dc;box-shadow:0 2px 10px rgba(10,54,41,.04)}
.d-spec-row .d-spec-icon{background:#eef5f1;box-shadow:none;color:#145f48}
.d-spec-row .d-spec-head h3{color:#0a3629}
/* 3. quieter tags and a plain one-line buyer note */
.d-spec-row .d-chips li{border:1px solid #e8e4da;background:#f6f4ee;color:#555250;font-weight:400}
.d-spec-row .d-spec-note strong{padding:0;border-radius:0;background:none;letter-spacing:.06em;color:#7a7773}
/* 2. overview image: rounded only, very light shadow, no white frame */
.d-overview-media{border:0;background:transparent;border-radius:20px;overflow:hidden;box-shadow:0 6px 20px rgba(10,54,41,.08)}
.d-overview-media img{border-radius:20px}
/* 4. steps: same height, plain number dot */
.d-steps{align-items:stretch}
.d-steps li{align-content:start;box-shadow:0 2px 10px rgba(10,54,41,.05)}
.d-step-num{background:#145f48;box-shadow:none}
@media(max-width:900px){.d-overview-media{border:0}}
.d-sample-band{padding-bottom:12px}
.d-sample-band+.d-faq{padding-top:36px}

/* Why Choose (compact 3-up icon cards) */
.d-why-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.d-why-card{display:flex;align-items:flex-start;gap:14px;padding:18px 20px;border:1px solid #ebe7dc;border-radius:16px;background:#fff;box-shadow:0 2px 10px rgba(10,54,41,.04)}
.d-why-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:#eef5f1;color:#145f48}
.d-why-card h3{margin:0 0 4px;font-size:1.02rem;line-height:1.3;color:#0a3629}
.d-why-card p{margin:0;font-size:.9rem;line-height:1.5;color:#555250}
.d-block .d-why-card p{margin:0;font-size:.9rem;line-height:1.5;color:#555250}
@media(max-width:900px){.d-why-grid{grid-template-columns:1fr}}
@media(max-width:900px){.d-why-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.d-why-card{flex-direction:column;gap:10px;padding:16px}}
@media(max-width:700px){.d-why-grid{grid-template-columns:1fr}.d-why-card{flex-direction:row;padding:14px 16px}}
.d-btn,.d-sample-inner .d-btn-green,.d-sample-inner .d-btn-green:hover{box-shadow:none}
.d-sample-inner .d-btn-green:hover{transform:none}
.d-sample-inner{padding:14px 24px}
.d-sample-inner p{max-width:none}
.d-sample-inner h2{font-size:1.2rem}
@media(max-width:900px){.d-sample-inner{padding:16px}}

/* FAQ: plain list (white section, hairline dividers, small chevron, no tinted or boxed states) */
.d-faq{background:#fff}
.d-faq-sub{margin:12px 0 0;font-size:.95rem;line-height:1.6;color:#7a7773}
.d-faq .faq-list{border-top:1px solid #edeae7}
.d-faq .faq-list details,.d-faq .faq-list details[open]{border:0;border-bottom:1px solid #edeae7;border-radius:0;background:transparent;box-shadow:none}
.d-faq .faq-list summary{padding:20px 0;font-size:.92rem;font-weight:600;line-height:1.4;color:#2a2826}
.d-faq .faq-list details[open] summary{color:#0a3629}
.d-faq .faq-list summary::after{display:inline;width:auto;height:auto;border-radius:0;background:none;font-size:.92rem;color:#2a2826}
.d-faq .faq-list details[open] summary::after{background:none;color:#0a3629;transform:rotate(90deg)}
.d-faq .faq-list p{padding:0 0 20px;font-size:1rem;line-height:1.55;color:#2a2826}

/* ===== Product collection page ===== */
body:has(.c-hero){background:#fff}
.c-cream{background:#fffaeb;padding-bottom:56px}
.c-wrap{width:100%;max-width:1280px;margin-inline:auto}
.c-hero{padding:23px 48px 0}
.c-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;padding-bottom:8px}
.c-hero-grid.is-single{grid-template-columns:1fr}
.c-hero-text h1{margin:0 0 14px;font-size:2.8rem;line-height:1.08;color:#0a3629}
.c-hero-sub{margin:0 0 22px;max-width:560px;font-size:1.05rem;line-height:1.65;color:#3f3d3a}
.c-hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.d-btn-outline{border:1px solid #145f48;background:transparent;color:#145f48!important}
.d-btn-outline:hover{background:#eef5f1}
.c-hero-media{display:grid;grid-template-columns:1.25fr 1fr;grid-template-rows:1fr 1fr;gap:12px;height:380px}
.c-hero-media-1{grid-template-columns:1fr;grid-template-rows:1fr}
.c-hero-media-2{grid-template-rows:1fr}
.c-hero-img{margin:0;overflow:hidden;border-radius:20px;background:#fff;border:1px solid rgba(0,0,0,.04)}
.c-hero-img img{display:block;width:100%;height:100%;object-fit:cover}
.c-hero-img-1{grid-row:1/3}
.c-hero-media-2 .c-hero-img-1{grid-row:1}
.c-stats-band{padding:24px 48px 0}
.c-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid #ece8dc;border-bottom:1px solid #ece8dc}
.c-stat{display:grid;gap:2px;justify-items:center;padding:18px 12px;background:transparent;text-align:center}
.c-stat strong{font-size:1.15rem;color:#145f48}
.c-stat span{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;color:#7a7773}
.c-filter{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 18px}
.c-filter button{padding:7px 16px;border:1px solid #e8e4da;border-radius:999px;background:#fff;font:inherit;font-size:.85rem;color:#3f3d3a;cursor:pointer}
.c-filter button.is-active{border-color:#145f48;background:#145f48;color:#fff}
.c-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.c-empty{margin:8px 0 0;padding:28px 20px;border:1px dashed #e2ddd0;border-radius:14px;background:#fff;color:#555250;text-align:center;font-size:.95rem}
.c-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid #ece8dc;border-radius:14px;background:#fff;color:#2a2826;box-shadow:none}
.c-card[hidden]{display:none}
.c-card{transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.c-card:hover{transform:translateY(-2px);border-color:#e2ddd0;box-shadow:0 12px 28px rgba(10,54,41,.08)}
.c-card:focus{outline:none}
.c-card:focus-visible{outline:2px solid rgba(20,95,72,.22);outline-offset:3px}
.c-card:active{transform:translateY(-1px);border-color:#e2ddd0}
@media (prefers-reduced-motion:reduce){.c-card{transition:none}.c-card:hover,.c-card:active{transform:none}}
.c-card-img{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:#f5f2ea}
.c-card-img img{display:block;width:100%;height:100%;object-fit:cover}
.c-card-body{display:flex;justify-content:space-between;align-items:flex-end;gap:10px;padding:12px 14px 14px;flex:1}
.c-card-main{display:grid;gap:5px;align-content:start;min-width:0}
.c-card-badge{position:absolute;top:10px;left:10px;z-index:1;padding:4px 9px;border-radius:4px;background:#0a3629;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.2}
.c-card-body strong{font-size:.98rem;font-weight:700;line-height:1.3;color:#0a3629}
.c-card-text{font-size:.86rem;line-height:1.5;color:#555250;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.c-card-tags{display:flex;flex-wrap:wrap;gap:6px}
.c-card-tags em{padding:2px 8px;border:1px solid #efece4;border-radius:999px;background:transparent;font-style:normal;font-size:.7rem;color:#7a7773}
.c-card-cta{flex:none;white-space:nowrap;font-size:.84rem;font-weight:600;color:#ff7d20;transition:color .15s}
.c-card:hover .c-card-cta{color:#ef6c10}
.c-uses-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.c-opt-list{display:grid;gap:10px}
.c-opt-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:20px;align-items:center;padding:14px 20px;border:1px solid #ebe7dc;border-radius:16px;background:#fff}
.c-opt-row h3{margin:0;font-size:1.05rem;color:#0a3629}
.c-opt-row .d-chips{margin:0;gap:6px}
.c-opt-row .d-chips li{padding:5px 11px;font-size:.85rem;border:1px solid #e8e4da;background:#f6f4ee;color:#555250}
.c-grid-block,.c-uses,.c-options{padding-bottom:0}
@media(max-width:1100px){.c-cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){
.c-hero,.c-stats-band{padding-left:20px;padding-right:20px}
.c-hero-grid{grid-template-columns:1fr;gap:24px}
.c-hero-text h1{font-size:2.2rem}
.c-hero-media{height:300px}
.c-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.c-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.c-uses-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.c-opt-row{grid-template-columns:1fr;gap:8px}
}
@media(max-width:560px){
.c-hero,.c-stats-band{padding-left:16px;padding-right:16px}
.c-cards{grid-template-columns:1fr}
.c-uses-grid{grid-template-columns:1fr}
.c-hero-media{height:240px}
.c-hero-actions .d-btn{width:100%}
}

/* ===== Collection page: content modules & tables ===== */
.c-sec{padding:44px 48px 0}
.c-sec h2{margin:0 0 10px;font-size:1.9rem;line-height:1.15;color:#0a3629}
.c-sec-sub{margin:0 0 22px;font-size:1rem;line-height:1.65;color:#555250}
.c-sub{margin:26px 0 12px;font-size:1.1rem;color:#0a3629}
.c-table-wrap{margin-top:18px}
.c-sec-sub+.c-table-wrap{margin-top:0}
.c-table{width:100%;border-collapse:collapse;background:#fff;border:1px solid #ece8dc;border-radius:14px;overflow:hidden;font-size:.95rem;line-height:1.55;color:#3f3d3a}
.c-table thead th{padding:14px 20px;background:#f6f4ee;text-align:left;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7a7773}
.c-table tbody th,.c-table tbody td{padding:16px 20px;text-align:left;vertical-align:top;border-top:1px solid #efece4}
.c-table tbody th{width:22%;font-weight:700;color:#0a3629}
.c-table tbody td:last-child{color:#555250}
.c-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.c-types li{display:grid;gap:6px;align-content:start;padding:20px;border:1px solid #ece8dc;border-radius:14px;background:#fff}
.c-types strong{font-size:1.02rem;color:#0a3629}
.c-types span{font-size:.92rem;line-height:1.55;color:#555250}
.c-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.c-steps li{display:grid;gap:10px;align-content:start;padding:18px;border:1px solid #ece8dc;border-radius:14px;background:#fff;font-size:.93rem;line-height:1.5;color:#3f3d3a}
.c-step-num{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#145f48;color:#fff;font-size:.85rem;font-weight:700}
@media(max-width:900px){
.c-sec{padding:36px 20px 0}
.c-sec h2{font-size:1.6rem}
.c-types{grid-template-columns:repeat(2,minmax(0,1fr))}
.c-steps{grid-template-columns:1fr}
.c-steps li{grid-template-columns:30px minmax(0,1fr);align-items:center;gap:12px;padding:14px}
.c-table,.c-table tbody,.c-table tr,.c-table th,.c-table td{display:block;width:100%}
.c-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.c-table{border:0;background:transparent}
.c-table tbody tr{margin-bottom:12px;border:1px solid #ece8dc;border-radius:14px;background:#fff;overflow:hidden}
.c-table tbody th,.c-table tbody td{width:auto;padding:10px 16px;border-top:0}
.c-table tbody th{padding-top:14px;background:#f6f4ee;font-size:1rem}
.c-table tbody td+td{padding-top:0}
.c-table tbody td::before{content:attr(data-label);display:block;margin-bottom:2px;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7a7773}
}
@media(max-width:560px){
.c-sec{padding:32px 16px 0}
.c-types{grid-template-columns:1fr}
}

/* Buyer-guide look: key takeaway box, format cards */
.c-key-box{max-width:920px;padding:26px 30px;border:1px solid #ece8dc;border-left:4px solid #145f48;border-radius:14px;background:#fff}
.c-key-box h2{margin:0 0 10px;font-size:1.5rem}
.c-key-box p{margin:0 0 10px;font-size:1.02rem;line-height:1.7;color:#3f3d3a}
.c-key-box p:last-child{margin-bottom:0}
.c-fmts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.c-fmts li{display:grid;gap:8px;align-content:start;padding:20px;border:1px solid #ece8dc;border-radius:14px;background:#fff}
.c-fmts strong{font-size:1.02rem;color:#0a3629}
.c-fmt-for{font-size:.92rem;line-height:1.5;color:#3f3d3a}
.c-fmt-for em{display:block;margin-bottom:2px;font-style:normal;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#7a7773}
.c-fmt-note{padding-top:8px;border-top:1px solid #efece4;font-size:.88rem;line-height:1.5;color:#7a7773}
@media(max-width:900px){.c-fmts{grid-template-columns:repeat(2,minmax(0,1fr))}.c-key-box{padding:20px}}
@media(max-width:560px){.c-fmts{grid-template-columns:1fr}}

/* ===== Collection page v3: buyer guide (white background, main + sidebar) ===== */
.c-guide{background:#fff;padding:56px 48px 24px}
.c-guide-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:56px;align-items:start}
.c-guide-main{min-width:0}
.c-gsec{padding:0 0 40px}
.c-gsec h2{margin:0 0 12px;font-size:1.7rem;line-height:1.2;color:#0a3629}
.c-gsec .c-sec-sub{margin:0 0 18px;font-size:1rem;line-height:1.7;color:#3f3d3a}
.c-gsec.c-key{padding:22px 0;margin-bottom:40px;border-top:1px solid #e5e0d6;border-bottom:1px solid #e5e0d6}
.c-gsec .c-key-title{margin:0 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#0a3629}
.c-key p{margin:0 0 10px;font-size:1.02rem;line-height:1.75;color:#3f3d3a}
.c-key p:last-child{margin-bottom:0}
.c-vlist{margin:0;padding:0;list-style:none;border-top:1px solid #e5e0d6}
.c-vlist li{display:grid;gap:3px;padding:13px 0;border-bottom:1px solid #e5e0d6;font-size:.96rem;line-height:1.6;color:#3f3d3a}
.c-vlist strong{font-size:1rem;color:#0a3629}
.c-vlist em{font-style:normal;font-weight:600;color:#0a3629}
.c-vlist .c-fmt-note{color:#7a7773;font-size:.9rem}
/* Bordered tables */
.c-gsec .c-table{border:1px solid #d9d3c5;border-radius:0;background:#fff;font-size:.93rem}
.c-gsec .c-table thead th{padding:12px 16px;background:#f3ecdc;border:1px solid #d9d3c5;font-size:.74rem;letter-spacing:.06em;color:#0a3629}
.c-gsec .c-table tbody th,.c-gsec .c-table tbody td{padding:12px 16px;border:1px solid #e5e0d6}
.c-gsec .c-table tbody th{width:24%;color:#0a3629;background:#fff}
.c-olist{margin:0;padding:0;list-style:none;counter-reset:st;border-top:1px solid #e5e0d6}
.c-olist li{counter-increment:st;display:flex;gap:14px;align-items:baseline;padding:12px 0;border-bottom:1px solid #e5e0d6;font-size:.98rem;line-height:1.6;color:#3f3d3a}
.c-olist li::before{content:counter(st) ".";flex:none;width:1.4em;font-weight:700;color:#0a3629}
.c-bullets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 32px;margin:0;padding:0 0 0 1.1em;list-style:disc;font-size:.96rem;line-height:1.55;color:#3f3d3a}
.c-bullets li::marker{color:#ff7d20}
.c-bullets strong{color:#0a3629}
.c-bullets span{color:#7a7773}
.c-guide-side{position:sticky;top:96px;display:grid;gap:18px}
.c-side-box{padding:18px 20px;border:1px solid #e5e0d6;border-radius:6px;background:#fcfaf4}
.c-side-box h3{margin:0 0 10px;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#0a3629}
.c-side-links{margin:0;padding:0;list-style:none}
.c-side-links li{padding:7px 0;border-top:1px solid #ece7dc;font-size:.94rem}
.c-side-links li:first-child{border-top:0}
.c-side-links a{color:#145f48;text-decoration:none}
.c-side-links a:hover{color:#ff7d20}
.c-side-specs{margin:0}
.c-side-specs>div{padding:8px 0;border-top:1px solid #ece7dc}
.c-side-specs>div:first-child{border-top:0}
.c-side-specs dt{font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#7a7773}
.c-side-specs dd{margin:1px 0 0;font-size:.94rem;color:#2a2826}
@media(max-width:900px){
.c-guide{padding:36px 20px 8px}
.c-guide-grid{grid-template-columns:1fr;gap:12px}
.c-guide-side{position:static}
.c-cream{padding-bottom:36px}
.c-bullets{grid-template-columns:1fr}
.c-gsec .c-table{border:0}
.c-gsec .c-table thead th{border:0}
.c-gsec .c-table tbody tr{border:1px solid #d9d3c5;border-radius:0}
.c-gsec .c-table tbody th{background:#f3ecdc;border:0}
.c-gsec .c-table tbody td{border:0}
}
@media(max-width:560px){.c-guide{padding:28px 16px 8px}}

.c-table-note{margin:12px 0 0;font-size:.9rem;line-height:1.6;color:#555250}

/* ===== Collection page v3.1: spacing rhythm, scroll offset, light format cards ===== */
.c-guide{padding-bottom:0}
.c-gsec{padding:0;margin-top:52px;scroll-margin-top:120px}
.c-gsec.c-key{margin-top:0;margin-bottom:0;scroll-margin-top:120px}
.c-gsec h2{margin:0 0 22px}
.c-gsec h2:has(+.c-sec-sub){margin-bottom:9px}
.c-gsec .c-sec-sub{margin:0 0 22px}
.c-gsec .c-table-wrap{margin-top:0}
.c-table-note{margin:14px 0 0}
.c-guide-main>.c-gsec:last-child{margin-bottom:0}
.d-faq{margin-top:0;padding-top:44px}
.c-vlist.c-fmts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border-top:0}
.c-vlist.c-fmts li{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:22px 24px;border:1px solid #e5e0d6;border-radius:8px;background:#fcfaf4}
.c-vlist.c-fmts li strong{font-size:1.02rem}
.c-vlist.c-fmts li>span{font-size:.94rem;line-height:1.55}
.c-vlist.c-fmts .c-fmt-note{margin-top:auto;padding-top:10px;width:100%;border-top:1px solid #ece7dc;font-size:.9rem}
@media(max-width:900px){
.c-gsec{margin-top:44px;scroll-margin-top:90px}
.c-gsec.c-key{margin-top:0}
.d-faq{padding-top:32px}
}
@media(max-width:560px){.c-vlist.c-fmts{grid-template-columns:1fr}}

.d-trust{margin-top:16px;display:flex;gap:10px;flex-wrap:wrap;font-size:.72rem;color:#888}
.d-kit{margin-top:16px;background:#fafaf8;border-radius:12px;border:1px solid rgba(20,95,72,.1);padding:16px 18px}
.d-kit-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.d-kit-info{display:flex;align-items:center;gap:10px}
.d-kit-icon{width:36px;height:36px;background:#145f48;border-radius:8px;display:grid;place-items:center;flex-shrink:0}
.d-kit-title,.d-kit-text{margin:0}
.d-kit-title{font-size:.82rem;font-weight:700;color:#1a1a1a}
.d-kit-text{font-size:.68rem;color:#888}
a.d-kit-btn{display:inline-block;padding:10px 20px;background:#145f48;color:#fff!important;border-radius:8px;text-decoration:none!important;font-weight:700;font-size:.82rem;white-space:nowrap;flex-shrink:0}
a.d-kit-btn:hover{background:#0f4a38}

/* ---------- About page (/about-us/) ---------- */
.ap-hero{position:relative;display:grid;min-height:598px;place-items:center;overflow:hidden;background-color:var(--green);background-image:url("../img/about-hero/cross-pattern.svg");background-size:60px 60px;padding:82px 24px 76px;text-align:center;isolation:isolate}
.ap-hero::before{content:"";position:absolute;z-index:0;inset:0;background:linear-gradient(180deg,rgba(4,55,40,.04),rgba(4,55,40,.16));pointer-events:none}
.ap-hero-inner{position:relative;z-index:2;max-width:1060px;margin-inline:auto}
.ap-hero h1{margin:0;color:#fff;font-size:clamp(3.25rem,6vw,5.5rem);font-weight:800;letter-spacing:0;line-height:1.02}
.ap-hero-title-row{display:flex;align-items:center;justify-content:center;gap:18px;white-space:nowrap}
.ap-hero-title-mark{display:inline-block;width:82px;height:82px;flex:0 0 82px;filter:drop-shadow(0 6px 13px rgba(3,34,25,.28))}
.ap-hero-title-mark-one{transform:rotate(3deg)}
.ap-hero-title-mark-two{transform:rotate(-4deg)}
.ap-hero p{margin:28px auto 0;max-width:680px;color:rgba(255,255,255,.82);font-size:1.04rem;line-height:1.7}
.ap-hero .d-btn{min-height:52px;margin-top:30px;padding:14px 36px;font-size:.96rem;box-shadow:0 10px 28px rgba(5,35,26,.2)}
.ap-hero-art{position:absolute;z-index:1;display:block;pointer-events:none;user-select:none}
.ap-hero-art-packet{left:calc(50% - 470px);bottom:64px;width:94px;opacity:.16;transform:rotate(-10deg)}
.ap-hero-art-green{left:calc(50% - 462px);top:146px;width:86px;opacity:.14;transform:rotate(-4deg)}
.ap-hero-art-leaves{right:calc(50% - 472px);top:118px;width:82px;opacity:.14;transform:rotate(12deg)}
.ap-hero-art-truck{right:calc(50% - 470px);bottom:64px;width:116px;opacity:.16}
@media(max-width:900px){
.ap-hero{min-height:620px;padding:82px 20px 76px}
.ap-hero h1{font-size:clamp(2.7rem,6.7vw,4.4rem)}
.ap-hero-title-row{gap:12px}
.ap-hero-title-mark{width:66px;height:66px;flex-basis:66px}
.ap-hero-art-packet{left:5%;bottom:52px;width:82px}
.ap-hero-art-green{left:6%;top:100px;width:70px}
.ap-hero-art-leaves{right:5%;top:92px;width:68px}
.ap-hero-art-truck{right:5%;bottom:50px;width:102px}
}

.ap-stats-band{background:#0f4a38}
.ap-stats{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0}
.ap-stat{text-align:center;padding:0 12px;border-left:1px solid rgba(255,255,255,.12)}
.ap-stat:first-child{border-left:none}
.ap-stat strong{display:block;color:#f2c94c;font-size:1.6rem;font-weight:800}
.ap-stat span{display:block;margin-top:4px;color:rgba(255,255,255,.7);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}

.ap-section{padding:64px 0}
.ap-head{text-align:center;max-width:640px;margin:0 auto 36px}
.ap-head h2{margin:6px 0 0;font-size:clamp(1.5rem,2.6vw,2.1rem);color:var(--green-dark)}
.ap-head-sub{margin:14px 0 0;color:#626b68;font-size:1rem;line-height:1.65}
.ap-eyebrow-light{color:#8fd6bd!important}

.ap-steps-section{background:var(--cream)}
.ap-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;position:relative}
.ap-steps::before{content:"";position:absolute;top:24px;left:16%;right:16%;height:1px;background:rgba(20,95,72,.18);z-index:0}
.ap-step{position:relative;z-index:1;background:#fff;border-radius:var(--radius);box-shadow:0 10px 28px rgba(10,54,41,.07);padding:28px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;min-height:100%}
.ap-step-num{width:52px;height:52px;border-radius:50%;background:var(--green);color:#f2c94c;font-size:1.4rem;font-weight:800;display:grid;place-items:center;margin-bottom:14px}
.ap-step-label{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#fff;background:var(--green);padding:5px 14px;border-radius:999px;margin-bottom:14px}
.ap-step:nth-child(3) .ap-step-label{background:var(--orange)}
.ap-step h3{margin:0;font-size:1.08rem;color:#1a1a1a;min-height:2.7em;display:flex;align-items:center;justify-content:center}
.ap-step p{margin:10px 0 0;color:#626b68;font-size:.92rem;line-height:1.6}
.ap-step-badge{margin-top:auto;display:inline-flex;align-items:center;padding:7px 14px;border-radius:999px;background:#fff5e6;color:var(--orange);font-size:.78rem;font-weight:700}

.ap-why{background:#fff}
.ap-why-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:56px;align-items:start}
.ap-why-left{text-align:left;position:sticky;top:100px}
.ap-why-left .eyebrow{margin-bottom:10px}
.ap-why-left h2{margin:0;font-size:clamp(1.7rem,3vw,2.5rem);line-height:1.15;color:#1a1a1a}
.ap-why-left .ap-head-sub{margin:16px 0 0;text-align:left}
.ap-why-list{display:flex;flex-direction:column}
.ap-why-item{display:flex;gap:18px;padding:22px 0;border-bottom:1px solid var(--line)}
.ap-why-item:first-child{padding-top:0}
.ap-why-num{flex:none;color:#c7cdca;font-weight:800;font-size:.85rem;padding-top:2px}
.ap-why-item strong{display:block;color:#1a1a1a;font-size:1.02rem}
.ap-why-item p{margin:6px 0 0;color:#626b68;font-size:.92rem;line-height:1.6}

.hp-difference{position:relative;overflow:hidden;background:#fafafa;padding:100px 0;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#2a2826;line-height:1.6}
.hp-difference .ap-why-grid{max-width:1200px;grid-template-columns:380px minmax(0,756px);gap:64px;align-items:start}
.hp-difference .ap-why-left{position:sticky;top:100px;padding-top:20px}
.hp-difference .ap-why-left .eyebrow{margin:0 0 12px;color:#145f48;font-size:.75rem;line-height:1.2;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.hp-difference .ap-why-left h2{margin:0 0 16px;font-family:var(--font-heading);font-size:clamp(2.2rem,4vw,3.2rem);line-height:var(--line-height-heading);font-weight:var(--font-weight-heading);color:#0a3629;letter-spacing:var(--letter-spacing-heading)}
.hp-difference-accent{color:#ff7d20}
.hp-difference .ap-why-left .ap-head-sub{max-width:360px;margin:0 0 28px;color:#888;font-size:.95rem;line-height:1.7;text-align:left}
.hp-difference .d-btn{display:inline-flex;width:auto;min-width:208px;height:auto;min-height:52px;align-items:center;gap:8px;padding:14px 32px;border-radius:8px;background:#ff7d20;color:#fff!important;font-size:.95rem;font-weight:600;line-height:1.6;text-decoration:none;box-shadow:none}
.hp-difference .d-btn:hover{background:#e86d10}
.hp-difference .ap-why-list{display:flex;flex-direction:column}
.hp-difference .ap-why-item{display:flex;gap:20px;padding:28px 0;border-bottom:1px solid rgba(20,95,72,.1)}
.hp-difference .ap-why-item:first-child{padding-top:0}
.hp-difference .ap-why-item:last-child{border-bottom:0}
.hp-difference .ap-why-num{flex:0 0 28px;padding-top:2px;color:rgba(20,95,72,.2);font-family:var(--font-heading);font-size:1.3rem;font-weight:var(--font-weight-heading);line-height:1.6}
.hp-difference .ap-why-item strong{display:block;margin:0 0 4px;color:#1a1a1a;font-family:var(--font-heading);font-size:1rem;font-weight:var(--font-weight-nav);line-height:var(--line-height-heading);letter-spacing:var(--letter-spacing-heading)}
.hp-difference .ap-why-item p{margin:0;color:#999;font-size:.85rem;line-height:1.55}
.hp-difference .ap-why-item div{min-width:0}
.hp-difference::before,.hp-difference::after{content:"";position:absolute;pointer-events:none;user-select:none;background-repeat:no-repeat;background-size:contain;opacity:.08}
.hp-difference::before{right:50px;bottom:20px;width:60px;height:160px;background-image:url("../img/how-it-works/packet21.svg");transform:rotate(8deg)}
.hp-difference::after{left:40px;top:30px;width:50px;height:50px;background-image:url("../img/how-it-works/green-packet.svg");transform:rotate(-12deg)}

.ap-story{background:var(--green);color:#fff;text-align:center}
.ap-story .d-wrap{max-width:760px}
.ap-story h2{margin:6px 0 18px;color:#fff;font-size:clamp(1.5rem,2.6vw,2.1rem)}
.ap-story p{color:rgba(255,255,255,.85);line-height:1.75;margin:0 0 14px}

.ap-team{background:var(--cream)}
.ap-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ap-team-card{background:#fff;border-radius:var(--radius);padding:26px 20px;text-align:center;box-shadow:0 6px 18px rgba(10,54,41,.05)}
.ap-team-avatar{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border-radius:50%;border:1px solid var(--green);color:var(--green)}
.ap-team-card strong{display:block;color:#1a1a1a;font-size:1rem}
.ap-team-card p{margin:8px 0 0;color:#626b68;font-size:.88rem;line-height:1.6}

.ap-materials{background:#fff}
.ap-mat-list{border-top:1px solid var(--line)}
.ap-mat-row{display:flex;justify-content:space-between;gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}
.ap-mat-name{flex:0 0 220px;font-weight:600;color:#1a1a1a}
.ap-mat-desc{color:#626b68;font-size:.92rem;line-height:1.6}
.ap-tags{display:flex;flex-wrap:wrap;gap:16px 22px;margin-top:22px}
.ap-tag{display:inline-flex;align-items:center;gap:6px;color:var(--green);font-size:.88rem;font-weight:600}
.ap-mat-note{margin:20px 0 0;color:#777;font-size:.86rem;line-height:1.6;max-width:760px}

.ap-categories{background:#fff}
.ap-cat-list{border-top:1px solid var(--line)}
.ap-cat-row{display:flex;align-items:center;gap:18px;padding:16px 4px;border-bottom:1px solid var(--line);text-decoration:none!important;color:inherit}
.ap-cat-name{flex:0 0 200px;font-weight:600;color:var(--green)}
.ap-cat-desc{flex:1;color:#626b68;font-size:.9rem}
.ap-cat-arrow{color:#9aa39f;font-size:1.1rem}
.ap-cat-row:hover .ap-cat-name{text-decoration:underline}

.ap-delivery{background:var(--cream)}
.ap-delivery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ap-delivery-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;text-align:center}
.ap-delivery-card strong{display:block;color:var(--green-dark);font-size:1.05rem;margin-bottom:8px}
.ap-delivery-card span{color:#626b68;font-size:.9rem}
.ap-delivery-note{text-align:center;color:#8a8a8a;font-size:.86rem;margin:22px 0 0}

.ap-final{background:#fff}
.ap-final-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:920px;margin:0 auto}
.ap-final-card{border-radius:var(--radius);padding:30px}
.ap-final-card-primary{background:var(--green);color:#fff}
.ap-final-card-outline{background:#fafaf8;border:1px solid var(--line)}
.ap-final-card h3{margin:0;font-size:1.15rem}
.ap-final-card-primary h3{color:#fff}
.ap-final-card-outline h3{color:#1a1a1a}
.ap-final-sub{margin:4px 0 0;font-size:.82rem;opacity:.8}
.ap-final-card p{margin:14px 0 0;font-size:.92rem;line-height:1.6}
.ap-final-card-primary p{color:rgba(255,255,255,.88)}
.ap-final-card-outline p{color:#626b68}
.ap-checklist{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}
.ap-checklist li{font-size:.86rem;padding-left:22px;position:relative}
.ap-checklist li::before{content:"\2713";position:absolute;left:0;top:0}
.ap-final-card-primary .ap-checklist li{color:rgba(255,255,255,.9)}
.ap-final-card-outline .ap-checklist li{color:#4a4a4a}
.ap-final-card .d-btn{margin-top:22px;width:100%}

.ap-different{background:var(--cream)}
.ap-different-inner{max-width:760px}
.ap-different h2{margin:0 0 18px;color:var(--green-dark)}
.ap-different p{color:#626b68;line-height:1.75;margin:0 0 14px}

@media(max-width:900px){
.ap-stats{grid-template-columns:repeat(2,1fr);row-gap:18px}
.ap-stat:nth-child(3){border-left:none}
.ap-steps,.ap-why-grid,.ap-team-grid,.ap-delivery-grid{grid-template-columns:1fr}
.ap-steps::before{display:none}
.ap-why-left{position:static;text-align:center}
.ap-why-left .ap-head-sub{text-align:center}
.ap-why-item{text-align:left}
.hp-difference{padding:72px 0}
.hp-difference .ap-why-grid{grid-template-columns:1fr;gap:44px}
.hp-difference .ap-why-left{position:static;text-align:left}
.hp-difference .ap-why-left .ap-head-sub{text-align:left}
.hp-difference::before,.hp-difference::after{display:none}
.ap-mat-row{flex-direction:column;gap:4px}
.ap-mat-name{flex:none}
.ap-cat-row{flex-wrap:wrap}
.ap-cat-name{flex:none}
.ap-final-cards{grid-template-columns:1fr}
}
@media(max-width:560px){
.ap-hero{min-height:650px;padding:70px 16px 58px}
.ap-hero h1{font-size:clamp(2.25rem,9.45vw,2.45rem);line-height:1.06}
.ap-hero-title-row{display:grid;grid-template-columns:58px max-content;justify-content:center;gap:4px 10px;white-space:normal}
.ap-hero-title-row:first-child span:first-child{grid-column:1/-1}
.ap-hero-title-row:first-child .ap-hero-title-mark{grid-column:1;grid-row:2;justify-self:end}
.ap-hero-title-row:first-child span:last-child{grid-column:2;grid-row:2;justify-self:start}
.ap-hero-title-row:last-child{grid-template-columns:58px max-content;margin-top:2px}
.ap-hero-title-row:last-child span:first-child{grid-column:1/-1;grid-row:1}
.ap-hero-title-row:last-child .ap-hero-title-mark{grid-column:1;grid-row:2;justify-self:end}
.ap-hero-title-row:last-child span:last-child{grid-column:2;grid-row:2;justify-self:start;text-align:left}
.ap-hero-title-mark{width:58px;height:58px;flex-basis:58px}
.ap-hero p{margin-top:26px;font-size:.96rem;line-height:1.62}
.ap-hero .d-btn{margin-top:28px;min-width:184px}
.ap-hero-art-packet{left:7%;bottom:72px;width:68px;opacity:.13}
.ap-hero-art-green{left:4%;top:126px;width:58px;opacity:.12}
.ap-hero-art-leaves{right:3%;top:146px;width:58px;opacity:.12}
.ap-hero-art-truck{right:4%;bottom:78px;width:88px;opacity:.14}
.ap-section{padding:44px 0}
}

/* ---------- About page layout pass (scoped to .ap-page; hero rules live above) ----------
   Narrower per-section measures, taller section rhythm and alternating warm/mist/white/green
   backgrounds, following the reference About page's pacing with PackZeno's own palette. */
.ap-page{--ap-warm:#fdf8ec;--ap-mist:#f6f7f4;--ap-ink:#1a1a1a;--ap-body:#5f6866}
.ap-page .ap-section{padding:96px 0}
.ap-page .ap-head{max-width:720px;margin-bottom:48px}
.ap-page .ap-section h2{font-size:clamp(2rem,3.3vw,2.8rem);line-height:1.12;letter-spacing:-.015em}
.ap-page .ap-head-sub{color:var(--ap-body);font-size:1.02rem}
.ap-page .ap-head-left{text-align:left;margin-left:0}

/* Key Takeaway summary card */
.ap-page .ap-takeaway{background:var(--ap-warm);padding:30px 0}
.ap-page .ap-takeaway-card{max-width:760px;margin:0 auto;background:#fff;border:1px solid #e8eaed;border-radius:16px;padding:24px 28px;box-shadow:0 2px 12px rgba(10,54,41,.06)}
.ap-page .ap-takeaway-label{margin:0 0 12px;color:#7a8089;font-size:.74rem;font-weight:600;line-height:normal;letter-spacing:.1em;text-transform:uppercase}
.ap-page .ap-takeaway-lead{margin:0;color:#15171a;font-size:1.22rem;font-weight:400;line-height:1.6;letter-spacing:0}
.ap-page .ap-takeaway-more{margin:14px 0 0;color:#4a5057;font-size:.92rem;font-weight:400;line-height:1.55}

/* Stats band */
.ap-page .ap-stats{padding:0;max-width:1320px}
.ap-page .ap-stat{padding:32px 16px;border-left:0;border-right:1px solid rgba(255,255,255,.06)}
.ap-page .ap-stat:last-child{border-right:0}
.ap-page .ap-stat strong{color:#f7c914;font-family:var(--font-heading);font-size:2.8rem;font-weight:800;line-height:1;letter-spacing:0}
.ap-page .ap-stat span{margin-top:6px;color:rgba(255,255,255,.45);font-size:.78rem;font-weight:400;line-height:normal;letter-spacing:.1em}
@media(min-width:901px){.ap-page .ap-stat:first-child strong{font-size:2.55rem}}

/* Three steps */
.ap-page .ap-steps-section{background:var(--ap-warm)}
.ap-page .ap-steps-section .d-wrap{max-width:1100px}
.ap-page .ap-steps{gap:32px;align-items:stretch}
.ap-page .ap-step{padding:48px 30px 42px;border:1px solid rgba(20,95,72,.08);border-radius:20px}
.ap-page .ap-step-num{width:76px;height:76px;font-size:1.9rem;margin-bottom:18px;box-shadow:0 10px 24px rgba(20,95,72,.18)}
.ap-page .ap-steps::before{top:64px;left:15%;right:15%;height:3px;background:linear-gradient(90deg,rgba(20,95,72,.24),rgba(242,201,76,.38),rgba(239,124,48,.28));border-radius:2px}
.ap-page .ap-step-label{margin-bottom:18px}
.ap-page .ap-step h3{font-size:1.2rem;line-height:1.35}
.ap-page .ap-step p{line-height:1.65;margin-top:14px}
.ap-page .ap-step-badge{position:relative;top:18px}

/* Why PackZeno: left column vertically centred against the list */
.ap-page .ap-why{background:var(--ap-mist)}
.ap-page .ap-why-grid{max-width:1100px;grid-template-columns:400px minmax(0,1fr);gap:64px;align-items:start}
.ap-page .ap-why-left{position:static}
.ap-page .ap-why-left .eyebrow{margin:2px 0 14px}
.ap-page .ap-why-left h2{font-size:clamp(2.8rem,4.2vw,3.8rem);line-height:1.03}
.ap-page .ap-why-left h2 span{display:block;white-space:nowrap}
.ap-page .ap-why-title-accent{color:var(--orange)}
.ap-page .ap-why-left .ap-head-sub{margin:18px 0 28px;max-width:360px;font-size:.95rem;line-height:1.7}
.ap-page .ap-why-left .d-btn{min-width:208px;min-height:52px;padding:15px 32px;font-size:.95rem}
.ap-page .ap-why-item{padding:24px 0;border-bottom-color:rgba(20,95,72,.1)}
.ap-page .ap-why-item:last-child{border-bottom:0;padding-bottom:0}
.ap-page .ap-why-num{flex:0 0 30px;color:rgba(20,95,72,.28);font-size:1.15rem;line-height:1.4;padding-top:0}
.ap-page .ap-why-item strong{font-size:1.05rem}
.ap-page .ap-why-item p{color:var(--ap-body)}

/* Who We Are */
.ap-page .ap-story{background:#0f4a38;text-align:left;padding:80px 0}
.ap-page .ap-story .d-wrap{max-width:800px}
.ap-page .ap-story .eyebrow{margin:0 0 10px;color:rgba(242,201,76,.7)!important;font-size:.72rem;font-weight:500;line-height:1.3;letter-spacing:.15em}
.ap-page .ap-story h2{margin:0 0 24px;color:#fff;font-size:clamp(2rem,4vw,3rem);font-weight:800;line-height:1.15;letter-spacing:0}
.ap-page .ap-story p{margin:0 0 16px;color:rgba(255,255,255,.65);font-size:1.05rem;font-weight:400;line-height:1.8;letter-spacing:0}
.ap-page .ap-story p:last-child{margin-bottom:0}

/* Order support (formerly team): numbered stage cards, no people imagery */
.ap-page .ap-team{background:var(--ap-warm)}
.ap-page .ap-team .d-wrap{max-width:1100px}
.ap-page .ap-team-grid{gap:24px}
.ap-page .ap-team-card{text-align:left;padding:32px 30px 34px;border:1px solid rgba(20,95,72,.1);border-radius:18px;box-shadow:none;position:relative}
.ap-page .ap-team-card::before{content:"";position:absolute;left:30px;right:30px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--green)}
.ap-page .ap-team-card:nth-child(3)::before{background:var(--orange)}
.ap-page .ap-team-stage{display:block;margin:0 0 18px;color:rgba(20,95,72,.3);font-size:1.6rem;font-weight:800;line-height:1}
.ap-page .ap-team-card strong{font-size:1.1rem;line-height:1.35}
.ap-page .ap-team-card p{margin-top:10px;color:var(--ap-body);font-size:.93rem;line-height:1.65}

/* Materials: four ruled rows (name | description) and one row of option tags, measured against the reference page */
.ap-page .ap-materials{background:var(--ap-mist);padding:80px 0}
.ap-page .ap-materials .d-wrap{max-width:960px}
.ap-page .ap-materials .ap-head{text-align:left;max-width:none;margin:0 0 48px}
.ap-page .ap-mat-row{display:grid;grid-template-columns:200px minmax(0,1fr);gap:24px;align-items:baseline;padding:28px 0;border-bottom:1px solid rgba(20,95,72,.09)}
.ap-page .ap-mat-list{border-top:1px solid rgba(20,95,72,.09)}
.ap-page .ap-mat-name{font-size:1.1rem;line-height:1.3;font-weight:600;color:var(--green-dark)}
.ap-page .ap-mat-desc{font-size:.9rem;line-height:1.6;color:#7a817e}
.ap-page .ap-tags{margin-top:36px;gap:14px 32px}
.ap-page .ap-tag{font-size:.85rem;line-height:1.2}
.ap-page .ap-mat-note{margin-top:22px;max-width:none;color:var(--ap-body);font-size:.92rem}

/* Delivery: method label, headline, fit */
.ap-page .ap-delivery{background:#fff;padding:88px 0}
.ap-page .ap-delivery .d-wrap{max-width:960px}
.ap-page .ap-delivery-grid{gap:22px}
.ap-page .ap-delivery-card{display:flex;flex-direction:column;align-items:center;padding:32px 26px;border-color:rgba(20,95,72,.12);border-radius:18px}
.ap-page .ap-delivery-method{color:var(--green);font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.ap-page .ap-delivery-card:first-child .ap-delivery-method{color:var(--orange)}
.ap-page .ap-delivery-card strong{margin:10px 0 10px;font-size:1.3rem;line-height:1.25;color:var(--green-dark)}
.ap-page .ap-delivery-fit{color:var(--ap-body);font-size:.92rem;line-height:1.6}
.ap-page .ap-delivery-note{margin-top:26px;color:#7a817e;font-size:.88rem}

/* Packaging categories */
.ap-page .ap-categories{background:var(--ap-mist);padding:88px 0}
.ap-page .ap-categories .d-wrap{max-width:960px}
.ap-page .ap-categories .ap-head{text-align:left;margin:0 0 36px}
.ap-page .ap-cat-list{border-top-color:rgba(20,95,72,.14)}
.ap-page .ap-cat-row{padding:20px 4px;border-bottom-color:rgba(20,95,72,.1)}
.ap-page .ap-cat-name{flex-basis:220px;font-size:1.05rem}

/* Final CTA cards + contact line */
.ap-page .ap-final .d-wrap{max-width:1040px}
.ap-page .ap-final-cards{max-width:none;gap:24px}
.ap-page .ap-final-card{padding:36px 34px;border-radius:20px}
.ap-page .ap-final-card h3{font-size:1.3rem}
.ap-page .ap-final-sub{font-size:.86rem}
.ap-page .ap-final-card p{font-size:.95rem}
.ap-page .ap-checklist{gap:10px}
.ap-page .ap-checklist li{font-size:.9rem}
.ap-page .ap-contact-line{margin:26px 0 0;text-align:center;color:var(--ap-body);font-size:.95rem}
.ap-page .ap-contact-line a{color:var(--green);font-weight:700}

/* What makes PackZeno different */
.ap-page .ap-different{background:var(--ap-mist);padding:88px 0}
.ap-page .ap-different-inner{max-width:900px}
.ap-page .ap-different h2{margin-bottom:24px}
.ap-page .ap-different p{font-size:1.02rem;line-height:1.8;margin-bottom:18px}
.ap-page .ap-different p:last-child{margin-bottom:0}

@media(max-width:900px){
.ap-page .ap-section,.ap-page .ap-story,.ap-page .ap-materials,.ap-page .ap-delivery,.ap-page .ap-categories,.ap-page .ap-different{padding:72px 0}
.ap-page .ap-why-grid{grid-template-columns:1fr;gap:40px}
.ap-page .ap-why-left{max-width:600px}
.ap-page .ap-mat-row{grid-template-columns:1fr;gap:6px}
.ap-page .ap-stats{row-gap:0}
.ap-page .ap-stat:nth-child(2n){border-right:0}
.ap-page .ap-stat:nth-child(3){border-right:1px solid rgba(255,255,255,.06)}
.ap-page .ap-stat:nth-child(n+3){border-top:1px solid rgba(255,255,255,.06)}
.ap-page .ap-step{padding:36px 24px 30px}
.ap-page .ap-cat-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 14px;align-items:center}
.ap-page .ap-cat-name{grid-column:1;grid-row:1}
.ap-page .ap-cat-desc{grid-column:1;grid-row:2}
.ap-page .ap-cat-arrow{grid-column:2;grid-row:1/span 2}
}
@media(max-width:560px){
.ap-page .ap-hero h1{font-size:clamp(2.25rem,9.45vw,2.45rem)}
.ap-page .ap-section,.ap-page .ap-story,.ap-page .ap-materials,.ap-page .ap-delivery,.ap-page .ap-categories,.ap-page .ap-different{padding:56px 0}
.ap-page .ap-head{margin-bottom:32px}
.ap-page .ap-section h2{font-size:clamp(1.7rem,7.4vw,2.1rem)}
.ap-page .ap-why-left h2{font-size:clamp(2.35rem,11vw,3rem)}
.ap-page .ap-why-left h2 span{white-space:normal}
.ap-page .ap-story{padding:64px 0}
.ap-page .ap-story h2{font-size:2.25rem;margin-bottom:20px}
.ap-page .ap-story p{font-size:1rem;line-height:1.75}
.ap-page .ap-takeaway{padding:30px 0}
.ap-page .ap-takeaway-card{padding:24px 28px;border-radius:16px}
.ap-page .ap-takeaway-lead{font-size:1.22rem;line-height:1.6}
.ap-page .ap-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.ap-page .ap-stat strong{font-size:clamp(1.55rem,7vw,1.72rem)}
.ap-page .ap-step-num{width:60px;height:60px;font-size:1.5rem}
.ap-page .ap-team-card{padding:26px 22px 28px}
.ap-page .ap-team-card::before{left:22px;right:22px}
.ap-page .ap-delivery-card{padding:26px 20px}
.ap-page .ap-cat-row{padding:16px 2px}
.ap-page .ap-mat-row{padding:20px 0}
.ap-page .ap-materials .ap-head{margin-bottom:32px}
.ap-page .ap-tags{margin-top:28px;gap:12px 22px}
.ap-page .ap-final-card{padding:28px 22px}
}

/* ---------- Contact page (/contact/) ---------- */
.cp-main{background:#f9f9f9;padding-top:48px}
.cp-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;max-width:1240px}

.cp-info{display:grid;gap:18px}
.cp-trust{display:inline-flex;align-items:center;gap:8px;color:var(--green);font-size:.82rem;font-weight:600}
.cp-trust-icon{display:grid;place-items:center;color:var(--green)}
.cp-info h1{margin:0;max-width:480px;color:var(--green);font-size:clamp(1.7rem,2.4vw,2.31rem);font-weight:700;line-height:1.32}
.cp-h1-br{display:block}
.cp-info-desc{margin:0;max-width:480px;color:#4a5057;font-size:.98rem;line-height:1.65}

.cp-card,.cp-faq-mini{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:22px}
.cp-card h3,.cp-card h2{margin:0 0 14px;font-size:1rem;color:var(--green-dark)}
.cp-card-row{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-top:1px solid var(--line)}
.cp-card-row:first-of-type{border-top:none;padding-top:0}
.cp-card-icon{flex:none;width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#e5f5ec;color:var(--green)}
.cp-card-text{display:flex;flex-direction:column;gap:2px}
.cp-card-text strong{font-size:.88rem;color:#1a1a1a}
.cp-card-text span,.cp-card-text a{font-size:.86rem;color:#626b68}
.cp-card-row a{color:var(--green);font-weight:600;text-decoration:none}
.cp-card p{margin:0;color:#626b68;font-size:.9rem;line-height:1.65}

/* Left FAQ card: reference-style box (white, thin gray border, small radius), accordion inside - the
   only FAQ block on this page, so it can never appear a second time further down. */
.cp-faq-mini{background:#fff;border:1px solid #acacac;border-radius:6px;padding:40px}
.cp-faq-mini h3,.cp-faq-mini h2{margin:0 0 18px;font-size:1.2rem;font-weight:700;color:#1a1a1a;text-align:left}
.cp-faq-accordion{display:grid}
.cp-faq-item{border-top:1px solid var(--line);padding:14px 0}
.cp-faq-item:first-child{border-top:none;padding-top:0}
.cp-faq-item summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;font-weight:600;font-size:.92rem;color:#1a1a1a}
.cp-faq-item summary::-webkit-details-marker{display:none}
.cp-faq-item summary::after{content:"+";flex:none;color:#8a8a8a;font-weight:400;font-size:1.1rem}
.cp-faq-item[open] summary::after{content:"\2212"}
.cp-faq-item:hover summary{color:var(--green)}
.cp-faq-a{margin-top:10px}
.cp-faq-a p{margin:0;color:#626b68;font-size:.88rem;line-height:1.6}

.cp-form-card{background:#fff;border:1px solid var(--line);border-radius:7px;box-shadow:0 12px 30px rgba(10,54,41,.06);padding:48px 40px;position:sticky;top:96px}
.cp-form-card h2{margin:0;font-size:1.05rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:#1a1a1a}
.cp-form-sub{margin:10px 0 4px;color:#626b68;font-size:.92rem;line-height:1.6}
.cp-form{margin-top:4px}
.cp-form-group-title{display:flex;align-items:center;gap:12px;text-align:center;color:var(--green);font-size:.74rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;margin:26px 0 16px}
.cp-form-group-title:first-of-type{margin-top:22px}
.cp-form-group-title::before,.cp-form-group-title::after{content:"";flex:1;height:1px;background:var(--line)}
.cp-form-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.cp-form label{display:block;margin-bottom:14px}
.cp-form label em{color:var(--orange);font-style:normal}
.cp-lab{display:inline-block;margin-bottom:6px;font-size:.84rem;color:#3a3f3d}
.cp-form select{width:100%;border:1px solid #dde5e2;border-radius:10px;background:#fff;padding:11px 12px;color:#15171a;font-weight:400}
.cp-consent{display:flex!important;flex-direction:row!important;align-items:flex-start;gap:10px;margin-top:6px}
.cp-consent input{width:16px;height:16px;margin-top:3px;flex:none}
.cp-consent span{color:#8a8a8a;font-size:.78rem;line-height:1.6}
.cp-consent a{color:var(--green);text-decoration:underline}
.cp-form-actions{display:flex;gap:12px;margin-top:18px}
.cp-form-actions .button{margin-top:0}
.button.ghost{background:#fff;color:var(--green-dark);border:1px solid var(--line)}
.button.ghost:hover{border-color:var(--green)}

.cp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:48px}
.cp-step{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.cp-step-num{display:block;color:#d8dcda;font-weight:800;font-size:1.6rem;margin-bottom:10px}
.cp-step strong{display:block;color:#1a1a1a;font-size:1.02rem}
.cp-step p{margin:8px 0 0;color:#626b68;font-size:.9rem;line-height:1.6}

.cp-work{background:#fff}
.cp-work-inner{max-width:760px}
.cp-work h2{margin:0 0 18px;color:var(--green-dark)}
.cp-work p{color:#626b68;line-height:1.75;margin:0 0 14px}

/* Custom Boxes landing page: "Browse Related Products" - a short list of real links, not a card grid. */
.cp-related-links{display:flex;flex-wrap:wrap;gap:10px}
.cp-related-link{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border:1px solid var(--line);border-radius:999px;color:var(--green-dark);font-weight:600;font-size:.92rem;text-decoration:none;background:#fff}
.cp-related-link:hover{background:var(--green);color:#fff;border-color:var(--green)}

/* Custom Boxes page (/custom-boxes/) ONLY - scoped under .cb-page so nothing here touches the shared
   .d-hero/.c-guide-grid/.section components used by product/collection pages (background, heading/body
   type scale, section rhythm, sidebar card). */
.cb-page{background:#fffaeb}
.cb-page .d-hero{background:transparent}
.cb-page .quote-panel.d-quote h1{font-weight:400;font-size:2.6rem;line-height:1.1;color:var(--green-dark)}
.cb-page .section{padding:64px 0}
.cb-page .soft-section{background:transparent}
.cb-page .cp-work-inner{max-width:916px}
.cb-page .cp-work-inner h2,.cb-page .c-guide-main h2{font-weight:400;font-size:1.8rem;line-height:1.2;color:var(--green-dark);margin:0 0 16px}
.cb-page .cp-work-inner p{font-size:1.12rem;line-height:1.6;color:var(--text)}
.cb-page .c-guide{background:transparent}
.cb-page .c-key-title{font-weight:400;font-size:1.8rem;color:var(--green-dark)}
.cb-page .c-key p{font-size:1.12rem;line-height:1.6;color:var(--text)}
.cb-page .c-side-box{border-radius:16px;padding:24px}
.cb-page .d-specbar{background:transparent;margin-top:8px}
.cb-page .faq-list,.cb-page .d-faq{background:transparent}

@media(max-width:900px){
.cp-grid{grid-template-columns:1fr;gap:32px}
.cp-form-card{position:static}
.cp-steps{grid-template-columns:1fr}
.cp-info h1,.cp-info-desc{max-width:none}
.cp-h1-br{display:none}
}
@media(max-width:560px){
.cp-form-two{grid-template-columns:1fr}
.cp-form-card{padding:28px 20px}
.cp-faq-mini{padding:24px}
.cp-form-actions{flex-direction:column}
}

/* ---------- Homepage (/) ---------- */
.hp-hero{position:relative;overflow:hidden;background:#fffaeb;padding:60px 0 0}
.hp-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.95fr) minmax(420px,.9fr);gap:48px;align-items:center;padding-bottom:80px}
.hp-hero-deco{position:absolute;z-index:0;color:rgba(20,95,72,.08);pointer-events:none}
.hp-hero-deco-1{top:10%;left:2%}
.hp-hero-deco-2{bottom:6%;left:4%}
.hp-hero-deco-3{top:8%;right:3%}
.hp-hero-deco-4{bottom:4%;right:6%}
@media(max-width:700px){.hp-hero-deco{display:none}}
.hp-eyebrow-pill{display:inline-flex;padding:6px 14px;border-radius:999px;background:rgba(20,95,72,.06);color:var(--green);font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:18px}
.hp-hero-copy h1{margin:0;font-size:clamp(2.3rem,4.6vw,3.9rem);line-height:1.06;font-weight:800;color:var(--green-dark)}
.hp-hero-title{display:block!important;width:max-content;max-width:100%}
.hp-hero-line{display:block!important;width:fit-content;white-space:nowrap}
.hp-hero-title .hp-hero-line{display:block!important;white-space:nowrap!important}
.hp-hero-copy h1 em{color:var(--orange);font-style:normal}
.hp-hero-copy p{margin:18px 0 0;max-width:460px;color:#7a7773;font-size:1.05rem;line-height:1.7}
.hp-hero-copy .hp-hero-btn{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 22px;margin-top:26px;border-radius:8px;background:var(--green);color:#fff!important;font-size:.87rem;font-weight:700;text-decoration:none!important}
.hp-hero-copy .hp-hero-btn:hover{background:var(--green-dark)}
.hp-hero-media{position:relative;z-index:1}
.hp-hero-img{width:100%;aspect-ratio:1.79/1;object-fit:cover;border-radius:20px;background:#e9e6dd;box-shadow:0 20px 60px rgba(20,95,72,.12)}
.hp-hero-img-placeholder{display:flex;align-items:center;justify-content:center;color:rgba(20,95,72,.3)}
.hp-hero-badge{position:absolute;display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:999px;background:#fff;box-shadow:0 4px 20px rgba(0,0,0,.08);font-size:.82rem;font-weight:600;color:#1a1a1a}
.hp-hero-badge i{width:8px;height:8px;border-radius:50%;background:var(--orange)}
.hp-hero-badge-1{top:-6%;right:4%}
.hp-hero-badge-2{top:38%;left:-8%}
.hp-hero-badge-3{bottom:-6%;right:8%}
.hp-stats-band{background:var(--green-dark)}
.hp-stats{display:grid;grid-template-columns:repeat(4,1fr);padding:30px 0}
.hp-stat{text-align:center;padding:0 12px;border-left:1px solid rgba(255,255,255,.12)}
.hp-stat:first-child{border-left:none}
.hp-stat strong{display:block;color:#fff5cb;font-size:1.5rem;font-weight:800}
.hp-stat span{display:block;margin-top:4px;color:#7abfa0;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}
.hp-ticker{overflow:hidden;background:#fff;border-bottom:1px solid var(--line);padding:14px 0}
.hp-ticker-track{display:flex;gap:36px;white-space:nowrap;width:max-content;animation:hp-ticker-scroll 32s linear infinite}
.hp-ticker-track span{font-size:.82rem;color:#8a8a8a;position:relative;padding-left:16px}
.hp-ticker-track span::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:4px;height:4px;border-radius:50%;background:#c7cdca}
@keyframes hp-ticker-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.hp-section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px;flex-wrap:wrap}
.hp-section-head h2{margin:6px 0 0;font-size:clamp(1.5rem,2.6vw,2.1rem);color:var(--green-dark)}
.hp-head-sub{margin:12px 0 0;max-width:560px;color:#626b68}
.hp-text-link{color:var(--green);font-weight:700;text-decoration:none;white-space:nowrap}
.hp-text-link:hover{text-decoration:underline}

.hp-industry-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.hp-industry-card{padding:0!important;display:flex;flex-direction:column;text-decoration:none!important;color:inherit}
.hp-industry-img{display:block;aspect-ratio:1.2/1;overflow:hidden;border-radius:15px 15px 0 0}
.hp-industry-img img{width:100%;height:100%;object-fit:cover;display:block}
.hp-industry-body{padding:18px 20px 22px}
.hp-industry-body h3{margin:0;font-size:1rem;color:var(--green-dark)}
.hp-industry-body p{margin:8px 0 0;font-size:.86rem;color:#7a827e;line-height:1.5}

.hp-steps-section{background:var(--green-dark);padding:64px 0}
.hp-head-narrow{max-width:640px;margin-bottom:44px}
.hp-eyebrow-light{color:#f2c94c;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;display:block}
.hp-head-narrow h2{margin:0;color:#fff5cb;font-size:clamp(1.6rem,2.8vw,2.3rem)}
.hp-head-narrow p{margin:16px 0 0;color:#cfe3da}
.hp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.hp-step{padding:0 32px;border-left:1px solid rgba(255,255,255,.14)}
.hp-step:first-child{border-left:none;padding-left:0}
.hp-step-icon{display:block;width:56px;height:56px;margin-bottom:18px}
.hp-step-icon img{display:block;width:56px;height:56px;object-fit:contain}
.hp-step-num{display:block;color:rgba(255,245,203,.15);font-size:2.2rem;font-weight:800;margin-bottom:6px}
.hp-step strong{display:block;color:#fff5cb;font-size:1.1rem}
.hp-step p{margin:10px 0 0;color:#cfe3da;font-size:.9rem;line-height:1.65}

.hp-best .product-grid{margin-top:4px}

.hp-final{background:var(--green);padding:64px 0}
.hp-final-grid{display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:48px;align-items:start}
.hp-final-copy h2{margin:0;color:#fff5cb;font-size:clamp(1.6rem,2.8vw,2.2rem)}
.hp-final-copy p{margin:16px 0 0;color:#cfe3da;max-width:480px;line-height:1.7}
.hp-checklist{list-style:none;margin:26px 0 0;padding:0;display:grid;gap:12px}
.hp-checklist li{position:relative;padding-left:28px;color:#fff8dc;font-size:.94rem}
.hp-checklist li::before{content:"\2713";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:rgba(255,245,203,.12);color:#fff5cb;display:grid;place-items:center;font-size:.7rem}
.hp-final-form{background:#fff;border-radius:var(--radius);padding:28px;box-shadow:0 24px 60px rgba(10,54,41,.2)}
.hp-final-form h3{margin:0 0 16px;font-size:1.1rem;color:var(--green-dark)}
.hp-final-form .quote-form select{width:100%;border:1px solid #dde5e2;border-radius:10px;background:#fff;padding:11px 12px;color:#15171a}

@media(max-width:980px){
.hp-hero-inner{grid-template-columns:1fr;gap:32px}
.hp-hero-badge{display:none}
.hp-industry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.hp-steps{grid-template-columns:1fr;gap:28px}
.hp-step{border-left:0;padding-left:0;border-top:1px solid rgba(255,255,255,.14);padding-top:28px}
.hp-step:first-child{border-top:0;padding-top:0}
.hp-final-grid{grid-template-columns:1fr}
}
@media(max-width:680px){
.hp-hero-copy h1{font-size:clamp(2.05rem,9vw,2.8rem)}
.hp-industry-grid{grid-template-columns:1fr}
.hp-stats{grid-template-columns:repeat(2,1fr);row-gap:18px}
.hp-stat:nth-child(3){border-left:none}
.hp-section-head{flex-direction:column;align-items:flex-start}
}

/* ---------- Blog ---------- */
.blog-hero{background:#fbfaf6;padding:78px 0 58px;text-align:center;border-bottom:1px solid rgba(20,95,72,.08)}
.blog-hero h1{margin:0;color:var(--green-dark);font-size:clamp(2.35rem,4.8vw,4.2rem);line-height:1.02}
.blog-hero p:not(.eyebrow){max-width:620px;margin:16px auto 0;color:#626b68;font-size:1.05rem;line-height:1.65}
.blog-hero--home{padding:72px 0 32px;text-align:left}
.blog-hero--home h1{font-size:clamp(2.4rem,4.8vw,4rem);line-height:1.05;margin:0 0 10px}
.blog-hero--home p:not(.eyebrow){margin:16px 0 0}
.blog-section{padding:72px 0 88px;background:#fff}
.blog-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;align-items:start}
.blog-main-wide{max-width:1180px}
.blog-filter{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}
.blog-filter a{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border:1px solid rgba(20,95,72,.14);border-radius:999px;color:#145f48;background:#fff;font-size:.84rem;font-weight:700;text-decoration:none}
.blog-filter a.is-active,.blog-filter a:hover{background:#145f48;color:#fff}
.blog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.blog-card{border:1px solid #e8eaed;border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 12px 30px rgba(10,54,41,.04);transition:border-color .2s,box-shadow .2s,transform .2s}
.blog-card:hover{border-color:rgba(20,95,72,.26);box-shadow:0 18px 42px rgba(10,54,41,.08);transform:translateY(-2px)}
.blog-card a{display:flex;min-height:100%;flex-direction:column;color:inherit;text-decoration:none}
.blog-card-image{display:block;aspect-ratio:1.45/.95;background:#f4f1eb;overflow:hidden}
.blog-card-image img{width:100%;height:100%;object-fit:cover}
.blog-card-body{display:flex;flex:1;flex-direction:column;padding:22px}
.blog-card-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px;color:#7a827e;font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.blog-card-meta em{color:#145f48;font-style:normal}
.blog-card-title{display:block;color:#0a3629;font-family:var(--font-heading);font-size:1.08rem;font-weight:700;line-height:1.28;letter-spacing:var(--letter-spacing-heading)}
.blog-card-excerpt{margin-top:10px;color:#626b68;font-size:.9rem;line-height:1.62}
.blog-card-link{margin-top:auto;padding-top:16px;color:#145f48;font-size:.88rem;font-weight:800}
.blog-card-noimage{background:#fbfaf6}
.blog-card-noimage .blog-card-body{padding-top:26px}
.blog-pagination,.navigation.pagination{display:flex;gap:8px;justify-content:center;align-items:center;margin-top:36px}
.blog-pagination a,.blog-pagination span,.navigation.pagination .page-numbers{display:grid;place-items:center;min-width:36px;height:36px;padding:0 10px;border:1px solid #e2e7e4;border-radius:9px;color:#145f48;background:#fff;font-size:.88rem;font-weight:700;text-decoration:none}
.blog-pagination .current,.navigation.pagination .current{background:#145f48;color:#fff;border-color:#145f48}
.blog-all{margin-top:44px;padding-top:30px;border-top:1px solid rgba(20,95,72,.1)}
.blog-all h2,.blog-sidebar h2{margin:0 0 14px;color:#0a3629;font-size:1.05rem}
.blog-all ul{columns:2;column-gap:34px;margin:0;padding:0;list-style:none;font-size:.86rem;line-height:1.9}
.blog-all li{break-inside:avoid}
.blog-all a{color:#145f48;text-decoration:none}
.blog-all a:hover{text-decoration:underline}
.blog-sidebar{position:sticky;top:96px;border:1px solid #e8eaed;border-radius:16px;background:#fbfaf6;padding:22px}
.blog-trend{display:block;padding:14px 0;border-top:1px solid rgba(20,95,72,.1);color:inherit;text-decoration:none}
.blog-trend:first-of-type{border-top:0}
.blog-trend span{display:block;margin-bottom:5px;color:#7a827e;font-size:.78rem;font-weight:700}
.blog-trend strong{display:block;color:#0a3629;font-family:var(--font-heading);font-size:.98rem;line-height:1.35}
.blog-empty{padding:28px;border:1px solid #e8eaed;border-radius:16px;background:#fbfaf6;color:#626b68}
.blog-article-hero{background:#fbfaf6;padding:72px 0 44px;border-bottom:1px solid rgba(20,95,72,.08)}
.blog-article-head{max-width:880px}
.blog-article-kicker{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;color:#145f48;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.blog-article-kicker a,.blog-article-kicker span{color:#145f48;text-decoration:none}
.blog-article h1{max-width:920px;color:#0a3629;font-size:clamp(2.1rem,4.8vw,4rem);line-height:1.04}
.blog-article-meta{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;color:#7a827e;font-size:.88rem;font-weight:700}
.blog-article-meta span::before{content:"/";margin-right:12px;color:#c4cbc7}
.blog-article-dek{max-width:760px;margin:18px 0 0;color:#626b68;font-size:1.08rem;line-height:1.7}
.blog-featured-image{max-width:980px;margin-top:42px}
.blog-featured-image img{width:100%;max-height:560px;object-fit:cover;border-radius:18px;box-shadow:0 18px 44px rgba(10,54,41,.1)}
.blog-article-section{padding:58px 0 88px;background:#fff}
.blog-article-layout{display:grid;grid-template-columns:minmax(0,780px) 280px;gap:56px;align-items:start}
.blog-article-content{color:#2a2826;font-size:1.02rem;line-height:1.78}
.blog-article-content>*:first-child{margin-top:0}
.blog-article-content p{margin:0 0 1.25rem}
.blog-article-content h2{margin:2.2rem 0 .85rem;color:#0a3629;font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.2}
.blog-article-content h3{margin:1.8rem 0 .7rem;color:#0a3629;font-size:1.2rem}
.blog-article-content ul,.blog-article-content ol{margin:0 0 1.4rem;padding-left:1.35rem}
.blog-article-content li{margin:.45rem 0}
.blog-article-content img{max-width:100%;height:auto;border-radius:14px}
.blog-article-content figure{margin:2rem 0}
.blog-article-content figcaption{margin-top:.6rem;color:#7a827e;font-size:.86rem;text-align:center}
.blog-article-content blockquote{margin:2rem 0;padding:22px 26px;border-left:4px solid #145f48;background:#fbfaf6;color:#243d38;font-size:1.08rem;line-height:1.65}
.blog-article-content table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.94rem}
.blog-article-content th,.blog-article-content td{padding:12px 14px;border:1px solid #e1e7e4;text-align:left;vertical-align:top}
.blog-article-content th{background:#fbfaf6;color:#0a3629}
.blog-article-content a{color:#145f48;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.blog-cta-card{position:sticky;top:96px;border:1px solid rgba(20,95,72,.12);border-radius:16px;background:#fbfaf6;padding:22px}
.blog-cta-card h2{margin:0 0 10px;color:#0a3629;font-size:1.15rem}
.blog-cta-card p:not(.eyebrow){color:#626b68;font-size:.9rem;line-height:1.6}
.blog-cta-card .button{margin-top:12px;width:100%}
.blog-bottom-cta{padding:72px 0 120px;background:#fff;overflow:hidden}
.blog-bottom-cta-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(440px,.98fr);align-items:center;gap:48px;min-height:342px;padding:48px 56px;border-radius:24px;background:#052e16;color:#fff;overflow:visible}
.blog-bottom-cta-media{position:relative;min-height:246px;overflow:visible}
.blog-bottom-cta-media img{position:absolute;left:50%;top:50%;width:min(112%,560px);max-width:none;height:auto;transform:translate(-54%,-50%) scale(1.08);display:block}
.blog-bottom-cta-copy{display:flex;flex-direction:column;align-items:flex-start;gap:18px;max-width:560px}
.blog-bottom-cta-copy h2{margin:0;color:#fff;font-size:clamp(2rem,3vw,2.55rem);line-height:1.12;font-weight:700;letter-spacing:0}
.blog-bottom-cta-copy p{margin:0;color:rgba(255,255,255,.9);font-size:1.2rem;line-height:1.45}
.blog-bottom-cta-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:38px;margin-top:4px;padding:0 16px;border-radius:10px;background:#fff;color:#1f1f1f;font-size:1rem;font-weight:700;line-height:1;text-decoration:none;transition:background .18s,transform .18s}
.blog-bottom-cta-button:hover{background:rgba(255,255,255,.92);transform:translateY(-1px)}
@media(max-width:980px){
.blog-layout,.blog-article-layout{grid-template-columns:1fr}
.blog-sidebar,.blog-cta-card{position:static}
.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.blog-bottom-cta{padding:56px 0 88px}
.blog-bottom-cta-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:30px;min-height:300px;padding:38px 32px;border-radius:22px}
.blog-bottom-cta-media{min-height:220px}
.blog-bottom-cta-media img{width:min(118%,500px);transform:translate(-54%,-50%) scale(1.02)}
.blog-bottom-cta-copy h2{font-size:clamp(1.75rem,4vw,2.2rem)}
.blog-bottom-cta-copy p{font-size:1.05rem;line-height:1.5}
}
@media(max-width:680px){
.blog-grid{grid-template-columns:1fr}
.blog-all ul{columns:1}
.blog-hero,.blog-article-hero{padding:54px 0 38px}
.blog-hero--home{padding:48px 0 28px}
.blog-section,.blog-article-section{padding:48px 0 60px}
.blog-bottom-cta{padding:36px 0 76px}
.blog-bottom-cta-card{grid-template-columns:1fr;gap:18px;min-height:0;padding:24px 20px 26px;border-radius:20px}
.blog-bottom-cta-media{order:0;min-height:0}
.blog-bottom-cta-media img{position:static;width:100%;max-width:420px;margin:0 auto;transform:none}
.blog-bottom-cta-copy{gap:14px}
.blog-bottom-cta-copy h2{font-size:1.78rem;line-height:1.14}
.blog-bottom-cta-copy p{font-size:1rem;line-height:1.55}
.blog-bottom-cta-button{width:auto;min-height:38px;padding:0 15px;font-size:.95rem}
}

/* Blog top bar: category nav + search (blog home / category / tag / search) */
.bp-topbar{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;margin-bottom:34px}
.bp-topnav{display:flex;flex-wrap:wrap;gap:10px}
.bp-topnav a{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border:1px solid rgba(20,95,72,.14);border-radius:999px;color:#145f48;background:#fff;font-size:.84rem;font-weight:700;text-decoration:none}
.bp-topnav a.is-active,.bp-topnav a:hover{background:#145f48;color:#fff}
.bp-search{position:relative;display:flex;align-items:center;flex:0 0 auto}
.bp-search input[type=search]{width:240px;max-width:100%;height:40px;padding:0 40px 0 16px;border:1px solid var(--line);border-radius:999px;font-size:.88rem;color:var(--text);background:#fbfaf6}
.bp-search input[type=search]:focus{outline:2px solid rgba(20,95,72,.3);outline-offset:1px}
.bp-search button{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:28px;height:28px;display:grid;place-items:center;border:0;background:transparent;color:#145f48;cursor:pointer}

/* Blog home content blocks (Featured Posts / Browse by Topic / per-category) */
.bp-block{margin-top:96px}
.bp-block:first-of-type{margin-top:0}
.bp-block-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}
.bp-block-head-text{display:flex;flex-direction:column;gap:8px;max-width:640px}
.bp-block-head-text h2{margin:0;font-size:clamp(1.5rem,2vw,1.875rem);font-weight:var(--font-weight-nav);line-height:1.25;letter-spacing:-.015em}
.bp-block-head-text p{margin:0;color:#575757;font-size:1rem;font-weight:400;line-height:1.5}
.bp-block>h2{margin:0 0 20px}
.bp-view-all{flex:none;display:inline-flex;align-items:center;gap:6px;min-height:38px;padding:0 18px;border:1px solid rgba(20,95,72,.22);border-radius:999px;color:#145f48;font-size:.85rem;font-weight:700;text-decoration:none;white-space:nowrap;transition:border-color .2s,background .2s}
.bp-view-all:hover{border-color:#145f48;background:#fbfaf6}
.bp-topics{display:flex;flex-wrap:wrap;gap:10px}
.bp-topic-chip{display:inline-flex;align-items:center;min-height:38px;padding:0 18px;border:1px solid var(--line);border-radius:999px;background:#fbfaf6;color:#0a3629;font-size:.88rem;font-weight:700;text-decoration:none;transition:border-color .2s,background .2s}
.bp-topic-chip:hover{border-color:#145f48;background:#fff}

/* Blog home + category archive grid: flat, borderless card */
.cab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px 32px;list-style:none;margin:0;padding:0}
.cab-card{position:relative;display:flex;flex-direction:column;gap:16px}
.cab-card-image{display:block;aspect-ratio:16/9;border-radius:14px;overflow:hidden;background:#f4f1eb}
.cab-card-image img{width:100%;height:100%;object-fit:cover;display:block}
.cab-card-body{display:flex;flex-direction:column;gap:8px}
.cab-card-cat{position:relative;z-index:2;align-self:flex-start;color:#145f48;font-size:.875rem;font-weight:600;text-decoration:none}
.cab-card-cat:hover{text-decoration:underline}
.cab-card-title-link{color:inherit;text-decoration:none}
.cab-card-title-link::after{content:"";position:absolute;inset:0;z-index:1}
.cab-card-title{margin:0;color:#0a3629;font-size:1.125rem;font-weight:600;line-height:1.55}
.cab-card-title-link:hover .cab-card-title{color:#145f48}
.cab-card-meta{display:flex;flex-wrap:wrap;gap:0;margin:0;color:#575757;font-size:.875rem}
.cab-card-meta a{position:relative;z-index:2;color:#1a1a1a;text-decoration:none}
.cab-card-meta a:hover{text-decoration:underline}
.cab-card-meta span::before{content:"·";margin-right:8px;color:#c4cbc7}
.cab-card-meta span:first-child::before{content:none;margin-right:0}
.cab-card-meta span+span{margin-left:8px}

.cab-pagination{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:52px;padding-top:32px;border-top:1px solid var(--line)}
.cab-pagination-status{margin:0;color:#575757;font-size:.9rem}
.cab-pagination-nav ul.page-numbers{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;padding:0;list-style:none}
.cab-pagination-nav .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;padding:0 12px;border:1px solid rgba(20,95,72,.14);border-radius:999px;color:#145f48;font-size:.85rem;font-weight:700;text-decoration:none;background:#fff}
.cab-pagination-nav a.page-numbers:hover{border-color:#145f48;background:#fbfaf6}
.cab-pagination-nav .page-numbers.current{background:#145f48;border-color:#145f48;color:#fff}
.cab-pagination-nav .page-numbers.dots{border:0;background:none;color:#7a827e}
.cab-per-page{flex:none}
.cab-per-page select{min-height:38px;padding:0 14px;border:1px solid rgba(20,95,72,.14);border-radius:999px;color:#145f48;font-size:.85rem;font-weight:700;background:#fff}
@media(max-width:980px){
.cab-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
.cab-grid{grid-template-columns:1fr}
.cab-pagination{flex-direction:column;align-items:flex-start}
}

/* Blog article page */
.ba-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:20px;color:#7a827e;font-size:.82rem}
.ba-breadcrumb a{color:#7a827e;text-decoration:none}
.ba-breadcrumb a:hover{color:#145f48}
.ba-breadcrumb .is-current{color:#0a3629;font-weight:700}
.ba-hero{background:#fbfaf6;padding:0 0 48px;border-bottom:1px solid rgba(20,95,72,.08)}
.ba-hero .container{padding-top:48px}
.ba-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:center}
.ba-hero-grid-noimage{grid-template-columns:minmax(0,1fr)}
.ba-hero-text{display:flex;flex-direction:column;gap:24px}
.ba-hero-title-group{display:flex;flex-direction:column;gap:16px}
.ba-category{margin:0;color:#145f48;font-size:.75rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;line-height:1}
.ba-category a{color:inherit;text-decoration:none}
.ba-hero-text h1{margin:0;color:#1a1a1a;font-size:clamp(1.75rem,5vw,3rem);line-height:1.25;font-weight:600;letter-spacing:-.01em}
.ba-excerpt{margin:0;color:#575757;font-size:1rem;line-height:1.75}
.ba-meta{display:flex;gap:8px 8px;flex-wrap:wrap;margin:0;color:#575757;font-size:.875rem;font-weight:500}
.ba-meta span::before{content:"·";margin-right:8px;color:#c4cbc7}
.ba-meta span:first-child::before{content:none;margin-right:0}
.ba-hero-image{aspect-ratio:1.44/1;border-radius:14px;overflow:hidden;background:#f4f1eb}
.ba-hero-image img{width:100%;height:100%;object-fit:cover}

.ba-body{padding:56px 0 88px;background:#fff}
.ba-layout{display:grid;grid-template-columns:260px minmax(0,780px);gap:48px;align-items:start}
.ba-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:22px}
.ba-author{display:flex;flex-direction:column;gap:12px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:14px;padding:16px}
.ba-author-label{margin:0;color:#575757;font-size:.8125rem;font-weight:500}
.ba-author-row{display:flex;align-items:center;gap:12px}
.ba-author-row img{border-radius:50%;flex:none}
.ba-author-name{margin:0;color:#1a1a1a;font-size:.95rem;font-weight:600;line-height:1.3}
.ba-author-role{margin:2px 0 0;color:#575757;font-size:.8125rem;line-height:1.3}
.ba-author-bio{margin:0;color:#575757;font-size:.8125rem;line-height:1.45}
.ba-toc{border:0;padding:0}
.ba-toc summary{cursor:pointer;list-style:none;color:#0a3629;font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin-bottom:12px}
.ba-toc summary::-webkit-details-marker{display:none}
.ba-toc ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:2px;border-left:2px solid var(--line)}
.ba-toc a{display:block;padding:7px 0 7px 16px;color:#626b68;font-size:.86rem;line-height:1.4;text-decoration:none;border-left:2px solid transparent;margin-left:-2px}
.ba-toc li.ba-toc-level-3 a{padding-left:28px;font-size:.82rem}
.ba-toc a:hover{color:#145f48}
.ba-toc a.is-active{color:#145f48;font-weight:700;border-left-color:#145f48}

.ba-content-col{min-width:0}
.ba-takeaways{margin-bottom:36px;padding:24px 26px;border:1px solid rgba(20,95,72,.14);border-radius:16px;background:#fbfaf6}
.ba-takeaways-label{margin:0 0 14px;color:#145f48;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.ba-takeaways ul{margin:0;padding:0 0 0 1.2rem}
.ba-takeaways li{margin:0 0 10px;color:#243d38;font-size:.96rem;line-height:1.6}
.ba-takeaways li:last-child{margin-bottom:0}
.ba-content{color:#2a2826;font-size:1.02rem;line-height:1.75}
.ba-content>*:first-child{margin-top:0}
.ba-content p{margin:0 0 2rem}
.ba-content h2{margin:2.5rem 0 1rem;color:#0a3629;font-size:clamp(1.45rem,2.4vw,2rem);line-height:1.2;scroll-margin-top:100px}
.ba-content h3{margin:2rem 0 .75rem;color:#0a3629;font-size:1.2rem;line-height:1.4;scroll-margin-top:100px}
.ba-content ul,.ba-content ol{margin:0 0 2rem;padding-left:1.35rem}
.ba-content li{margin:0;line-height:1.5}
.ba-content img{max-width:100%;height:auto;border-radius:14px}
.ba-content figure{margin:2rem 0}
.ba-content figcaption{margin-top:.5rem;color:#7a827e;font-size:.875rem;line-height:1.43;text-align:left}
.ba-content blockquote{margin:2rem 0;padding:22px 26px;border-left:4px solid #145f48;background:#fbfaf6;color:#243d38;font-size:1.08rem;line-height:1.65}
.ba-content table{width:100%;border-collapse:collapse;margin:2rem 0;font-size:.94rem}
.ba-content th,.ba-content td{padding:12px 14px;border:1px solid #e1e7e4;text-align:left;vertical-align:top}
.ba-content th{background:#fbfaf6;color:#0a3629}
.ba-content a{color:#145f48;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.ba-topics{margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.ba-topics-label{margin:0 0 12px;color:#7a827e;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.ba-topics-list{display:flex;flex-wrap:wrap;gap:8px}
.ba-topics-list a{display:inline-flex;align-items:center;min-height:32px;padding:0 14px;border:1px solid var(--line);border-radius:999px;color:#145f48;font-size:.82rem;font-weight:700;text-decoration:none}
.ba-topics-list a:hover{background:#145f48;color:#fff;border-color:#145f48}
.ba-related{padding:0 0 88px;background:#fff}
.ba-related h2{margin:0 0 22px}

@media(max-width:980px){
.ba-hero-grid{grid-template-columns:1fr;gap:26px}
.ba-hero-image{order:-1;aspect-ratio:16/9}
.ba-layout{grid-template-columns:1fr;gap:32px}
.ba-aside{position:static}
}
@media(max-width:680px){
.bp-topbar{flex-direction:column;align-items:stretch}
.bp-search input[type=search]{width:100%}
.ba-hero .container{padding-top:28px}
.ba-body{padding:40px 0 60px}
.ba-related{padding-bottom:60px}
}

/* Complianz consent banner: privacy choices card. */
#cmplz-cookiebanner-container .cmplz-cookiebanner{
left:50%!important;right:auto!important;top:auto!important;bottom:10px!important;transform:translateX(-50%)!important;width:min(900px,calc(100vw - 32px))!important;min-width:0!important;max-width:900px!important;max-height:calc(100vh - 24px)!important;display:grid!important;grid-template-columns:1fr!important;gap:10px!important;padding:18px 20px!important;overflow:auto!important;background:#fffaf0!important;border:1px solid #e5d6b7!important;border-radius:8px!important;box-shadow:none!important;color:#3f4f4a!important;font-family:var(--font-body)!important;font-size:13px!important;line-height:1.55!important;z-index:99999!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-divider{grid-column:1!important;width:100%!important;min-width:0!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header{display:block!important;order:1!important;margin:0!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-body{display:block!important;order:2!important;max-height:none!important;overflow:visible!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons{order:3!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-divider{order:4!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title{display:block!important;color:#0a5d47!important;font-family:var(--font-heading)!important;font-size:17px!important;font-weight:700!important;line-height:1.25!important;text-align:left!important;justify-self:start!important;letter-spacing:0!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-close,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-logo{display:none!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message{margin:0!important;color:#3f4f4a!important;font-size:13px!important;line-height:1.6!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message a,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links .cmplz-link{color:#145f48!important;font-weight:700!important;text-decoration:underline!important;text-underline-offset:2px!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-links,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-link.cmplz-manage-options{display:none!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-divider{height:1px!important;margin:6px 0 2px!important;background:#e5d6b7!important;border:0!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories{display:none!important;margin:0!important;max-height:none!important;height:auto!important;overflow:visible!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories.cmplz-fade-in{display:grid!important;gap:12px!important;animation:none!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category{display:grid!important;grid-template-columns:18px 1fr!important;gap:6px 8px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;color:#3f4f4a!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-category-header{display:contents!important;padding:0!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-category-title{grid-column:2!important;margin:0!important;color:#2a302e!important;font-family:var(--font-body)!important;font-size:14px!important;font-weight:800!important;line-height:1.35!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-always-active{grid-column:2!important;justify-self:start!important;margin-left:8px!important;padding:2px 8px!important;border-radius:999px!important;background:#edf6d7!important;color:#145f48!important;font-size:10px!important;font-weight:800!important;letter-spacing:.06em!important;text-transform:uppercase!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox{grid-column:1!important;grid-row:1 / span 2!important;display:block!important;margin:2px 0 0!important;width:16px!important;height:16px!important;position:relative!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input.cmplz-consent-checkbox{position:static!important;opacity:1!important;appearance:auto!important;width:16px!important;height:16px!important;margin:0!important;cursor:pointer!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox input[data-category=cmplz_functional]{display:block!important;pointer-events:none!important;accent-color:#d7d7d7!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label:before,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-banner-checkbox .cmplz-label:after,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-icon{display:none!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-description{grid-column:2!important;display:block!important;margin:0!important;padding:0!important;color:#4d5b56!important;font-size:13px!important;line-height:1.5!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-description[hidden]{display:block!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons{display:flex!important;align-items:center!important;justify-content:flex-start!important;gap:10px!important;margin:6px 0 0!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons{flex-direction:row!important;flex-wrap:wrap!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn{flex:0 0 auto!important;width:auto!important;min-width:104px!important;min-height:44px!important;margin:0!important;padding:10px 18px!important;border-radius:6px!important;font-family:var(--font-body)!important;font-size:14px!important;font-weight:800!important;line-height:1.1!important;text-decoration:none!important;white-space:normal!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-accept,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-deny{background:#145f48!important;border:1px solid #145f48!important;color:#fff!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-view-preferences,
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-save-preferences{background:#fff5cb!important;border:1px solid #145f48!important;color:#145f48!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-save-preferences{display:none!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-categories-visible .cmplz-buttons .cmplz-save-preferences{display:inline-flex!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-categories-visible .cmplz-buttons .cmplz-view-preferences{display:none!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons a.cmplz-btn{align-items:center!important;justify-content:center!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-dismissed{display:none!important}
/* Keep Complianz's own pre-decision "cmplz-hidden" state hidden: our base rule above forces
   display:grid on #cmplz-cookiebanner-container .cmplz-cookiebanner unconditionally (id + class
   beats Complianz's own ".cmplz-hidden{display:none!important}" on specificity alone), which was
   overriding the plugin's FOUC guard and showing the banner for one frame before its JS runs
   (revealBanner()) to remove this class. Matching that rule's specificity here restores it. */
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-hidden{display:none!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category:has(input.cmplz-preferences),
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category:has(input.cmplz-statistics),
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category:has(input.cmplz-marketing){display:none!important}
#cmplz-manage-consent{display:none!important}
@media(min-width:601px){
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-categories-visible{padding-bottom:82px!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner.cmplz-categories-visible .cmplz-buttons{position:absolute!important;left:20px!important;right:auto!important;bottom:18px!important;width:auto!important}
}
@media(max-width:600px){
#cmplz-cookiebanner-container .cmplz-cookiebanner{bottom:8px!important;width:calc(100vw - 16px)!important;max-height:calc(100vh - 16px)!important;padding:10px 12px!important;border-radius:8px!important;gap:8px!important;font-size:13px!important;line-height:1.45!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-header{display:block!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-title{font-size:13px!important;display:inline!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-message{display:inline!important;font-size:13px!important;line-height:1.45!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important;margin-top:4px!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-buttons .cmplz-btn{width:100%!important;min-width:0!important;min-height:44px!important;padding:8px 10px!important;font-size:13px!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories.cmplz-fade-in{gap:10px!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-category-title{font-size:14px!important}
#cmplz-cookiebanner-container .cmplz-cookiebanner .cmplz-categories .cmplz-category .cmplz-description{font-size:13px!important}
}

/* Mega-menu triggers (Products / Industries) are real buttons styled exactly like the nav links. */
.menu .mega-trigger{-webkit-appearance:none;appearance:none;background:none;border:0;border-radius:0;margin:0;padding:0;font:inherit;font-family:var(--font-heading);font-size:var(--text-sm);font-weight:var(--font-weight-nav);color:#554f4b;letter-spacing:inherit;text-align:left;cursor:pointer;display:inline}
.menu .mega-trigger:hover,.has-mega.is-open > .mega-trigger{color:var(--green)}
@media (max-width:1100px){.menu .mega-trigger{display:block;width:100%;padding:10px 0}}

/* Tools page checklists */
.resource-card .resource-list{margin:12px 0 0;padding-left:18px;display:grid;gap:6px;font-size:var(--text-sm);line-height:1.55;color:#554f4b}
.resource-card .resource-list a{color:var(--green);font-weight:600;text-decoration:underline;text-underline-offset:3px}
