:root{
--brand:#20872e;
--brand-mid:#249a33;
--brand-bright:#2cb13c;
--leaf:#5bb238;
--brand-deep:#13401c;
--ink:#2a2b2b;
--ink-soft:#5c6360;
--line:#e4e7e4;
--paper:#ffffff;
--mist:#f3f4f2;
--mist-2:#eef1ee;
--shadow-s:0 1px 2px rgba(19,64,28,.06),0 2px 8px rgba(19,64,28,.05);
--shadow-m:0 2px 6px rgba(19,64,28,.07),0 12px 28px rgba(19,64,28,.08);
--shadow-l:0 8px 20px rgba(19,64,28,.1),0 24px 60px rgba(19,64,28,.12);
--r-s:4px;--r-m:8px;--r-l:16px;
--sans:"Poppins","Segoe UI",system-ui,-apple-system,sans-serif;
--display:"Poppins","Segoe UI",system-ui,sans-serif;
--wrap:1170px;
--gut:clamp(16px,4vw,32px);
--ease:cubic-bezier(.22,.61,.36,1);
--cross-mark:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Ccircle cx='100' cy='100' r='96' fill='none' stroke='%23ffffff' stroke-opacity='.16' stroke-width='2'/%3E%3Ccircle cx='100' cy='100' r='78' fill='%23ffffff' fill-opacity='.07'/%3E%3Cpath fill='%23ffffff' fill-opacity='.2' d='M82 44h36v38h38v36h-38v38H82v-38H44V82h38z'/%3E%3C/svg%3E");
--leaf-pattern:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cg fill='none' stroke='%23ffffff' stroke-opacity='.14' stroke-width='1.3'%3E%3Cpath d='M12 126c40-10 65-36 78-78 11 42 36 68 78 78-42 11-67 36-78 78-13-42-38-67-78-78z'/%3E%3Cpath d='M162 34c23-6 38-21 45-45 6 24 21 39 45 45-24 7-39 22-45 45-7-23-22-38-45-45z'/%3E%3Cpath d='M186 150c17-5 28-16 33-33 5 17 16 28 33 33-17 5-28 16-33 33-5-17-16-28-33-33z'/%3E%3C/g%3E%3C/svg%3E");
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.72 var(--sans);overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--brand-bright)}
h1,h2,h3,h4,h5{font-family:var(--display);font-weight:500;line-height:1.2;margin:0 0 .5em;color:var(--ink);letter-spacing:-.01em}
h1{font-size:clamp(28px,4.2vw,44px)}
h2{font-size:clamp(24px,3.2vw,34px)}
h3{font-size:clamp(20px,2.4vw,26px)}
h4{font-size:19px}
p{margin:0 0 1.15em}
ul,ol{margin:0 0 1.15em;padding-left:1.25em}
li{margin-bottom:.35em}
table{border-collapse:collapse;width:100%}
figure{margin:0}
.wrap{width:min(100% - var(--gut)*2,var(--wrap));margin-inline:auto}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:16px;z-index:999;background:#fff;padding:10px 16px;border-radius:var(--r-m)}
:focus-visible{outline:3px solid var(--leaf);outline-offset:2px}

