:root{
  --paper:#faf6ee;
  --paper-2:#f1e8d8;
  --paper-3:#fffdf8;
  --ink:#2b2620;
  --ink-soft:#5c5245;
  --ink-faint:#8a8072;
  --tea:#4a5d43;
  --tea-dark:#333f2c;
  --tea-light:#7c9270;
  --clay:#c1714a;
  --clay-dark:#8f5535;
  --gold:#cf9a4c;
  --gold-light:#e8c07d;
  --line:rgba(43,38,32,.12);
  --shadow-sm:0 1px 2px rgba(43,38,32,.07), 0 1px 1px rgba(43,38,32,.04);
  --shadow-md:0 10px 26px -10px rgba(43,38,32,.22), 0 2px 6px rgba(43,38,32,.07);
  --shadow-lg:0 26px 54px -18px rgba(43,38,32,.3), 0 10px 18px -8px rgba(43,38,32,.12);
  --shadow-stack:0 -20px 40px -26px rgba(43,38,32,.4);
  --r-sm:10px;
  --r-md:18px;
  --r-lg:28px;
  --r-xl:40px;
  --grad-hero:linear-gradient(135deg,#37452f 0%,#7a4b32 55%,#a97c3a 100%);
  --grad-text:linear-gradient(120deg,var(--tea-dark) 0%, var(--clay-dark) 100%);
  --grad-btn:linear-gradient(120deg,var(--tea) 0%, var(--tea-dark) 100%);
  --grad-btn-hover:linear-gradient(120deg,var(--clay) 0%, var(--clay-dark) 100%);
  --grad-soft:linear-gradient(135deg, rgba(74,93,67,.14), rgba(193,113,74,.14));
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;overflow-x:hidden;}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'DM Sans', sans-serif;
  font-size:1rem;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{
  font-family:'Sora', sans-serif;
  color:var(--ink);
  line-height:1.18;
  margin:0 0 .6em;
  font-weight:700;
}
p{margin:0 0 1em;color:var(--ink-soft);}
a{color:var(--tea-dark);text-decoration:none;transition:color .25s ease, opacity .25s ease;}
a:hover{color:var(--clay-dark);}
img{max-width:100%;display:block;}
ul{margin:0;padding:0;list-style:none;}
.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1.5rem;}

h1{font-size:clamp(2.4rem,5vw + 1rem,4.2rem);}
h2{font-size:clamp(1.9rem,2.6vw + 1rem,2.75rem);}
h3{font-size:clamp(1.15rem,1vw + 1rem,1.45rem);}


.hdr{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(250,246,238,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);transition:transform .45s cubic-bezier(.4,0,.2,1), opacity .35s ease;}
.hdr.hdr--hidden{transform:translateY(-120%);opacity:0;pointer-events:none;}
.hdr-inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1.5rem;}
.hdr-logo img{height:30px;width:auto;}
.hdr-nav{display:flex;align-items:center;gap:.4rem;background:var(--paper-3);padding:.35rem;border-radius:999px;box-shadow:var(--shadow-sm);}
.hdr-pill{padding:.55rem 1.05rem;border-radius:999px;font-size:.88rem;font-weight:600;color:var(--ink-soft);transition:background .3s ease, color .3s ease, transform .25s ease;white-space:nowrap;}
.hdr-pill:hover{background:var(--grad-soft);color:var(--tea-dark);}
.hdr-pill.is-active{background:var(--grad-btn);color:#fff;box-shadow:var(--shadow-sm);}
.hdr-cta{background:var(--grad-btn);color:#fff;padding:.65rem 1.3rem;border-radius:999px;font-weight:600;font-size:.88rem;box-shadow:var(--shadow-sm);transition:transform .25s ease, box-shadow .25s ease, background .3s ease;}
.hdr-cta:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--grad-btn-hover);color:#fff;}
.hdr-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;background:var(--paper-3);border:1px solid var(--line);border-radius:var(--r-md);cursor:pointer;transition:background .3s ease;}
.hdr-burger span{display:block;width:20px;height:2px;background:var(--ink);margin:0 auto;border-radius:2px;transition:transform .3s ease, opacity .3s ease;}
.hdr-burger:hover{background:var(--grad-soft);}

.hdr-mini{position:fixed;top:18px;left:50%;transform:translate(-50%,-140%);z-index:210;width:52px;height:52px;border-radius:50%;background:var(--grad-btn);border:none;color:#fff;font-size:1.1rem;box-shadow:var(--shadow-md);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .4s cubic-bezier(.4,0,.2,1), box-shadow .3s ease;}
.hdr-mini.is-visible{transform:translate(-50%,0);}
.hdr-mini:hover{box-shadow:var(--shadow-lg);}


.tab-bar{position:fixed;bottom:16px;left:50%;transform:translateX(-50%) translateY(140%);width:calc(100% - 2rem);max-width:420px;background:var(--paper-3);border-radius:var(--r-lg);box-shadow:var(--shadow-lg);display:flex;justify-content:space-between;padding:.5rem;z-index:220;transition:transform .45s cubic-bezier(.4,0,.2,1);}
.tab-bar.is-open{transform:translateX(-50%) translateY(0);}
.tab-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem .25rem;border-radius:var(--r-md);color:var(--ink-faint);font-size:.68rem;font-weight:600;transition:background .25s ease, color .25s ease;min-height:48px;justify-content:center;}
.tab-ico{font-size:1.05rem;}
.tab-item.is-active{color:#fff;background:var(--grad-btn);}
.tab-item:hover{color:var(--tea-dark);}


.side-cta{position:fixed;right:0;top:55%;transform:translateY(-50%);z-index:150;opacity:0;pointer-events:none;transition:opacity .4s ease, transform .4s ease;}
.side-cta.is-visible{opacity:1;pointer-events:auto;}
.side-cta-btn{display:flex;align-items:center;gap:.5rem;background:var(--grad-btn);color:#fff;padding:.9rem 1.1rem;border-radius:var(--r-lg) 0 0 var(--r-lg);box-shadow:var(--shadow-md);font-weight:600;font-size:.85rem;transition:padding .3s ease, background .3s ease;}
.side-cta-btn i{font-size:1rem;}
.side-cta-btn:hover{padding-right:1.4rem;background:var(--grad-btn-hover);color:#fff;}


.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.6rem;border-radius:999px;font-weight:600;font-size:.92rem;cursor:pointer;border:none;transition:transform .25s ease, box-shadow .25s ease, background .3s ease, color .3s ease;min-height:48px;}
.btn--primary{background:var(--grad-btn);color:#fff;box-shadow:var(--shadow-sm);}
.btn--primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);background:var(--grad-btn-hover);color:#fff;}
.btn--ghost{background:transparent;color:var(--tea-dark);border:1.5px solid var(--tea);}
.btn--ghost:hover{background:var(--grad-soft);transform:translateY(-2px);}
.btn--ghost-light{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6);}
.btn--ghost-light:hover{background:rgba(255,255,255,.15);transform:translateY(-2px);}
.btn--light{background:#fff;color:var(--tea-dark);box-shadow:var(--shadow-sm);}
.btn--light:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);}


.hero{position:relative;background:var(--grad-hero);padding:calc(6.5rem + 3rem) 0 6rem;overflow:hidden;}
.hero-blob{position:absolute;border-radius:50%;filter:blur(60px);opacity:.5;}
.hero-blob-a{width:340px;height:340px;background:var(--gold-light);top:-100px;right:-60px;}
.hero-blob-b{width:280px;height:280px;background:var(--clay);bottom:-120px;left:-60px;}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr 1fr;gap:3rem;align-items:center;}
.hero-tag{display:inline-block;color:var(--gold-light);font-weight:600;letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;margin-bottom:1rem;}
.hero-txt h1{color:#fff;}
.hero-lead{color:rgba(255,255,255,.85);font-size:1.08rem;max-width:46ch;}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.7rem;}

.hero-bento{display:grid;grid-template-columns:1fr 1fr;gap:1rem;}
.bento-crd{background:var(--paper-3);border-radius:var(--r-lg);padding:1.4rem;box-shadow:var(--shadow-lg);transition:transform .35s ease, box-shadow .35s ease;}
.bento-crd:hover{transform:translateY(-6px);box-shadow:0 32px 60px -20px rgba(43,38,32,.4);}
.bento-crd--wide{grid-column:span 2;padding:0;overflow:hidden;}
.bento-crd--wide figure{margin:0;}
.bento-crd--wide img{width:100%;height:200px;object-fit:cover;}
.bento-crd--wide figcaption{padding:1.1rem 1.3rem;font-weight:600;color:var(--ink);font-size:.95rem;}
.crd-ico{font-size:1.5rem;color:var(--clay-dark);margin-bottom:.7rem;display:inline-block;}
.bento-crd h3{margin-bottom:.35rem;}
.bento-crd p{font-size:.9rem;margin:0;}