.site-head{background:var(--brand);color:#fff;position:relative;z-index:60}
.site-head__in{display:flex;align-items:center;gap:clamp(12px,2.4vw,28px);min-height:98px;padding-block:10px}
.brand{display:flex;align-items:center;flex:0 0 auto}
.brand img{height:60px;width:auto}
.brand__txt{font-family:var(--display);font-weight:600;font-size:20px;color:#fff}
.nav{margin-left:auto}
.nav ul{display:flex;align-items:center;gap:clamp(10px,1.5vw,22px);list-style:none;margin:0;padding:0}
.nav li{margin:0}
.nav a{color:#fff;text-transform:uppercase;font-size:15px;letter-spacing:.02em;padding:8px 2px;position:relative;display:block;white-space:nowrap}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:2px;background:#fff;transition:right .3s var(--ease)}
.nav a:hover::after,.nav .current-menu-item>a::after,.nav .current-page-ancestor>a::after{right:0}
.nav a:hover{color:#fff}
.head-social{display:flex;gap:10px;align-items:center;margin-left:clamp(8px,2vw,26px)}
.head-social a{width:34px;height:34px;border:1px solid rgba(255,255,255,.75);border-radius:50%;display:grid;place-items:center;color:#fff;transition:background .25s var(--ease),transform .25s var(--ease)}
.head-social a:hover{background:#fff;color:var(--brand);transform:translateY(-2px)}
.head-social svg{width:16px;height:16px;fill:currentColor}
.burger{display:none;background:none;border:0;padding:8px;cursor:pointer;margin-left:auto}
.burger span{display:block;width:26px;height:2px;background:#fff;margin:5px 0;transition:transform .3s var(--ease),opacity .2s}
.burger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger[aria-expanded=true] span:nth-child(2){opacity:0}
.burger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.share-rail{position:fixed;right:0;top:46%;z-index:50;display:flex;flex-direction:column}
.share-rail a{width:38px;height:38px;display:grid;place-items:center;color:#fff;transition:filter .25s var(--ease)}
.share-rail a svg{width:17px;height:17px;fill:currentColor}
.share-rail a:nth-child(1){background:#2fa8c9}
.share-rail a:nth-child(2){background:#3b5998}
.share-rail a:nth-child(3){background:#1da1f2}
.share-rail a:nth-child(4){background:#0a66c2}
.share-rail a:hover{filter:brightness(1.14)}

.hero{position:relative;background:#dfe3df;overflow:hidden}
.hero__track{position:relative;display:block}
.hero__slide{position:absolute;inset:0;opacity:0;transition:opacity .9s var(--ease)}
.hero__slide:first-child{position:relative}
.hero__slide.is-on{opacity:1;z-index:1}
.hero__slide img{width:100%;height:clamp(260px,46vw,560px);object-fit:cover;object-position:center}
.hero__btn{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border:0;border-radius:50%;background:rgba(255,255,255,.82);color:var(--brand);display:grid;place-items:center;cursor:pointer;z-index:4;transition:background .25s var(--ease),transform .25s var(--ease)}
.hero__btn:hover{background:#fff;transform:translateY(-50%) scale(1.06)}
.hero__btn--prev{left:14px}
.hero__btn--next{right:14px}
.hero__btn svg{width:18px;height:18px;fill:currentColor}
.hero__dots{position:absolute;left:0;right:0;bottom:14px;display:flex;justify-content:center;gap:8px;z-index:4}
.hero__dots button{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.6);cursor:pointer;padding:0;transition:transform .25s var(--ease),background .25s}
.hero__dots button[aria-current=true]{background:#fff;transform:scale(1.35)}
@media(min-width:1024px){
.hero::before,.hero::after{content:"";position:absolute;top:0;bottom:0;width:13%;background:rgba(255,255,255,.55);z-index:3;pointer-events:none}
.hero::before{left:0}
.hero::after{right:0}
}

.band{background:linear-gradient(103deg,var(--brand-mid),var(--brand-bright));color:#fff;position:relative;overflow:hidden}
.band::before{content:"";position:absolute;inset:0;background-image:var(--leaf-pattern);background-size:260px;opacity:.9}
.band__in{position:relative;padding:clamp(34px,5vw,54px) 0;text-align:center}
.band__in p{margin:0;font-size:clamp(17px,2vw,21px);line-height:1.6;max-width:62ch;margin-inline:auto}
.band h2{color:#fff;text-transform:uppercase;letter-spacing:.06em;margin:0}
.band__sub{margin:.35em 0 0;font-size:clamp(16px,1.8vw,19px);opacity:.96}
.band--deep{background:var(--brand-deep)}
.band--deep::before{opacity:.45}
.band--deep .band__in{text-align:left}

.sect{padding:clamp(44px,6vw,78px) 0}
.sect--mist{background:var(--mist)}
.sect__head{text-align:center;margin-bottom:clamp(26px,4vw,44px)}
.sect__icon{width:62px;height:62px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;margin:0 auto 16px;box-shadow:var(--shadow-m)}
.sect__icon svg{width:28px;height:28px;fill:currentColor}
.sect__head h2{text-transform:uppercase;letter-spacing:.07em;margin:0}
.sect__head p{color:var(--ink-soft);margin:.5em auto 0;max-width:62ch}

.grid{--grid-gap:clamp(18px,2.4vw,28px);display:grid;gap:var(--grid-gap)}
.grid--2{grid-template-columns:repeat(2,1fr)}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--4{grid-template-columns:repeat(4,1fr)}
.grid--1{grid-template-columns:minmax(0,420px);justify-content:center}
.grid--1:has(.media-card){grid-template-columns:minmax(0,680px)}

.card{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);position:relative;display:flex;flex-direction:column;transition:transform .35s var(--ease),box-shadow .35s var(--ease),border-color .35s var(--ease)}
.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-m);border-color:#cfdbd0}
.card .stretch::after,.media-card .stretch::after{content:"";position:absolute;inset:0;border-radius:inherit;z-index:1}
.card__media{padding:22px 22px 0}
.card__media img{width:100%;aspect-ratio:1/1;object-fit:contain;background:#fff}
.card__body{padding:18px 22px 24px;text-align:center;display:flex;flex-direction:column;flex:1}
.card__body h3{font-size:19px;margin:0 0 .5em}
.card__body h3 a{color:var(--ink)}
.card__body p{color:var(--ink-soft);font-size:15px;margin:0 0 1em}
.card__price{font-family:var(--display);font-size:24px;color:var(--leaf);margin:auto 0 14px}
.card__price del{color:#9aa39c;font-size:16px;margin-right:8px}
.btn{display:inline-block;background:var(--brand);color:#fff;border:0;border-radius:var(--r-s);padding:11px 24px;font:inherit;font-size:15px;cursor:pointer;transition:background .25s var(--ease),transform .2s var(--ease)}
.btn:hover{background:var(--brand-bright);color:#fff;transform:translateY(-1px)}
.btn--ghost{background:transparent;color:var(--ink-soft);border:1px solid var(--line)}
.btn--ghost:hover{background:var(--brand);color:#fff;border-color:var(--brand)}
.btn--wide{width:100%;text-align:center}
.btn+.btn{margin-left:12px}
p .btn{margin-bottom:10px}
.card .btn{align-self:center}

.media-card{display:grid;align-items:start;grid-template-columns:minmax(0,38%) minmax(0,1fr);background:#fff;border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden;position:relative;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.media-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-m)}
.media-card__fig{position:relative;background:var(--mist-2)}
.media-card__fig img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;object-position:center}
.media-card__date{position:absolute;left:0;bottom:0;background:var(--brand);color:#fff;font-size:12.5px;padding:6px 13px;display:inline-flex;gap:7px;align-items:center;white-space:nowrap;border-radius:0 var(--r-s) 0 0;letter-spacing:.01em}
.media-card__body{padding:22px 24px;display:flex;flex-direction:column}
.media-card__body h3{margin:0 0 .4em;font-size:22px}
.media-card__body h3 a{color:var(--ink)}
.media-card__body p{color:var(--ink-soft);font-size:15px;margin:0 0 1.2em}
.media-card__body .btn{margin-top:auto;align-self:flex-end}
.media-card--plain{grid-template-columns:1fr}
.media-card__date svg{width:13px;height:13px;fill:currentColor;flex:none}
.media-card:has(.media-card__fig--ph){align-items:stretch}
.media-card__fig--ph{display:grid;place-items:center;min-height:150px;overflow:hidden;background:linear-gradient(120deg,var(--brand-deep),var(--brand) 58%,var(--brand-bright))}
.media-card__fig--ph::before{content:"";position:absolute;inset:0;background-image:var(--leaf-pattern);background-size:170px;opacity:.9}
.media-card__fig--ph::after{content:"";position:absolute;width:64%;aspect-ratio:1;right:-14%;top:-34%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,0) 68%);pointer-events:none}
.media-card__fig--ph>svg{margin:0}
.media-card__fig--ph>svg{position:relative;z-index:1;width:clamp(34px,4.6vw,52px);height:auto;fill:#fff;filter:drop-shadow(0 3px 10px rgba(0,0,0,.25))}
.media-card__fig--ph .media-card__date{z-index:2;background:#fff;color:var(--brand);font-weight:500}
.card__media--ph .ph{position:relative;display:grid;place-items:center;aspect-ratio:1/1;border-radius:var(--r-m);overflow:hidden;background:linear-gradient(135deg,#f4faf2,#e3f1de)}
.card__media--ph .ph::before{content:"";position:absolute;inset:0;background-image:var(--leaf-pattern);background-size:150px;filter:invert(1) hue-rotate(80deg);opacity:.18}
.card__media--ph .ph svg{position:relative;width:34%;height:auto;fill:var(--brand);opacity:.55}

.page-banner{position:relative;min-height:clamp(180px,26vw,300px);display:grid;align-items:center;background:var(--brand-deep) center/cover no-repeat;color:#fff}
.page-banner::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,52,24,.3),rgba(14,52,24,.6))}
.page-banner__in{position:relative;z-index:2;padding-block:clamp(28px,5vw,54px)}
.page-banner h1{color:#fff;margin:0;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.page-banner p{margin:.5em 0 0;color:rgba(255,255,255,.93);max-width:62ch}
.page-banner--flat{min-height:clamp(160px,18vw,236px);background:linear-gradient(103deg,var(--brand-deep) 0%,var(--brand) 54%,var(--brand-bright) 100%);overflow:hidden}
.page-banner--flat::before{content:"";position:absolute;inset:0;background-image:var(--leaf-pattern);background-size:260px;opacity:.85}
.page-banner--flat::after{background:radial-gradient(circle at 86% 18%,rgba(255,255,255,.2),rgba(255,255,255,0) 46%),var(--cross-mark) no-repeat right clamp(8px,6vw,96px) center/auto 84%}
.page-banner--flat h1{color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.22)}
.page-banner--flat p{color:rgba(255,255,255,.92)}
.page-banner .page-banner__kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 .85em;padding:5px 15px 5px 11px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(255,255,255,.12);font-size:12.5px;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.page-banner__kicker svg{width:15px;height:15px;fill:currentColor;flex:none}

.crumbs{background:var(--mist);border-bottom:1px solid var(--line)}
.crumbs ol{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:12px 0;font-size:14px;color:var(--ink-soft)}
.crumbs li{margin:0}
.crumbs li+li::before{content:"\203A";margin-right:8px;color:#a9b2ab}

.entry{padding:clamp(34px,5vw,64px) 0}
.entry__layout{display:grid;gap:clamp(24px,4vw,48px)}
@media(min-width:960px){.entry__layout--aside{grid-template-columns:minmax(0,1fr) 316px}}
.prose{max-width:74ch}
.prose--full{max-width:none}
.prose h2{margin-top:1.6em}
.prose h3{margin-top:1.4em}
.prose img{border-radius:var(--r-m);margin:1.5em 0}
.prose table{margin:1.5em 0;font-size:15px}
.prose th,.prose td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.prose thead th{background:var(--mist);font-family:var(--display);font-weight:400}
.prose tbody tr:nth-child(even){background:#fafbfa}
.prose blockquote{margin:1.5em 0;padding:18px 22px;background:var(--mist);border-radius:var(--r-m);color:var(--ink-soft);font-style:italic}
.prose figure{margin:1.5em 0}
.prose figcaption{font-size:14px;color:var(--ink-soft);margin-top:.5em}

.aside-box{background:var(--mist);border:1px solid var(--line);border-radius:var(--r-m);padding:22px 24px;margin-bottom:20px}
.aside-box h3{font-size:18px;margin:0 0 .6em}
.aside-box ul{list-style:none;padding:0;margin:0;font-size:15px}
.aside-box li{padding:7px 0;border-bottom:1px solid var(--line)}
.aside-box li:last-child{border:0}

.facts{margin:0 0 1.5em;border:1px solid var(--line);border-radius:var(--r-m);overflow:hidden}
.facts div{display:grid;grid-template-columns:minmax(120px,36%) 1fr}
.facts dt{background:var(--mist);padding:11px 14px;font-size:14px;color:var(--ink-soft)}
.facts dd{margin:0;padding:11px 14px;font-size:15px}
.facts div+div{border-top:1px solid var(--line)}

.hours{width:100%;font-size:15px}
.hours th{text-align:left;font-weight:400;font-family:var(--display);padding:10px 12px;border-bottom:1px solid var(--line)}
.hours td{text-align:right;padding:10px 12px;border-bottom:1px solid var(--line)}
.hours tr:last-child th,.hours tr:last-child td{border-bottom:0}

.reviews{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}
.review{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:20px 22px}
.review__stars{color:#f0a429;letter-spacing:2px;font-size:15px}
.review p{font-size:15px;margin:.6em 0 1em}
.review footer{font-size:14px;color:var(--ink-soft)}

.gallery-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;align-items:start}
.gallery-grid img{width:100%;height:auto;border-radius:var(--r-m)}

.staff-list{list-style:none;margin:0 0 1.15em;padding:0;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}
.staff-list li{background:var(--mist);border:1px solid var(--line);border-radius:var(--r-m);padding:16px 18px}
.staff-list strong{display:block;font-weight:500}
.staff-list span{font-size:14px;color:var(--ink-soft)}
@media(max-width:900px){.staff-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.staff-list{grid-template-columns:1fr}}
.map-figure{margin:0;background:var(--mist-2)}
.map-embed{border:0;width:100%;height:clamp(300px,42vw,460px);display:block}
.map-figure figcaption{width:min(100% - var(--gut)*2,var(--wrap));margin-inline:auto;padding:14px 0 18px;font-size:15px;color:var(--ink-soft)}
.map-figure figcaption strong{color:var(--ink);font-weight:500}

.newsletter{display:grid;gap:18px;align-items:center;padding:clamp(28px,4vw,46px) 0;position:relative;z-index:2}
@media(min-width:860px){.newsletter{grid-template-columns:1fr 1fr}}
.newsletter h2{color:#fff;text-transform:uppercase;letter-spacing:.05em;margin:0}
.newsletter p{margin:.3em 0 0;color:rgba(255,255,255,.88)}
.form-row{display:flex;gap:0}
.form-row input{flex:1;min-width:0;border:0;padding:15px 16px;font:inherit;border-radius:var(--r-s) 0 0 var(--r-s)}
.form-row button{border:0;background:#6f7a72;color:#fff;padding:0 20px;cursor:pointer;border-radius:0 var(--r-s) var(--r-s) 0;transition:background .25s var(--ease)}
.form-row button:hover{background:#0d2f14}
.form-note{font-size:13px;color:rgba(255,255,255,.85);margin:10px 0 0}
.form-note a{color:#fff;text-decoration:underline}

.contact-form{display:grid;gap:16px;grid-template-columns:1fr 1fr}
.contact-form label{display:block;font-size:14px;color:var(--ink-soft);margin-bottom:6px}
.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:var(--r-s);padding:14px 16px;font:inherit;background:#fff;transition:border-color .25s var(--ease),box-shadow .25s var(--ease)}
.contact-form input:focus,.contact-form textarea:focus{border-color:var(--leaf);box-shadow:0 0 0 3px rgba(91,178,56,.16);outline:none}
.contact-form .full{grid-column:1/-1}
.contact-form input[type=checkbox],.form-note input[type=checkbox]{width:auto;display:inline-block;margin:0 8px 0 0;vertical-align:middle}
.contact-form label input[type=checkbox]{vertical-align:-2px}

.site-foot{background:var(--brand-deep);color:#cfe0d1;padding:clamp(32px,4vw,52px) 0 0;font-size:15px}
.site-foot__grid{display:grid;gap:clamp(22px,4vw,44px);grid-template-columns:minmax(0,260px) minmax(0,1fr) minmax(0,270px);align-items:start}
.site-foot img{height:84px;width:auto}
.site-foot a{color:#cfe0d1}
.site-foot a:hover{color:#fff}
.site-foot h3,.site-foot .foot-h{color:#fff;font-size:17px;margin:0 0 .6em;font-family:var(--display);line-height:1.3}
.site-foot address{font-style:normal;line-height:1.85}
.site-foot__hours{text-align:right}
.site-foot__hours table{font-size:14.5px}
.site-foot__hours th,.site-foot__hours td{border-bottom:1px solid rgba(255,255,255,.1);padding:9px 12px;font-weight:400;font-family:var(--sans)}
.site-foot__hours th{text-align:left;color:#9ab39e}
.site-foot__hours td{text-align:right}
.site-foot__social{display:flex;gap:10px;margin-top:14px}
.site-foot__social a{width:34px;height:34px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:grid;place-items:center;transition:background .25s var(--ease),color .25s}
.site-foot__social a:hover{background:#fff;color:var(--brand-deep)}
.site-foot__social svg{width:15px;height:15px;fill:currentColor}
.site-foot__bar{margin-top:clamp(26px,4vw,42px);border-top:1px solid rgba(255,255,255,.12);padding:16px 0;font-size:13.5px;display:flex;flex-wrap:wrap;gap:10px 22px;justify-content:space-between;color:#9ab39e}
.site-foot__bar a{color:#9ab39e}

.pager{display:flex;gap:8px;justify-content:center;margin-top:34px;flex-wrap:wrap}
.pager a,.pager span{padding:9px 15px;border:1px solid var(--line);border-radius:var(--r-s);font-size:15px;color:var(--ink-soft);background:#fff}
.pager .current{background:var(--brand);border-color:var(--brand);color:#fff}

.chips{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0 0 1.5em}
.chips li{margin:0}
.chips a{display:inline-block;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-size:14.5px;color:var(--ink);transition:border-color .25s var(--ease),color .25s,background .25s}
.chips a:hover{border-color:var(--leaf);color:var(--brand);background:#f6fbf4}

.notice{background:#f6fbf4;border:1px solid #d6e9cf;border-radius:var(--r-m);padding:16px 18px;font-size:15px;margin:1.5em 0}
.notice strong{color:var(--brand)}
.disclaimer{background:var(--mist);border-radius:var(--r-m);padding:18px 20px;font-size:14px;color:var(--ink-soft);margin-top:2.4em}

.post-nav{display:grid;gap:16px;grid-template-columns:1fr 1fr;margin:2.6em 0 0}
.post-nav--top{margin:0 0 2.2em}
.post-nav__item{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:16px 20px;display:flex;flex-direction:column;gap:6px;min-width:0;transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s var(--ease)}
.post-nav__item:hover{transform:translateY(-3px);box-shadow:var(--shadow-m);border-color:#cfdbd0}
.post-nav__dir{font-family:var(--display);font-size:12.5px;text-transform:uppercase;letter-spacing:.07em;color:var(--brand)}
.post-nav__title{font-size:15.5px;color:var(--ink);line-height:1.4;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.post-nav__item--next{text-align:right;align-items:flex-end}
.post-nav__item--only{grid-column:1/-1}
@media(max-width:620px){.post-nav{grid-template-columns:1fr}.post-nav__item--next{text-align:left;align-items:flex-start}}

.price-table{width:100%;font-size:15px;margin:1.5em 0}
.price-wrap{overflow-x:auto;margin:1.5em 0}
.price-wrap .price-table{margin:0}
.price-table th,.price-table td{border:1px solid var(--line);padding:10px 8px;text-align:center}
.price-table thead th{background:var(--brand);color:#fff;font-family:var(--display);font-weight:400}
.price-table tbody th{text-align:left;font-weight:400;background:var(--mist);white-space:nowrap}
.price-table tbody tr:nth-child(even) td{background:#fafbfa}
@media(max-width:480px){.price-table{table-layout:fixed}.price-table th,.price-table td{padding:9px 6px;font-size:13px;word-break:break-word}}

.faq{margin:2em 0}
.faq details{border:1px solid var(--line);border-radius:var(--r-m);margin-bottom:10px;background:#fff;overflow:hidden}
.faq summary{cursor:pointer;padding:15px 18px;font-family:var(--display);font-size:17.5px;list-style:none;position:relative;padding-right:46px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:20px;top:50%;width:9px;height:9px;border-right:2px solid var(--brand);border-bottom:2px solid var(--brand);transform:translateY(-70%) rotate(45deg);transition:transform .3s var(--ease)}
.faq details[open] summary::after{transform:translateY(-30%) rotate(-135deg)}
.faq .faq__a{padding:0 18px 16px;font-size:15.4px;color:var(--ink-soft)}

.product-top{display:grid;gap:clamp(20px,3vw,38px);align-items:start}
@media(min-width:860px){.product-top{grid-template-columns:minmax(0,360px) minmax(0,1fr)}.product-top .product-shot{position:sticky;top:20px}}
.product-shot{border:1px solid var(--line);border-radius:var(--r-m);padding:18px;background:#fff}
.product-shot img{width:100%;height:auto;object-fit:contain}
.product-top h1{margin-top:0}
.lede{font-size:17.5px;color:var(--ink-soft)}

.js-reveal .reveal{opacity:0;transform:translateY(18px)}
.reveal.is-in{opacity:1;transform:none;transition:opacity .7s var(--ease),transform .7s var(--ease)}

@media(max-width:1299px){
.share-rail{display:none}
}
@media(max-width:1239px){
.nav a{font-size:13.5px}
.site-head__in{min-height:84px}
.brand img{height:50px}
}
@media(max-width:1099px){
.burger{display:block;order:2}
.nav{position:absolute;left:0;right:0;top:100%;background:var(--brand);display:none;margin:0;box-shadow:var(--shadow-l)}
.nav.is-open{display:block}
.nav ul{flex-direction:column;align-items:stretch;gap:0;padding:6px 0}
.nav li{border-top:1px solid rgba(255,255,255,.15)}
.nav a{padding:14px var(--gut);font-size:15px}
.nav a::after{display:none}
.head-social{order:1;margin-left:auto}
}
@media(max-width:900px){
.grid--3,.grid--4{grid-template-columns:repeat(2,1fr)}
.reviews{grid-template-columns:repeat(2,1fr)}
.site-foot__grid{grid-template-columns:1fr 1fr}
.site-foot__hours{text-align:left}
}
@media(max-width:700px){
.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}
.media-card{grid-template-columns:1fr}
.media-card__fig img{aspect-ratio:16/9}
.media-card__fig--ph{aspect-ratio:16/9;min-height:0}
.media-card__date{left:0;bottom:0}
.reviews,.gallery-grid{grid-template-columns:1fr}
.contact-form{grid-template-columns:1fr}
.site-foot__grid{grid-template-columns:1fr}
.facts div{grid-template-columns:1fr}
.facts dt{padding-bottom:2px}
.facts dd{padding-top:2px}
}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important}
.reveal{opacity:1;transform:none}
}
.wrap--rail{display:grid;grid-template-columns:238px minmax(0,1fr);gap:clamp(22px,3vw,40px);align-items:start}
.rail-h{font-size:clamp(21px,2.6vw,28px);text-transform:lowercase;letter-spacing:.01em;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--leaf);color:var(--brand)}
.cat-rail{position:sticky;top:94px;background:var(--mist);border:1px solid var(--line);border-radius:var(--r-m);padding:18px 18px 10px}
.cat-rail__top{margin:0 0 10px;font-family:var(--display);font-size:15px;letter-spacing:.06em}
.cat-rail__top a{color:var(--brand);text-transform:uppercase}
.cat-rail__top a:hover{color:var(--brand-bright)}
.cat-rail__toggle{display:none;margin:0 0 10px}
.cat-rail__btn{appearance:none;background:#fff;border:1px solid var(--line);border-radius:var(--r-s);color:var(--ink);font:inherit;font-size:14.5px;padding:9px 13px;width:100%;text-align:left;cursor:pointer}
.cat-rail__btn::before{content:"+";display:inline-block;width:16px;color:var(--leaf);font-weight:700}
.cat-rail__btn[aria-expanded="true"]::before{content:"–"}
.cat-rail__list{list-style:none;margin:0;padding:12px 0 0;border-top:1px solid var(--line)}
.cat-rail__list li{margin:0}
.cat-rail__list a{display:block;padding:8px 0;font-size:15px;color:var(--ink-soft);border-bottom:1px solid rgba(0,0,0,.05);transition:color .2s var(--ease),padding-left .2s var(--ease)}
.cat-rail__list a:hover{color:var(--brand);padding-left:5px}
.cat-rail__list li.is-here>a{color:var(--brand);font-weight:700}
.legacy-note{background:var(--mist);border:1px solid var(--line);border-radius:var(--r-m);padding:16px 20px;margin:0 0 18px;color:var(--ink-soft);font-size:15.5px}
.legacy-lead{border-left:3px solid var(--brand);padding:2px 0 2px 16px;margin:0 0 22px;color:var(--ink-soft);font-size:16.5px}
.legacy-lead p{margin:0 0 6px}
.legacy-lead p:last-child{margin:0}
.coupon-empty{margin:0;color:var(--ink-soft)}
.social-wide{display:grid;grid-template-columns:1fr auto;gap:18px 28px;align-items:center}
.social-wide h2{margin:0}
.social-wide p{margin:4px 0 0;color:var(--ink-soft);font-size:15px;letter-spacing:.04em;text-transform:uppercase}
.social-wide__links{display:flex;gap:12px}
.social-wide__links a{width:44px;height:44px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--brand);transition:transform .25s var(--ease),border-color .25s,background .25s}
.social-wide__links a:hover{transform:translateY(-2px);border-color:var(--leaf);background:#f6fbf4}
.social-wide__links svg{width:19px;height:19px}
@media(max-width:860px){
.wrap--rail{grid-template-columns:1fr}
.cat-rail{position:static}
.cat-rail__toggle{display:block}
.cat-rail__list{display:none}
.cat-rail__list.is-open{display:block}
.social-wide{grid-template-columns:1fr}
}
.reg-form{max-width:560px;margin:0 auto;background:#fff;border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--shadow-s);padding:clamp(22px,3vw,34px)}
.reg-form__h{text-transform:lowercase;font-size:clamp(23px,3vw,30px);margin:0 0 22px;padding-bottom:12px;border-bottom:2px solid var(--leaf);color:var(--brand)}
.reg-form__row{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;align-items:center;margin:0 0 14px}
.reg-form__row label{font-size:15px;color:var(--ink-soft)}
.reg-form__row input{width:100%;padding:11px 13px;border:1px solid var(--line);border-radius:var(--r-s);font:inherit;font-size:15.5px;background:var(--mist)}
.reg-form__row input:focus{outline:2px solid var(--leaf);outline-offset:1px;background:#fff}
.reg-form__note{margin:22px 0 12px;font-size:15px;color:var(--ink)}
.reg-form__priv{margin:18px 0;font-size:14.5px;color:var(--ink-soft)}
.reg-form__err{background:#fff4f4;border:1px solid #f3c7c3;padding:12px 16px;margin:0 0 18px;border-radius:var(--r-m)}
.reg-form__err p{margin:0 0 .4em;font-size:15px;color:#9c3229}
.reg-form__err p:last-child{margin:0}
.reg-form__login{margin:16px 0 0;font-size:14.5px;color:var(--ink-soft)}
@media(max-width:620px){.reg-form__row{grid-template-columns:1fr;gap:5px}}
.indice{margin:0 0 26px}
.indice__l{display:inline-grid;place-items:center;width:34px;height:34px;margin:0 0 12px;border-radius:50%;background:var(--brand);color:#fff;font-size:16px;line-height:1}
.indice__list{list-style:none;margin:0;padding:0;columns:2;column-gap:34px}
.indice__list li{break-inside:avoid;display:flex;justify-content:space-between;gap:14px;align-items:baseline;padding:7px 0;border-bottom:1px solid var(--line);margin:0}
.indice__list a{color:var(--ink);font-size:15.5px}
.indice__list a:hover{color:var(--brand)}
.indice__p{color:var(--ink-soft);font-size:14px;white-space:nowrap}
@media(max-width:620px){.indice__list{columns:1}}
.grid--flow{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--grid-gap)}
.grid--flow>*{flex:0 1 auto}
.grid--2.grid--flow>*{width:calc((100% - var(--grid-gap))/2)}
.grid--3.grid--flow>*{width:calc((100% - var(--grid-gap)*2)/3)}
.grid--4.grid--flow>*{width:calc((100% - var(--grid-gap)*3)/4)}
@media(max-width:900px){
.grid--3.grid--flow>*,.grid--4.grid--flow>*{width:calc((100% - var(--grid-gap))/2)}
}
@media(max-width:700px){
.grid--flow>*,.grid--2.grid--flow>*,.grid--3.grid--flow>*,.grid--4.grid--flow>*{width:100%}
}

.hero-card{padding:clamp(16px,2.6vw,30px) 0 clamp(10px,1.6vw,18px);background:#fff}
.hero-card__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);border-radius:22px;overflow:hidden;background:var(--brand-deep);box-shadow:var(--shadow-l)}
.hero-card__copy{position:relative;display:flex;flex-direction:column;justify-content:center;padding:clamp(26px,4.2vw,56px);color:#fff;background:linear-gradient(140deg,var(--brand-deep) 0%,var(--brand) 78%)}
.hero-card__copy::before{content:"";position:absolute;inset:0;background-image:var(--leaf-pattern);background-size:230px;opacity:.7;pointer-events:none}
.hero-card__copy>*{position:relative}
.hero-card .hero-card__kicker{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin:0 0 1.1em;padding:5px 15px 5px 11px;border:1px solid rgba(255,255,255,.4);border-radius:999px;background:rgba(255,255,255,.12);font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;line-height:1.4}
.hero-card__kicker svg{width:15px;height:15px;fill:currentColor}
.hero-card h1{color:#fff;font-size:clamp(32px,4.2vw,52px);line-height:1.08;letter-spacing:-.02em;margin:0 0 .4em}
.hero-card__lead{font-size:clamp(16px,1.5vw,18.5px);line-height:1.6;max-width:36ch;margin:0;color:rgba(255,255,255,.94)}
.hero-card__cta{display:flex;flex-wrap:wrap;gap:12px;margin:1.5em 0 0}
.hero-card__cta .btn+.btn{margin-left:0}
.btn--light{background:#fff;color:var(--brand)}
.btn--light:hover{background:#eaf6e6;color:var(--brand-deep)}
.btn--line{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.7)}
.btn--line:hover{background:rgba(255,255,255,.16);color:#fff}
.hero-card__facts{list-style:none;display:flex;flex-wrap:wrap;gap:6px 22px;margin:1.6em 0 0;padding:0;font-size:14px;color:rgba(255,255,255,.92)}
.hero-card__facts li{margin:0}
.hero-card__facts a{color:#fff}
.hero-card__star{color:#ffd54a}
.hero-card__media{position:relative;min-height:clamp(260px,32vw,440px);background:#dfe3df}
.hero-card .hero__track{position:absolute;inset:0}
.hero-card .hero__slide{position:absolute;inset:0}
.hero-card .hero__slide img{width:100%;height:100%;object-fit:cover;object-position:center}
.hero-card .hero__btn{width:40px;height:40px}
.intro{background:var(--mist);padding:clamp(30px,4.4vw,52px) 0}
.intro__in{text-align:center}
.intro__in p{margin:0 auto;max-width:64ch;font-size:clamp(16.5px,1.9vw,19.5px);line-height:1.7;color:var(--ink-soft)}
@media(max-width:860px){
.hero-card__grid{grid-template-columns:1fr;border-radius:18px}
.hero-card__media{order:-1;min-height:0;height:clamp(210px,56vw,320px)}
.hero-card__lead{max-width:none}
}
.product-top .prose h2{font-size:clamp(20px,2.2vw,26px);margin:1.5em 0 .5em}
.product-top .prose h2:first-child{margin-top:0}
.product-top .prose ul{padding-left:1.2em}

/* Farmacia online: striscia con i punti chiave, passaggi numerati, schede sezione con foto */
.shop-facts{background:#fff;border-bottom:1px solid var(--line)}
.shop-facts__grid{display:grid;grid-template-columns:1fr 1fr 1.3fr auto;gap:0;align-items:stretch}
.shop-fact{display:flex;align-items:center;gap:13px;padding:20px 18px;border-left:1px solid var(--line)}
.shop-fact:first-child{border-left:0;padding-left:0}
.shop-fact svg{flex:none;width:30px;height:30px;fill:var(--brand);background:var(--mist-2);border-radius:50%;padding:7px;box-sizing:content-box}
.shop-fact strong{display:block;font-family:var(--display);font-weight:400;font-size:17px;color:var(--ink);line-height:1.25}
.shop-fact span{display:block;font-size:13.5px;color:var(--ink-soft);line-height:1.4}
.shop-fact--cta{gap:10px;flex-wrap:nowrap;white-space:nowrap;justify-content:flex-end;padding-right:0}
.shop-fact--cta .btn{padding:10px 18px;font-size:14.5px}
.shop-fact--cta .btn+.btn{margin-left:0}
.prose--shop ol{list-style:none;counter-reset:step;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:0;margin:1.2em 0 2em}
.prose--shop ol>li{counter-increment:step;position:relative;background:var(--mist);border:1px solid var(--line);border-radius:var(--r-m);padding:58px 18px 20px;font-size:15px;line-height:1.55;margin:0}
.prose--shop ol>li::before{content:counter(step);position:absolute;left:18px;top:16px;width:32px;height:32px;border-radius:50%;background:var(--brand);color:#fff;display:grid;place-items:center;font-family:var(--display);font-size:17px}
.card--cat{overflow:hidden}
.card--cat__media{position:relative;display:grid;place-items:center;height:190px;background:linear-gradient(135deg,#f4faf2,#e3f1de);overflow:hidden}
.card--cat__media::before{content:"";position:absolute;inset:0;background-image:var(--leaf-pattern);background-size:150px;filter:invert(1) hue-rotate(80deg);opacity:.14}
.card--cat__media img{position:relative;width:auto;max-width:80%;height:166px;aspect-ratio:auto;object-fit:contain;border-radius:6px;filter:drop-shadow(0 8px 14px rgba(19,64,28,.18));transition:transform .45s var(--ease)}
.card--cat:hover .card--cat__media img{transform:scale(1.05)}
.card--cat__media svg{position:relative;width:76px;height:76px;fill:var(--brand);opacity:.5}
.card--cat__media--ph{background:linear-gradient(135deg,var(--brand-deep),var(--brand))}
.card--cat__media--ph svg{fill:#fff;opacity:.85}
.card--cat__count{position:absolute;left:12px;top:12px;z-index:2;background:var(--brand);color:#fff;border-radius:999px;padding:3px 12px;font-size:12.5px;letter-spacing:.02em}
.card--cat .card__body p{margin-bottom:.8em}
.card--cat__go{margin-top:auto;color:var(--brand);font-size:14.5px;font-weight:600}
@media (max-width:1000px){.shop-facts__grid{grid-template-columns:1fr 1fr}.shop-fact{border-left:0;padding-left:0}.shop-fact--cta{justify-content:flex-start;grid-column:1/-1}.prose--shop ol{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.shop-facts__grid{grid-template-columns:1fr}.prose--shop ol{grid-template-columns:1fr}.card--cat__media{height:160px}}

/* Indice dei contenuti nelle schede */
html{scroll-behavior:smooth}
.prose h2[id],.prose h3[id]{scroll-margin-top:24px}
.toc{background:var(--mist);border:1px solid var(--line);border-radius:var(--r-m);padding:20px 24px;margin:0 0 2.2em}
.toc__title{font-family:var(--display);font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:var(--brand);margin:0 0 .8em}
.toc__list{list-style:none;margin:0;padding:0;columns:2;column-gap:36px}
.toc__item{break-inside:avoid;padding:5px 0;font-size:15px;line-height:1.4}
.toc__item--h3{padding-left:16px;font-size:14px}
.toc__item a{color:var(--ink);text-decoration:none;transition:color .2s var(--ease)}
.toc__item a:hover{color:var(--brand);text-decoration:underline}
@media(max-width:700px){.toc__list{columns:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Elenco farmaci: footer e pagina Farmacia online */
.foot-cat{margin-top:clamp(26px,4vw,40px);border-top:1px solid rgba(255,255,255,.12);padding-top:clamp(22px,3vw,32px)}
.foot-cat__grid{display:grid;gap:18px 28px;grid-template-columns:repeat(auto-fill,minmax(190px,1fr))}
.site-foot .foot-cat__h{display:block;color:#fff;font-family:var(--display);font-size:14.5px;margin-bottom:6px}
.foot-cat ul{list-style:none;margin:0;padding:0;font-size:13.5px;line-height:1.75}
.site-foot .foot-cat li a{color:#9ab39e}
.site-foot .foot-cat li a:hover{color:#fff}
.cat-index{margin-top:clamp(34px,5vw,56px)}
.cat-index__grid{display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.cat-index__box{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:18px 20px}
.cat-index__box h3{font-size:17px;margin:0 0 .5em}
.cat-index__box h3 a{color:var(--ink)}
.cat-index__box h3 a:hover{color:var(--brand)}
.cat-index__box ul{list-style:none;margin:0;padding:0;font-size:15px}
.cat-index__box li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}
.cat-index__box li:last-child{border-bottom:0}
.cat-index__box li span{color:var(--brand);white-space:nowrap;font-size:14px}

/* Banner informativa cookie */
.cookie-bar{position:fixed;left:16px;bottom:16px;z-index:200;max-width:640px;display:flex;gap:16px 22px;align-items:center;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:var(--r-m);box-shadow:var(--shadow-l);padding:16px 20px;font-size:14.5px;line-height:1.55;color:var(--ink)}
.cookie-bar[hidden]{display:none}
.cookie-bar p{margin:0;flex:1 1 320px}
.cookie-bar a{color:var(--brand);text-decoration:underline}
.cookie-bar__btns{display:flex;gap:10px;flex:0 0 auto}
.cookie-bar .btn{cursor:pointer}
@media(max-width:620px){.cookie-bar{left:10px;right:10px;bottom:10px;max-width:none}}

/* Recensioni sulle schede */
.rv-box{margin:3em 0 0;padding-top:2em;border-top:1px solid var(--line)}
.rv-box h2{margin-top:0}
.rv-box h3{margin:1.6em 0 .6em}
.rv-note{padding:12px 16px;border-radius:var(--r-m);margin:0 0 1.2em}
.rv-note--ok{background:var(--mist);border:1px solid var(--line);color:var(--ink)}
.rv-list{display:grid;gap:14px;margin:0 0 1em}
.rv-item{background:#fff;border:1px solid var(--line);border-radius:var(--r-m);padding:16px 20px}
.rv-item p{margin:0}
.rv-item__stars{color:#e3a008;font-size:18px;letter-spacing:2px}
.rv-item__meta{font-size:14px;color:var(--ink-soft);margin:.2em 0 .6em!important}
.rv-item__text p{margin:.4em 0 0}
.rv-empty{color:var(--ink-soft)}
.rv-form{max-width:720px}
.rv-form p{margin:0 0 14px}
.rv-form label{display:block;font-weight:500;margin-bottom:5px;font-size:15px}
.rv-form small{font-weight:400;color:var(--ink-soft)}
.rv-form input[type=text],.rv-form input[type=email],.rv-form textarea{width:100%;padding:11px 13px;border:1px solid #cfd6cf;border-radius:var(--r-s);font:inherit;background:#fff}
.rv-form input:focus,.rv-form textarea:focus{outline:2px solid var(--brand);outline-offset:1px}
.rv-form__row{display:grid;gap:0 16px;grid-template-columns:1fr 1fr}
.rv-form__hint{font-size:13.5px;color:var(--ink-soft)}
.rv-check label{font-weight:400;display:block;font-size:14px;line-height:1.55}
.rv-check input{margin:0 8px 0 0;vertical-align:-2px}
.rv-hp{position:absolute!important;left:-9999px;height:0;overflow:hidden}
.rv-rating{border:0;margin:0 0 14px;padding:0}
.rv-rating legend{font-weight:500;font-size:15px;margin-bottom:4px;padding:0}
.rv-rating__stars{display:inline-flex;flex-direction:row-reverse;justify-content:flex-end}
.rv-rating__stars input{position:absolute;opacity:0;width:1px;height:1px}
.rv-rating__stars label{font-size:34px;line-height:1;color:#cfd6cf;cursor:pointer;padding:0 3px;margin:0;transition:color .15s}
.rv-rating__stars label:hover,.rv-rating__stars label:hover~label,.rv-rating__stars input:checked~label{color:#e3a008}
.rv-rating__stars input:focus-visible+label{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}
@media(max-width:620px){.rv-form__row{grid-template-columns:1fr}}

/* === Layout articolo, indice, in breve, tabella prezzi (aggiunto 2026-10-13) === */
.prose h2[id]{scroll-margin-top:24px}
.sf-toc{margin:1.8em 0 2.2em;background:var(--mist);border:1px solid var(--line);border-left:4px solid var(--brand);border-radius:var(--r-m);padding:16px 22px}
.sf-toc summary{cursor:pointer;font-family:var(--display);font-weight:500;font-size:17px;color:var(--ink);list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px}
.sf-toc summary::-webkit-details-marker{display:none}
.sf-toc summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--brand);border-bottom:2px solid var(--brand);transform:rotate(45deg);margin-top:-4px;transition:transform .2s}
.sf-toc details[open] summary::after{transform:rotate(-135deg);margin-top:4px}
.sf-toc ol{margin:12px 0 2px;padding-left:1.3em;counter-reset:none}
.sf-toc li{margin:0;padding:5px 0;font-size:15.5px;line-height:1.45}
.sf-toc li::marker{color:var(--brand);font-weight:600}
.sf-toc a{color:var(--ink);text-decoration:none;border-bottom:1px solid transparent}
.sf-toc a:hover{color:var(--brand);border-bottom-color:currentColor}
.prose .in-breve{margin:1em 0 1.4em;padding:16px 20px;background:#eef6ef;border-left:4px solid var(--brand);border-radius:var(--r-m);font-style:normal;color:var(--ink);font-size:16px;line-height:1.6}
.prose .in-breve p{margin:0}
.prose .in-breve strong{color:var(--brand)}
.prose .checklist{list-style:none;padding:0;margin:1em 0 1.4em}
.prose .checklist li{position:relative;padding:0 0 0 30px;margin:0 0 .7em}
.prose .checklist li::before{content:"";position:absolute;left:0;top:.3em;width:18px;height:18px;border-radius:50%;background:#c62828;}
.prose .checklist li::after{content:"!";position:absolute;left:0;top:.3em;width:18px;line-height:18px;text-align:center;color:#fff;font-size:12px;font-weight:700}
.cmp-table td{text-align:left;vertical-align:top}
.cmp-table td:first-child{font-weight:600;white-space:nowrap}
@media(max-width:620px){.cmp-table td:first-child{white-space:normal}.sf-toc{padding:14px 16px}}
@media(max-width:620px){.cmp-table,.cmp-table tbody,.cmp-table tr,.cmp-table td{display:block;width:100%}.cmp-table{table-layout:auto}.cmp-table thead{display:none}.cmp-table tr{border:1px solid var(--line);border-radius:var(--r-m);margin:0 0 14px;overflow:hidden;background:#fff}.cmp-table tbody tr:nth-child(even) td{background:transparent}.cmp-table td{border:0;padding:8px 14px;font-size:15px}.cmp-table td::before{content:attr(data-label);display:block;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);font-weight:500;margin-bottom:2px}.cmp-table td:first-child{background:var(--brand)!important;color:#fff;font-size:16px}.cmp-table td:first-child::before{display:none}}
.post-hero{position:relative;overflow:hidden;color:#fff;background:linear-gradient(103deg,var(--brand-deep) 0%,var(--brand) 60%,var(--brand-bright) 100%)}
.post-hero::before{content:"";position:absolute;inset:0;background-image:var(--leaf-pattern);background-size:260px;opacity:.5;pointer-events:none}
.post-hero__grid{position:relative;display:grid;gap:clamp(22px,4vw,48px);align-items:center;padding-block:clamp(26px,4.5vw,56px)}
@media(min-width:900px){.post-hero__grid{grid-template-columns:minmax(0,1fr) minmax(300px,420px)}}
.post-hero h1{color:#fff;margin:0 0 .6em;font-size:clamp(26px,3.4vw,40px);line-height:1.2;text-shadow:0 2px 14px rgba(0,0,0,.2)}
.post-hero__crumbs ol{list-style:none;margin:0 0 18px;padding:0;font-size:13.5px;line-height:1.6;color:rgba(255,255,255,.82)}
.post-hero__crumbs li{display:inline;margin:0}
.post-hero__crumbs li+li::before{content:"\203A";margin:0 7px;color:rgba(255,255,255,.6)}
.post-hero__crumbs a{color:#fff;text-decoration:underline;text-decoration-color:rgba(255,255,255,.4);text-underline-offset:3px}
.post-hero__crumbs a:hover{text-decoration-color:#fff}
.post-hero__kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 .9em;padding:5px 15px 5px 11px;border:1px solid rgba(255,255,255,.42);border-radius:999px;background:rgba(255,255,255,.12);font-size:12.5px;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:#fff}
.post-hero__kicker svg{width:15px;height:15px;fill:currentColor;flex:none}
.post-hero__meta{display:flex;gap:9px;align-items:flex-start;margin:0 0 .45em;font-size:14.5px;line-height:1.5;color:rgba(255,255,255,.92)}
.post-hero__meta svg{width:16px;height:16px;fill:currentColor;flex:none;margin-top:2px;opacity:.85}
.post-hero__media{background:#fff;border-radius:var(--r-l);padding:clamp(12px,2vw,22px);box-shadow:0 18px 40px rgba(0,0,0,.22)}
.post-hero__media img{display:block;width:100%;height:auto;max-height:380px;object-fit:contain;margin:0 auto}
@media(max-width:899px){.post-hero__media{max-width:400px}}
.post-aside{display:grid;gap:22px;align-content:start}
@media(min-width:960px){.post-aside{position:sticky;top:20px}}
.post-card{background:var(--mist);border:1px solid var(--line);border-radius:var(--r-m);padding:20px}
.post-card__t{font-family:var(--display);font-size:17px;font-weight:500;color:var(--ink);margin:0 0 12px}
.post-card__row{display:flex;gap:10px;align-items:flex-start;margin:0 0 9px;font-size:14.5px;line-height:1.5;color:var(--ink-soft)}
.post-card__row svg{width:17px;height:17px;fill:var(--brand);flex:none;margin-top:2px}
.post-card__row a{color:var(--ink)}
.post-card__hours{width:100%;margin:10px 0 16px;font-size:13.5px;border-collapse:collapse}
.post-card__hours th,.post-card__hours td{padding:4px 0;border:0;border-bottom:1px solid var(--line);text-align:left;font-weight:400;vertical-align:top;background:none}
.post-card__hours td{text-align:right;color:var(--ink-soft)}
.post-card__note{margin:12px 0 0;font-size:13.5px;line-height:1.5;color:var(--ink-soft)}
.post-card--links ul{list-style:none;margin:0;padding:0}
.post-card--links li{margin:0;padding:8px 0;border-bottom:1px solid var(--line);font-size:14.5px;line-height:1.4}
.post-card--links li:last-child{border-bottom:0}
.post-card--links a{color:var(--ink)}
.post-card--links a:hover{color:var(--brand)}
.post-card__more{display:inline-block;margin-top:10px;font-size:14px;font-weight:500;color:var(--brand)}
.price-table .price-unit{display:block;margin-top:2px;font-size:12.5px;color:var(--ink-soft)}
.price-note{font-size:13.5px;color:var(--ink-soft);margin:-.6em 0 1.4em}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.entry__layout>*{min-width:0}

/* Card "Altre novità" a 3 colonne (2026-10-14): immagine sopra a tutta larghezza e intera (le confezioni non vanno tagliate), titolo più compatto, pulsante sempre in fondo. */
.grid--3>.media-card{display:flex;flex-direction:column;align-items:stretch;height:100%}
.grid--3>.media-card .media-card__fig{background:#fff;border-bottom:1px solid var(--line)}
.grid--3>.media-card .media-card__fig img{aspect-ratio:16/10;object-fit:contain;padding:14px;background:#fff}
.grid--3>.media-card .media-card__fig--ph{aspect-ratio:16/10}
.grid--3>.media-card .media-card__body{flex:1;padding:20px 22px 22px}
.grid--3>.media-card .media-card__body h3{font-size:19px;line-height:1.35;margin:0 0 .8em}
.grid--3>.media-card .media-card__body .btn{margin-top:auto;align-self:flex-start}