.sec{position:relative;background:var(--paper);padding:5.5rem 0;}
.sec--alt{background:var(--paper-2);}
.sec--cream{background:var(--paper-3);}
.sec:not(.hero):not(.sub-hero):not(.thanks-hero){margin-top:-2.6rem;border-radius:44px 44px 0 0;box-shadow:var(--shadow-stack);}
.sub-hero{margin-top:-2.6rem;border-radius:44px 44px 0 0;box-shadow:var(--shadow-stack);padding-top:calc(6.5rem + 3.5rem);}
.sec-tag{display:inline-block;color:var(--clay-dark);font-weight:700;letter-spacing:.05em;text-transform:uppercase;font-size:.76rem;margin-bottom:.7rem;}
.sec-title{background:var(--grad-text);-webkit-background-clip:text;background-clip:text;color:transparent;}
.sec-head{max-width:720px;margin:0 auto 3rem;text-align:center;}
.sec-sub{font-size:1.03rem;}
.sec-intro{display:grid;grid-template-columns:1fr 1.15fr;gap:3rem;align-items:start;}
.sec-intro-txt p{font-size:1.02rem;}


.crd-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;}
.crd{background:var(--paper-3);border-radius:var(--r-lg);padding:2rem;box-shadow:var(--shadow-md);transition:transform .35s ease, box-shadow .35s ease;}
.crd:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);}
.crd figure{margin:-2rem -2rem 1.2rem;}
.crd figure img{width:100%;height:220px;object-fit:cover;border-radius:var(--r-lg) var(--r-lg) 0 0;}
.crd figcaption{padding:0 .1rem;}
.crd-num{display:inline-block;font-family:'Sora',sans-serif;font-weight:800;color:var(--gold);font-size:.85rem;letter-spacing:.05em;margin-bottom:.4rem;}
.crd-kicker{color:var(--clay-dark);font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;margin:0 0 .3rem;}
.crd-list{margin-top:.6rem;}
.crd-list li{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.6rem;font-size:.95rem;color:var(--ink-soft);}
.crd-list i{color:var(--tea);margin-top:.25rem;}


.story-grid{display:grid;grid-template-columns:1fr 1fr;gap:3.5rem;align-items:start;}
.story-visual{position:sticky;top:120px;height:460px;border-radius:var(--r-xl);overflow:hidden;box-shadow:var(--shadow-lg);}
.story-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .6s ease;}
.story-img.is-active{opacity:1;}
.story-steps{display:flex;flex-direction:column;}
.story-step{min-height:62vh;display:flex;flex-direction:column;justify-content:center;opacity:.35;transition:opacity .4s ease;padding:1rem 0;}
.story-step.is-active{opacity:1;}
.story-num{font-family:'Sora',sans-serif;font-weight:800;font-size:1.6rem;color:var(--gold);}
.story-step h3{margin-top:.4rem;}


.practical-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center;}
.practical-imgs{display:grid;gap:1rem;}
.practical-imgs img{border-radius:var(--r-lg);box-shadow:var(--shadow-md);height:220px;width:100%;object-fit:cover;}
.meter-block{margin-top:1.6rem;background:var(--paper-3);border-radius:var(--r-md);padding:1.4rem;box-shadow:var(--shadow-sm);}
.meter-block label{display:block;font-weight:600;margin-bottom:.6rem;font-size:.9rem;}
meter{width:100%;height:14px;}
meter::-webkit-meter-bar{background:var(--paper-2);border-radius:999px;border:none;}
meter::-webkit-meter-optimum-value{background:var(--grad-btn);border-radius:999px;}
.meter-scale{display:flex;justify-content:space-between;font-size:.72rem;color:var(--ink-faint);margin-top:.4rem;}
.meter-note{font-size:.82rem;margin:.7rem 0 0;color:var(--ink-faint);}


.faq-list{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:.85rem;}
.faq-item{background:var(--paper-3);border-radius:var(--r-md);padding:1.2rem 1.4rem;box-shadow:var(--shadow-sm);transition:box-shadow .3s ease;}
.faq-item[open]{box-shadow:var(--shadow-md);}
.faq-item summary{cursor:pointer;font-weight:600;font-family:'Sora',sans-serif;list-style:none;position:relative;padding-right:2rem;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:'+';position:absolute;right:0;top:0;font-size:1.3rem;color:var(--clay-dark);transition:transform .3s ease;}
.faq-item[open] summary::after{transform:rotate(45deg);}
.faq-item p{margin:.8rem 0 0;}


.region-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;}
.region-crd{background:var(--paper-3);border-radius:var(--r-lg);padding:1.8rem 1.4rem;text-align:center;box-shadow:var(--shadow-sm);transition:transform .3s ease, box-shadow .3s ease;}
.region-crd:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);}
.region-crd i{font-size:1.6rem;color:var(--tea);margin-bottom:.7rem;}
.region-crd h3{margin-bottom:.4rem;font-size:1.05rem;}
.region-crd p{font-size:.88rem;margin:0;}


.loc-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;}
.loc-info-list{margin:1.3rem 0 1.6rem;}
.loc-info-list li{display:flex;align-items:center;gap:.7rem;margin-bottom:.7rem;font-size:.95rem;}
.loc-info-list i{color:var(--clay-dark);width:20px;text-align:center;}
.loc-map iframe, .map-frame iframe{width:100%;height:340px;border:0;border-radius:var(--r-lg);box-shadow:var(--shadow-md);}


.cta-sec{background:var(--grad-hero);}
.cta-inner{text-align:center;max-width:640px;margin:0 auto;}
.cta-inner h2{color:#fff;}
.cta-inner p{color:rgba(255,255,255,.85);}
.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.4rem;}


.sub-hero{background:var(--paper-3);}
.breadcrumb ol{display:flex;gap:.4rem;align-items:center;font-size:.82rem;color:var(--ink-faint);margin-bottom:1.2rem;flex-wrap:wrap;}
.breadcrumb li:not(:last-child)::after{content:'/';margin-left:.4rem;color:var(--ink-faint);}
.sub-hero-lead{max-width:60ch;font-size:1.05rem;}


.about-grid-inner{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:center;}
.about-fig{margin:0;}
.about-fig img{border-radius:var(--r-xl);box-shadow:var(--shadow-lg);width:100%;height:420px;object-fit:cover;}
.about-fig figcaption{margin-top:.8rem;font-size:.85rem;color:var(--ink-faint);text-align:center;}
.method-block{max-width:820px;margin:0 auto;display:flex;flex-direction:column;gap:.85rem;}


.pricing-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.4rem;}
.price-crd{background:var(--paper-3);border-radius:var(--r-lg);padding:1.8rem;box-shadow:var(--shadow-md);display:flex;flex-direction:column;transition:transform .3s ease, box-shadow .3s ease;}
.price-crd:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg);}
.price-crd--highlight{background:var(--grad-hero);color:#fff;}
.price-crd--highlight h3, .price-crd--highlight .price-crd-amount{color:#fff;}
.price-crd--highlight p, .price-crd--highlight li{color:rgba(255,255,255,.88);}
.price-crd--highlight .price-crd-list i{color:var(--gold-light);}
.price-crd-amount{font-family:'Sora',sans-serif;font-weight:800;font-size:1.7rem;color:var(--tea-dark);margin:.3rem 0 .8rem;}
.price-crd-amount span{font-size:.85rem;font-weight:500;color:var(--ink-faint);}
.price-crd-desc{font-size:.9rem;flex-grow:0;}
.price-crd-list{margin:1rem 0 1.4rem;flex-grow:1;}
.price-crd-list li{display:flex;gap:.5rem;font-size:.87rem;margin-bottom:.55rem;align-items:flex-start;}
.price-crd-list i{color:var(--tea);margin-top:.2rem;}
.pricing-note{text-align:center;margin-top:2rem;font-size:.85rem;color:var(--ink-faint);}

.table-wrap{overflow-x:auto;}
.data-table{width:100%;border-collapse:collapse;background:var(--paper-3);border-radius:var(--r-md);overflow:hidden;box-shadow:var(--shadow-sm);}
.data-table th,.data-table td{padding:.85rem 1.1rem;text-align:left;font-size:.9rem;border-bottom:1px solid var(--line);}
.data-table th{background:var(--paper-2);font-family:'Sora',sans-serif;font-weight:600;color:var(--tea-dark);}
.data-table tr:last-child td{border-bottom:none;}


.manage-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:start;}
.steps-list{display:flex;flex-direction:column;gap:1rem;}
.steps-list li{display:flex;gap:1rem;align-items:flex-start;background:var(--paper-3);padding:1rem 1.2rem;border-radius:var(--r-md);box-shadow:var(--shadow-sm);}
.steps-list span{flex-shrink:0;width:32px;height:32px;border-radius:50%;background:var(--grad-btn);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem;}
.manage-card{background:var(--paper-3);border-radius:var(--r-lg);padding:1.8rem;box-shadow:var(--shadow-md);}
.manage-card h3{margin-bottom:.9rem;}
.manage-card .btn{margin-top:1rem;width:100%;}


.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:start;}
.frm{display:flex;flex-direction:column;gap:1.2rem;background:var(--paper-3);padding:2rem;border-radius:var(--r-lg);box-shadow:var(--shadow-md);}
.frm-grp{display:flex;flex-direction:column;gap:.45rem;}
.frm-lbl{font-weight:600;font-size:.9rem;}
.frm-input{border:1.5px solid var(--line);border-radius:var(--r-sm);padding:.85rem 1rem;font-family:'DM Sans',sans-serif;font-size:.95rem;background:var(--paper);transition:border-color .25s ease, box-shadow .25s ease;min-height:48px;}
textarea.frm-input{min-height:120px;resize:vertical;}
.frm-input:focus{outline:none;border-color:var(--tea);box-shadow:0 0 0 3px rgba(74,93,67,.15);}
.frm-check-grp{display:flex;align-items:flex-start;gap:.6rem;font-size:.85rem;color:var(--ink-soft);}
.frm-check-grp input{margin-top:.3rem;width:18px;height:18px;accent-color:var(--tea);flex-shrink:0;}
.frm-status{display:block;font-size:.85rem;font-weight:600;min-height:1.2em;color:var(--tea-dark);}
.frm-btn{align-self:flex-start;}
.contact-info{display:flex;flex-direction:column;gap:1.6rem;}
.contact-info-card{background:var(--paper-3);border-radius:var(--r-lg);padding:1.8rem;box-shadow:var(--shadow-md);}
.contact-fig{margin:0;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-md);}
.contact-fig img{width:100%;height:240px;object-fit:cover;}
.contact-fig figcaption{padding:.9rem 1.2rem;font-size:.85rem;color:var(--ink-faint);background:var(--paper-3);}
.consult-block{max-width:900px;margin:0 auto;}
.consult-note{font-size:.85rem;color:var(--ink-faint);margin-top:1rem;}
.map-frame{max-width:1000px;margin:0 auto;}


.legal-content{max-width:840px;margin:0 auto;}
.legal-content h2{margin-top:2.2rem;font-size:1.35rem;}
.legal-content h2:first-child{margin-top:0;}
.legal-content p{font-size:.98rem;}
.def-list{margin:1rem 0;}
.def-list dt{font-weight:700;font-family:'Sora',sans-serif;color:var(--tea-dark);margin-top:1rem;}
.def-list dd{margin:.3rem 0 0;color:var(--ink-soft);}


.thanks-hero{background:var(--grad-hero);padding:calc(6.5rem + 4rem) 0 5rem;text-align:center;}
.thanks-tag{color:var(--gold-light);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.8rem;}
.thanks-hero h1{color:#fff;max-width:16ch;margin:.6rem auto 1rem;}
.thanks-lead{color:rgba(255,255,255,.88);max-width:52ch;margin:0 auto;}
.thanks-next{max-width:640px;margin:0 auto;text-align:center;}
.thanks-next .btn{margin-top:1rem;}


.ftr{background:var(--tea-dark);padding:4.5rem 0 0;margin-top:-2.6rem;border-radius:44px 44px 0 0;position:relative;}
.ftr-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:1.4rem;padding-bottom:3rem;}
.ftr-crd{background:rgba(255,255,255,.06);border-radius:var(--r-lg);padding:1.6rem;}
.ftr-crd h3{color:#fff;font-size:1rem;margin-bottom:1rem;}
.ftr-crd p{color:rgba(255,255,255,.7);font-size:.88rem;}
.ftr-crd ul{display:flex;flex-direction:column;gap:.6rem;}
.ftr-crd a{color:rgba(255,255,255,.78);font-size:.9rem;}
.ftr-crd a:hover{color:#fff;}
.ftr-logo{margin-bottom:1rem;filter:brightness(0) invert(1);}
.ftr address{font-style:normal;color:rgba(255,255,255,.78);font-size:.9rem;line-height:1.8;}
.ftr-bottom{border-top:1px solid rgba(255,255,255,.12);padding:1.4rem 0;text-align:center;}
.ftr-bottom p{color:rgba(255,255,255,.6);font-size:.82rem;margin:0;}


.cookie-pill{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:300;background:var(--ink);color:#fff;border-radius:999px;padding:.8rem 1rem .8rem 1.3rem;display:flex;align-items:center;gap:.9rem;box-shadow:var(--shadow-lg);max-width:calc(100% - 2rem);transition:border-radius .4s ease, padding .4s ease, max-width .4s ease, background .4s ease;}
.cookie-pill p{margin:0;font-size:.82rem;color:rgba(255,255,255,.85);}
.cookie-pill .cookie-actions{display:flex;gap:.5rem;flex-shrink:0;}
.cookie-btn{border:none;border-radius:999px;padding:.5rem .95rem;font-size:.78rem;font-weight:600;cursor:pointer;transition:transform .2s ease, background .2s ease;white-space:nowrap;}
.cookie-btn--accept{background:var(--grad-btn);color:#fff;}
.cookie-btn--reject{background:rgba(255,255,255,.14);color:#fff;}
.cookie-btn--custom{background:transparent;color:rgba(255,255,255,.7);text-decoration:underline;padding:.5rem .3rem;}
.cookie-btn:hover{transform:translateY(-1px);}

.cookie-pill.is-modal{flex-direction:column;align-items:stretch;border-radius:var(--r-lg);padding:1.6rem;max-width:460px;width:calc(100% - 2rem);gap:1rem;bottom:20px;}
.cookie-modal-head h3{color:#fff;margin-bottom:.3rem;font-size:1.1rem;}
.cookie-modal-head p{font-size:.85rem;}
.cookie-cat{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.7rem 0;border-bottom:1px solid rgba(255,255,255,.1);}
.cookie-cat:last-of-type{border-bottom:none;}
.cookie-cat-txt strong{display:block;font-size:.88rem;color:#fff;}
.cookie-cat-txt span{font-size:.76rem;color:rgba(255,255,255,.6);}
.switch{position:relative;width:42px;height:24px;flex-shrink:0;}
.switch input{opacity:0;width:0;height:0;}
.switch label{position:absolute;inset:0;background:rgba(255,255,255,.25);border-radius:999px;cursor:pointer;transition:background .3s ease;}
.switch label::after{content:'';position:absolute;top:3px;left:3px;width:18px;height:18px;background:#fff;border-radius:50%;transition:transform .3s ease;}
.switch input:checked + label{background:var(--tea-light);}
.switch input:checked + label::after{transform:translateX(18px);}
.switch input:disabled + label{opacity:.5;cursor:not-allowed;}
.cookie-modal-actions{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:.5rem;}
.cookie-modal-actions .cookie-btn{flex:1;}


.tippy-box[data-theme~='custom']{background:var(--ink);color:#fff;font-size:.8rem;font-family:'DM Sans',sans-serif;border-radius:var(--r-sm);padding:.1rem;}
.tippy-box[data-theme~='custom'] .tippy-arrow{color:var(--ink);}


@media (max-width:1024px){
  .hero-grid{grid-template-columns:1fr;}
  .hero-bento{grid-template-columns:1fr 1fr;}
  .crd-grid, .pricing-grid, .region-grid{grid-template-columns:repeat(2,1fr);}
  .about-grid-inner, .practical-grid, .loc-grid, .contact-grid, .manage-grid, .sec-intro{grid-template-columns:1fr;}
  .story-grid{grid-template-columns:1fr;}
  .story-visual{position:relative;top:0;height:320px;margin-bottom:2rem;}
  .side-cta{display:none;}
}

@media (max-width:960px){
  .hdr-nav, .hdr-cta{display:none;}
  .hdr-burger{display:flex;}
}

@media (max-width:640px){
  .container{padding:0 1.2rem;}
  .sec{padding:3.5rem 0;}
  .sub-hero{padding-top:calc(6.5rem + 2rem);}
  .hero{padding:calc(6.5rem + 2rem) 0 4rem;}
  .hero-bento{grid-template-columns:1fr;}
  .bento-crd--wide{grid-column:span 1;}
  .crd-grid, .pricing-grid, .region-grid{grid-template-columns:1fr;}
  .crd figure{margin:-1.4rem -1.4rem 1rem;}
  .crd{padding:1.4rem;}
  .cta-actions, .hero-actions{flex-direction:column;align-items:stretch;}
  .btn{width:100%;}
  .cookie-pill{bottom:96px;flex-direction:column;align-items:stretch;border-radius:var(--r-lg);text-align:center;}
  .cookie-pill .cookie-actions{justify-content:center;flex-wrap:wrap;}
  .ftr-grid{grid-template-columns:1fr;}
  .tab-bar{width:calc(100% - 1.2rem);}
}