/* Direction B: Modern consumer health brand. Cream, deep emerald and apricot; Bricolage Grotesque with Inter Tight. */
@font-face{font-family:"Bricolage Grotesque";src:url(/fonts/bricolage-grotesque-latin-wght-normal.woff2) format("woff2");font-weight:200 800;font-display:swap}
@font-face{font-family:"Inter Tight";src:url(/fonts/inter-tight-latin-wght-normal.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{
  --cream:#FBF6EE;--cream-2:#F3EADC;--white:#FFFEFB;--ink:#1B1A17;--text:#34322D;--muted:#625D55;--line:#E6DCCC;
  --em:#0E5644;--em-2:#0A4033;--em-ink:#D5E9E0;--em-soft:#DCEDE5;--ap:#F4B183;--ap-soft:#FBE4D0;--ap-ink:#7A3B12;--butter:#F5E6B8;
  --paper:var(--cream);--paper-2:var(--cream-2);--green:var(--em);--green-2:var(--em-2);--clay:var(--ap-ink);
  --serif:"Bricolage Grotesque",system-ui,sans-serif;--sans:"Inter Tight",system-ui,sans-serif;
  --r-xl:28px;--r-lg:20px;--r-md:14px;--sh:0 1px 2px rgba(27,26,23,.05),0 10px 30px -14px rgba(27,26,23,.22);--sh-lg:0 2px 6px rgba(27,26,23,.04),0 30px 70px -30px rgba(14,86,68,.45);
  --w:1240px
}
body{background:var(--cream);color:var(--text);font:400 1.04rem/1.6 var(--sans)}
h1,h2,h3{font-family:var(--serif);color:var(--ink);font-weight:650;letter-spacing:-.02em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.ic{width:1.25em;height:1.25em;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:-.25em}
.ic-sm{width:1.05em;height:1.05em}.ic-xs{width:.9em;height:.9em}
.preview-bar{background:var(--ink);color:#EEE6DA}
/* header: floating pill */
.hd{position:sticky;top:10px;z-index:30;padding:10px var(--gut) 0}
.hd-bar{max-width:var(--w);margin:0 auto;display:flex;align-items:center;gap:1.5rem;background:var(--white);border-radius:999px;padding:.55rem .6rem .55rem 1.1rem;box-shadow:var(--sh);border:1px solid rgba(27,26,23,.05)}
.hd-brand{text-decoration:none;margin-right:auto}
.logo{display:inline-flex;align-items:center;gap:.6rem;color:var(--em)}
.logo-mark{width:38px;height:38px;color:var(--em)}
.logo-type{display:flex;flex-direction:column;line-height:1}
.logo-name{font:700 1.5rem/1 var(--serif);letter-spacing:-.04em;color:var(--ink)}
.logo-name .lt{font-weight:400;color:var(--em)}
.logo-tag{font:500 .7rem/1.2 var(--sans);color:var(--muted);margin-top:.28rem;letter-spacing:.01em}
.hd-nav{display:flex;gap:.2rem}
.hd-nav a{color:var(--ink);text-decoration:none;font-weight:500;font-size:.95rem;padding:.6rem .9rem;border-radius:999px;transition:background .2s}
.hd-nav a:hover,.hd-nav a[aria-current]{background:var(--cream-2)}
.hd-menu{display:none}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--em);color:#fff;font:600 1rem/1 var(--sans);border:0;border-radius:999px;padding:1rem 1.5rem;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s}
.btn:hover{background:var(--em-2);color:#fff;transform:translateY(-1px)}
.btn-sm{padding:.75rem 1.15rem;font-size:.92rem}.btn-block{width:100%}
.btn-light{background:var(--ap);color:var(--ink)}.btn-light:hover{background:#F7C29C;color:var(--ink)}
.badge{display:inline-flex;align-items:center;gap:.45rem;background:var(--em-soft);color:var(--em-2);font-weight:600;font-size:.86rem;border-radius:999px;padding:.45rem .9rem;margin:0 0 1.4rem}
.lede{font-size:1.2rem;line-height:1.55;color:var(--text)}
.link-arrow{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:var(--em);text-decoration:none}
.link-arrow:hover .ic{transform:translateX(3px)}.link-arrow .ic{transition:transform .2s}
.credit{font-size:.78rem;color:var(--muted);margin-top:1.2rem}
.cqc{color:var(--em);font-weight:600}
/* hero */
.hero{padding:clamp(48px,7vw,104px) 0 clamp(40px,5vw,72px);position:relative;overflow:hidden}
.hero::before{content:"";position:absolute;width:620px;height:620px;border-radius:50%;background:var(--ap-soft);right:-160px;top:120px;z-index:0}
.hero::after{content:"";position:absolute;width:280px;height:280px;border-radius:50%;background:var(--em-soft);left:-90px;top:420px;z-index:0}
.hero .wrap{position:relative;z-index:1}
.hero-copy{text-align:center;max-width:860px;margin:0 auto clamp(32px,4vw,56px)}
.hero h1{font-size:clamp(3rem,7.6vw,6.6rem);line-height:.94;letter-spacing:-.045em;margin:0 0 1.4rem;font-weight:700}
.hl{position:relative;white-space:nowrap;color:var(--em)}
.hl::after{content:"";position:absolute;left:-.04em;right:-.04em;bottom:.06em;height:.2em;background:var(--ap);z-index:-1;border-radius:4px}
.hero .lede{max-width:40rem;margin:0 auto}
/* comparison tool */
.tool{max-width:1060px;margin:0 auto;background:var(--white);border-radius:var(--r-xl);box-shadow:var(--sh-lg);border:1px solid rgba(27,26,23,.05);overflow:hidden}
.tool-head{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:1rem;border-bottom:1px solid var(--line);flex-wrap:wrap}
.seg [role=tablist]{display:flex;gap:.3rem;background:var(--cream);border-radius:999px;padding:.3rem;flex-wrap:wrap}
.seg [role=tab]{display:inline-flex;align-items:center;gap:.45rem;border:0;background:transparent;font:600 .92rem/1 var(--sans);color:var(--text);padding:.7rem 1rem;border-radius:999px;cursor:pointer;transition:background .2s,color .2s}
.seg [role=tab]:hover{background:var(--cream-2)}
.seg [role=tab][aria-selected=true]{background:var(--em);color:#fff}
.city-sel{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--line);border-radius:999px;padding:0 .4rem 0 .9rem;color:var(--em)}
.city-sel select{appearance:none;-webkit-appearance:none;border:0;background:transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230E5644' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right .5rem center/15px;font:600 .92rem/1 var(--sans);color:var(--ink);padding:.8rem 2rem .8rem .2rem;cursor:pointer}
.tool-cols{display:grid;grid-template-columns:1.1fr 1.4fr .6fr;gap:1.5rem;padding:.8rem 1.6rem;font-size:.74rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--line)}
.tool-cols span:last-child{text-align:right}
.rows{list-style:none;margin:0;padding:0}
.rows li{display:grid;grid-template-columns:1.1fr 1.4fr .6fr;gap:1.5rem;align-items:center;padding:1.15rem 1.6rem;border-bottom:1px solid var(--line);transition:background .2s}
.rows li:hover{background:#FDF9F2}
.rows li[hidden]{display:none}
.r-prov b{display:block;font:650 1.08rem/1.25 var(--serif);letter-spacing:-.01em}
.r-prov b a{color:var(--ink);text-decoration:none}.r-prov b a:hover{color:var(--em);text-decoration:underline}
.r-prov>span{display:flex;align-items:center;gap:.3rem;flex-wrap:wrap;font-size:.84rem;color:var(--muted);margin-top:.25rem}
.r-item{font-size:.94rem;color:var(--ink)}
.r-item a{display:inline-flex;align-items:center;gap:.25rem;margin-left:.6rem;font-size:.82rem;font-weight:600}
.r-chk{display:block;font-size:.8rem;color:var(--muted)}
.rows-page .r-item a{margin-left:0;margin-top:.2rem}
.r-basis{display:block;font-size:.84rem;color:var(--muted);margin:.2rem 0}
.r-price{text-align:right;display:flex;flex-direction:column;align-items:flex-end}
.r-price b{display:inline-block;font:700 1.55rem/1 var(--serif);letter-spacing:-.02em;color:var(--em-2);background:var(--em-soft);border-radius:12px;padding:.5rem .75rem;font-variant-numeric:tabular-nums}
.r-price small{font-size:.76rem;color:var(--muted);margin-bottom:.25rem}
.r-price b+small{margin:.35rem 0 0;max-width:10rem}
.r-empty{padding:1.4rem 1.6rem;background:var(--cream)}.r-empty p{margin:0}
.tool-foot{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1rem 1rem 1.6rem;background:var(--cream)}
.tool-foot p{margin:0;font-weight:600;color:var(--ink)}
/* ticks */
.ticks ul{list-style:none;margin:0;padding:1.4rem 0 0;display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 2rem}
.ticks li{display:flex;align-items:center;gap:.5rem;font-weight:500;color:var(--ink);font-size:.95rem}
.ticks .ic{color:var(--em)}
/* sections */
.sec{padding:clamp(56px,7vw,112px) 0}
.sec-tint{background:var(--cream-2)}
.sec-h{font-size:clamp(2.2rem,4.6vw,3.8rem);line-height:1;letter-spacing:-.04em;margin:0 0 2.2rem;font-weight:700}
.sec-h span{color:var(--em)}
.sec-row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.bento{display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:auto auto;gap:16px}
.bt{border-radius:var(--r-lg);padding:1.6rem;margin:0;display:flex;flex-direction:column}
.bt p{margin:0}
.bt-k{display:flex;align-items:center;gap:.45rem;font-weight:600;font-size:.9rem;margin-bottom:auto!important;padding-bottom:2.2rem}
.bt-fig{font:700 clamp(2.8rem,5vw,4.4rem)/.95 var(--serif);letter-spacing:-.045em;margin-bottom:.7rem!important}
.bt-em{background:var(--em);color:var(--em-ink);grid-column:span 2}.bt-em .bt-fig{color:#fff}
.bt-ap{background:var(--ap);color:var(--ink)}
.bt-cr{background:var(--white);border:1px solid var(--line)}
.bt-wh{background:var(--butter);color:var(--ink)}.bt-wh a{color:var(--ink);font-weight:600}
.bt-ph{grid-row:span 2;padding:0;overflow:hidden;position:relative;min-height:300px}
.bt-ph img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.bt-ph figcaption{position:absolute;left:10px;bottom:10px;background:rgba(255,254,251,.92);border-radius:999px;font-size:.72rem;padding:.3rem .7rem;color:var(--muted)}
.bento .bt-cr{grid-column:span 1}.bento .bt-wh{grid-column:span 2}
.bt-cr .bt-fig,.bt-ap .bt-fig{font-size:clamp(2.4rem,3.6vw,3.4rem)}
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.steps li{background:var(--white);border-radius:var(--r-lg);padding:1.8rem;border:1px solid var(--line)}
.st-n{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--ap);font:700 1.3rem/1 var(--serif);color:var(--ink);margin-bottom:1.6rem}
.steps h3{font-size:1.5rem;line-height:1.1;margin:0 0 .5rem}.steps p{margin:0;color:var(--muted)}
.tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.tiles a{display:flex;flex-direction:column;gap:1.6rem;background:var(--white);border:1px solid var(--line);border-radius:var(--r-lg);padding:1.3rem;text-decoration:none;color:var(--ink);transition:transform .25s,box-shadow .25s;position:relative;height:100%}
.tiles a:hover{transform:translateY(-3px);box-shadow:var(--sh)}
.ti-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--em-soft);color:var(--em)}.ti-ic .ic{width:26px;height:26px}
.ti-t b{display:block;font:650 1.25rem/1.15 var(--serif);letter-spacing:-.02em}.ti-t span{font-size:.9rem;color:var(--muted)}
.ti-go{position:absolute;right:1.2rem;top:1.5rem;color:var(--em);transition:transform .2s}.tiles a:hover .ti-go{transform:translateX(3px)}
.cities-b{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.cities-b a{display:block;text-decoration:none;color:var(--ink)}
.cities-b img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--r-lg);display:block;margin-bottom:.7rem;transition:transform .3s}
.cities-b a:hover img{transform:scale(.98)}
.cities-b b{display:block;font:650 1.15rem/1.2 var(--serif)}.cities-b span{font-size:.86rem;color:var(--muted)}
.faq-wrap{display:grid;grid-template-columns:1fr 1.4fr;gap:3rem;align-items:start}
.faq details{background:var(--white);border-radius:var(--r-md);margin-bottom:10px;border:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:1.2rem 1.4rem;font:650 1.12rem/1.3 var(--serif);color:var(--ink);display:flex;justify-content:space-between;gap:1rem}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:400 1.5rem/1 var(--sans);color:var(--em);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0;padding:0 1.4rem 1.3rem;color:var(--text)}
/* footer */
.ft{background:var(--em-2);color:var(--em-ink);padding:clamp(56px,7vw,96px) 0 32px;margin-top:0}
.ft a{color:#fff;text-decoration:none}.ft p a{text-decoration:underline}
.ft .logo-tag{color:#BCD6CB}.ft a:hover{text-decoration:underline}
.ft-top{display:grid;grid-template-columns:1.1fr 1.4fr;gap:3rem}
.ft-big{font:700 clamp(2.4rem,4.4vw,3.6rem)/1 var(--serif);letter-spacing:-.04em;color:#fff;margin:0 0 1.6rem}
.ft-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}
.ft h2{font:600 .78rem/1 var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--ap);margin:0 0 1rem}
.ft ul{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.ft-mark{margin:clamp(48px,6vw,80px) 0 2rem;padding-top:2rem;border-top:1px solid rgba(213,233,224,.2)}
.logo-xl .logo-mark{width:clamp(64px,9vw,120px);height:clamp(64px,9vw,120px);color:var(--em)}
.logo-xl .logo-name{font-size:clamp(4rem,13vw,11rem);color:#fff;letter-spacing:-.06em}.logo-xl .logo-name .lt{color:var(--ap)}
.ft .logo-xl .logo-mark rect{fill:#0E5644}
.ft .btn-light,.ft .btn-light:hover{color:var(--ink);text-decoration:none}
.ft-legal p{font-size:.84rem;max-width:64rem;margin:0 0 .8rem;color:#BCD6CB}
/* treatment x city page */
.crumbs{padding-top:26px;font-size:.86rem}
.phero{padding:clamp(24px,3vw,40px) 0 clamp(32px,4vw,56px)}
.phero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,.85fr);gap:clamp(28px,5vw,72px);align-items:center}
.phero h1{font-size:clamp(2.8rem,6vw,5.2rem);line-height:.96;letter-spacing:-.045em;margin:0 0 1.2rem;font-weight:700}
.phero h1 em{font-style:normal;color:var(--em)}
.phero .lede{margin:0 0 1.2rem;max-width:36rem}
.stamp span::before{background:var(--ap)}
.quote{background:var(--white);border-radius:var(--r-xl);box-shadow:var(--sh-lg);overflow:hidden;border:1px solid rgba(27,26,23,.05)}
.q-top{background:var(--em);color:var(--em-ink);padding:1.5rem 1.6rem}
.q-top p{margin:0}
.q-k{font-size:.86rem;font-weight:600}
.q-price{font:700 3.6rem/1 var(--serif);letter-spacing:-.045em;color:#fff;margin:.5rem 0 .5rem!important}
.q-price small{font:500 1rem/1 var(--sans);letter-spacing:0;margin-right:.35rem;color:var(--em-ink)}
.q-na{font-size:2.6rem}
.q-who{font-size:.86rem}.q-who a{color:#fff}
.q-list{margin:0;padding:.4rem 1.6rem}
.q-list div{display:flex;justify-content:space-between;gap:1rem;padding:.9rem 0;border-bottom:1px solid var(--line)}
.q-list div:last-child{border-bottom:0}
.q-list dt{color:var(--muted);font-size:.92rem}
.q-list dd{margin:0;text-align:right}.q-list dd b{font:700 1.5rem/1 var(--serif);color:var(--ink);letter-spacing:-.02em}
.q-list dd small{display:block;font-size:.76rem;color:var(--muted);margin-top:.25rem;max-width:12rem;margin-left:auto}
.quote .btn{margin:0 1rem 1rem;width:calc(100% - 2rem)}
.secnav{position:sticky;top:84px;z-index:20;background:rgba(251,246,238,.96);border-block:1px solid var(--line)}
.secnav .wrap{max-width:980px}
.secnav ol{list-style:none;margin:0;padding:.6rem 0;display:flex;gap:.4rem;overflow-x:auto;scrollbar-width:none}
.secnav a{display:block;white-space:nowrap;padding:.55rem .95rem;border-radius:999px;color:var(--ink);text-decoration:none;font-weight:500;font-size:.92rem}
.secnav a:hover{background:var(--cream-2)}
.pwrap{max-width:980px;padding-top:clamp(32px,4vw,48px);padding-bottom:clamp(56px,6vw,96px)}
.summary-b{background:var(--ap-soft);border-radius:var(--r-lg);padding:1.5rem 1.7rem;margin-bottom:2rem}
.sb-h{display:flex;gap:.45rem;align-items:center;font-weight:700!important;font-size:.82rem!important;letter-spacing:.08em;text-transform:uppercase;color:var(--ap-ink)!important;margin:0 0 .6rem!important}
.summary-b p{margin:0 0 .6rem;color:var(--ink)}.summary-b p:last-child{margin:0}
.card-sec{background:var(--white);border-radius:var(--r-xl);border:1px solid var(--line);padding:clamp(1.4rem,3vw,2.2rem);margin-bottom:1.4rem;scroll-margin-top:150px}
.card-sec h2{font-size:clamp(1.7rem,3vw,2.3rem);line-height:1.05;letter-spacing:-.035em;margin:0 0 1rem}
.card-sec h3{font-size:1.2rem}
.cs-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.count{background:var(--em-soft);color:var(--em-2);font-weight:600;font-size:.84rem;border-radius:999px;padding:.35rem .8rem;white-space:nowrap}
.rows-page{border-top:1px solid var(--line);margin:0 calc(clamp(1.4rem,3vw,2.2rem)*-1) 1rem}
.fine{font-size:.86rem;color:var(--muted)}
.provs-b{list-style:none;margin:0 0 1rem;padding:0;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.provs-b li{background:var(--cream);border-radius:var(--r-lg);padding:1.2rem 1.3rem;display:flex;flex-direction:column}
.provs-b li:only-child{grid-column:span 2}
.provs-b p{margin:0}
.pb-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:.8rem}
.pb-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:var(--white);color:var(--em)}
.provs-b h3{font-size:1.25rem;margin:0 0 .3rem;letter-spacing:-.02em}.provs-b h3 a{color:var(--ink);text-decoration:none}.provs-b h3 a:hover{color:var(--em)}
.pb-addr{font-size:.86rem;color:var(--muted)}.pb-why{font-size:.94rem;margin-top:.6rem!important}.pb-meta{font-size:.78rem;color:var(--muted);margin-top:auto!important;padding-top:.8rem}
.rating{border-radius:999px}
.more-b{background:var(--cream);border-radius:var(--r-md);padding:1rem 1.3rem;margin:1rem 0}.more-b summary{cursor:pointer;font-weight:600}
.chips-b{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.45rem}
.chips-b a{display:inline-flex;align-items:center;gap:.4rem;background:var(--cream);border-radius:999px;padding:.55rem .95rem;text-decoration:none;color:var(--ink);font-weight:500;font-size:.92rem;transition:background .2s}
.chips-b a:hover{background:var(--em-soft)}
.cols{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.vs{background:var(--em);border-radius:var(--r-xl);margin:0 0 1.4rem;padding:clamp(1.4rem,3vw,2.2rem)}
.vs h2{font-family:var(--serif);font-weight:700;letter-spacing:-.03em}.vs .kicker{color:var(--ap)}
.vs-fig{font-family:var(--serif);font-weight:700;letter-spacing:-.04em}
.urgent{border-radius:var(--r-lg);background:var(--white);margin-bottom:1.4rem}
.ad{border-radius:var(--r-lg);margin-bottom:1.4rem}
.city-strip{margin:2rem 0 0}.city-strip img{width:100%;aspect-ratio:16/5;object-fit:cover;object-position:50% 70%;border-radius:var(--r-xl);display:block}.city-strip figcaption{font-size:.76rem;color:var(--muted);margin-top:.5rem}
.phead h1,.masthead h1{font-family:var(--serif);font-weight:700;letter-spacing:-.04em}
.rv [data-reveal]{opacity:0;transform:translateY(16px) scale(.99);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.7,.2,1)}
.rv [data-reveal].in{opacity:1;transform:none}
@media (max-width:1080px){.tiles{grid-template-columns:repeat(3,1fr)}.cities-b{grid-template-columns:repeat(3,1fr)}.bento{grid-template-columns:repeat(2,1fr)}.bt-ph{grid-row:auto}.bento .bt-wh{grid-column:span 1}}
@media (max-width:960px){
  .hd-nav{display:none;position:absolute;left:var(--gut);right:var(--gut);top:calc(100% + 8px);flex-direction:column;background:var(--white);border-radius:var(--r-lg);padding:.6rem;box-shadow:var(--sh)}
  .hd-nav.open{display:flex}
  .hd{position:sticky}
  .hd-menu{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:0;background:var(--cream);color:var(--ink);cursor:pointer}
  .hd-cta{display:none}
  .hd .logo-tag{display:none}
  .phero-grid,.ft-top,.faq-wrap{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .secnav{top:74px}
}
@media (max-width:700px){
  .hero::before{width:380px;height:380px;right:-200px;top:80px}.hero::after{display:none}
  .hero h1{font-size:3.25rem}
  .hero-copy{text-align:left}
  .tool{border-radius:var(--r-lg);margin-inline:calc(var(--gut)*-.4)}
  .tool-head{padding:.7rem}
  .seg{width:100%}
  .seg [role=tablist]{border-radius:18px}
  .seg [role=tab]{padding:.6rem .75rem;font-size:.86rem}
  .seg [role=tab] span{white-space:nowrap}
  .city-sel{width:100%}.city-sel select{width:100%}
  .tool-cols{display:none}
  .rows li{grid-template-columns:1fr auto;gap:.5rem 1rem;padding:1rem 1.1rem}
  .r-prov{grid-column:1}.r-price{grid-column:2;grid-row:1 / span 2;align-self:start}
  .r-item{grid-column:1;font-size:.9rem}
  .r-price b{font-size:1.3rem}
  .tool-foot{flex-direction:column;align-items:stretch;padding:1rem}
  .bento{grid-template-columns:1fr}.bt-em,.bento .bt-wh{grid-column:auto}
  .tiles{grid-template-columns:1fr 1fr}
  .cities-b{grid-template-columns:repeat(2,1fr)}
  .ft-cols{grid-template-columns:1fr 1fr}
  .provs-b{grid-template-columns:1fr}.provs-b li:only-child{grid-column:auto}
  .cols{grid-template-columns:1fr}
  .q-price{font-size:3rem}
  .city-strip img{aspect-ratio:16/9}
  .rows-page li{padding-inline:1.1rem}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
/* pricing transparency: inclusions + how-the-list-works note */
.r-inc{margin-top:.35rem;font-size:.84rem}
.r-inc summary{cursor:pointer;color:var(--em);font-weight:600;list-style:none;display:inline-flex;align-items:center;gap:.3rem}
.r-inc summary::-webkit-details-marker{display:none}
.r-inc summary::after{content:"+";font-weight:700}.r-inc[open] summary::after{content:"–"}
.r-inc p{margin:.35rem 0 0;color:var(--muted);max-width:38rem;line-height:1.45}
.tool-how{display:flex;gap:.5rem;align-items:flex-start;margin:0;padding:.9rem 1.6rem;border-top:1px solid var(--line);font-size:.82rem;line-height:1.45;color:var(--muted);background:var(--white)}
.tool-how .ic{flex:none;margin-top:.15rem;color:var(--em)}
.tool-how a{color:var(--em);font-weight:600}
@media (max-width:700px){.tool-how{padding:.9rem 1rem}.hero .badge{font-size:.76rem;padding:.4rem .75rem}}
/* ---- inner pages (B3 rollout) ---- */
.phero-simple .ph-copy{max-width:860px}
.phero-simple{padding-bottom:clamp(16px,2vw,28px)}
.pwrap-wide{max-width:var(--w)}
.q-sm{font-size:2.3rem!important;line-height:1.05!important}
.q-txt{font-size:1.05rem!important;letter-spacing:0!important;line-height:1.3!important}
.q-extra{margin:0;padding:0 1.6rem 1rem;font-size:.9rem}.q-extra a{color:var(--em);font-weight:600}
.city-top{margin:0 0 .5rem}.city-top img{aspect-ratio:16/5}
.prose-b{font-size:1.04rem;line-height:1.7}
.prose-b>*:first-child{margin-top:0}.prose-b p{max-width:68ch}.prose-b ul,.prose-b ol{max-width:68ch;padding-left:1.2rem}
.prose-b li{margin:.3rem 0}.prose-b h2{font-size:clamp(1.5rem,2.6vw,2rem);margin:2.2rem 0 .7rem;letter-spacing:-.03em}
.prose-b a{color:var(--em);font-weight:600}
.summary-b a{color:var(--em-2);font-weight:600}
.cityrows,.trows{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.cityrows{grid-template-columns:repeat(2,minmax(0,1fr))}
.cityrows a,.trows a{display:flex;align-items:center;gap:1rem;background:var(--cream);border-radius:var(--r-lg);padding:1rem 1.2rem;text-decoration:none;color:var(--ink);transition:background .2s}
.cityrows a:hover,.trows a:hover{background:var(--em-soft)}
.cr-ic{display:grid;place-items:center;flex:none;width:40px;height:40px;border-radius:12px;background:var(--white);color:var(--em)}
.cr-t,.tr-t{flex:1;min-width:0}.cr-t b,.tr-t b{display:block;font:700 1.08rem/1.25 var(--serif);letter-spacing:-.015em}
.cr-t span,.tr-t span{display:block;font-size:.86rem;color:var(--muted);margin-top:.15rem}
.cr-go{color:var(--em);flex:none}
.trows .ti-ic{flex:none;width:48px;height:48px;border-radius:14px;background:var(--white)}
.tr-p{flex:none;text-align:right}.tr-p small{display:block;font-size:.74rem;color:var(--muted)}
.tr-p b{display:inline-block;font:700 1.3rem/1 var(--serif);color:var(--em-2);background:var(--em-soft);border-radius:10px;padding:.4rem .6rem;margin-top:.25rem;white-space:nowrap}
.tr-p b small{display:inline;font-size:.72rem;color:var(--muted)}.tr-p .on-request{font:600 .95rem/1 var(--sans);font-style:normal;color:var(--muted)}
.facts-b{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.facts-b div{background:var(--cream);border-radius:var(--r-md);padding:.9rem 1.1rem}
.facts-b dt{font-size:.78rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.facts-b dd{margin:.25rem 0 0;color:var(--ink);font-weight:500}.facts-b a{color:var(--em)}
.chips-static span{display:inline-flex;background:var(--cream);border-radius:999px;padding:.5rem .9rem;font-size:.9rem;color:var(--ink)}
.chips-static{margin-bottom:1rem}
.tiles-lg{grid-template-columns:repeat(3,1fr)}.tiles-lg a{min-height:220px}
.ti-p{display:block;margin-top:.6rem!important;color:var(--em-2)!important;font-weight:600}
.cities-lg{grid-template-columns:repeat(3,1fr);gap:18px}.cities-lg img{aspect-ratio:4/3}
.listing-b h2{font-size:1.6rem;margin:2rem 0 .8rem;letter-spacing:-.03em}.listing-b h2:first-child{margin-top:0}
.linklist{list-style:none;margin:0 0 1rem;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:none!important}
.linklist a{display:block;background:var(--cream);border-radius:var(--r-md);padding:.95rem 1.1rem;text-decoration:none;color:var(--ink);font-weight:650;font-family:var(--serif);transition:background .2s}
.linklist a:hover{background:var(--em-soft)}
.linklist a span{display:block;font:400 .84rem/1.4 var(--sans);color:var(--muted);margin-top:.15rem}
.more-b .linklist{margin-top:.8rem}.more-b .linklist a{background:var(--white)}
.faq{margin-top:.2rem}.card-sec .faq details{background:var(--cream);border:0}
.vs{color:var(--em-ink)}.vs h2{color:#fff}.vs p,.vs .vs-lab{color:var(--em-ink)}
.vs-grid{border-top-color:rgba(213,233,224,.25)}.vs-cell+.vs-cell{border-left-color:rgba(213,233,224,.25)}
.vs .src{color:#BCD6CB;border-top-color:rgba(213,233,224,.25)}
.vs .tbl th,.vs .tbl td{color:var(--em-ink);border-bottom-color:rgba(213,233,224,.2)}.vs .tbl thead th{color:#BCD6CB}
.tbl thead th{border-bottom-color:var(--line)}.tbl .price{font-family:var(--serif);font-weight:700}
.urgent{border:1px solid var(--line);padding:1rem 1.2rem;display:flex;gap:.8rem;align-items:flex-start}
.urgent .mark{display:grid;place-items:center;flex:none;width:28px;height:28px;border-radius:50%;background:var(--ap-soft);color:var(--ap-ink);font-weight:700}
.ad{background:var(--cream-2);border:1px dashed #CBBFAA;padding:1rem 1.2rem}
.ad .lab{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.ad p{margin:.3rem 0 0;font-size:.9rem}
.rating{display:inline-flex;align-items:center;font-size:.78rem;font-weight:600;padding:.3rem .65rem;white-space:nowrap}
.rating.good{background:var(--em-soft);color:var(--em-2)}.rating.outstanding{background:var(--em);color:#fff}
.rating.ri{background:var(--ap-soft);color:var(--ap-ink)}.rating.none{background:var(--cream-2);color:var(--muted)}
@media (max-width:960px){.tiles-lg,.cities-lg{grid-template-columns:repeat(2,1fr)}}
@media (max-width:700px){
 .cityrows,.facts-b,.linklist{grid-template-columns:1fr}
 .tiles-lg,.cities-lg{grid-template-columns:1fr 1fr}.tiles-lg a{min-height:0}
 .trows a{flex-wrap:wrap}.trows .tr-p{text-align:left;width:100%;padding-left:calc(48px + 1rem)}
 .city-top img{aspect-ratio:16/9}
 .q-sm{font-size:2rem!important}
}
@media (max-width:420px){.tiles-lg,.cities-lg{grid-template-columns:1fr}}
.phero h1 em,.phead h1 em{font-weight:inherit;font-style:normal;color:var(--em)}
.tiles>li{min-width:0}@media (max-width:400px){.tiles a{padding:1.1rem}.ti-t b{font-size:1.1rem;overflow-wrap:anywhere}}
/* UK batch pages */
.checklist{margin:.4rem 0 1rem;padding:0;list-style:none;display:grid;gap:.5rem}
.checklist li{position:relative;padding-left:1.6rem;line-height:1.5}
.checklist li::before{content:"";position:absolute;left:.2rem;top:.55em;width:.55rem;height:.55rem;border-radius:2px;background:var(--apricot,#E8B48A)}
.cover-note{color:var(--muted);font-size:.92rem;line-height:1.55;margin-top:1rem}
.list-h{margin:2.2rem 0 .8rem;font-size:1.35rem}
.inc-tbl{margin:.6rem 0 .2rem;font-size:.82rem;width:100%}
.inc-tbl th,.inc-tbl td{padding:.35rem .5rem}
.chips-b small{color:var(--muted);font-weight:500;margin-left:.25rem}
.card-sec h3+.chips-b{margin-bottom:1rem}
.more-b h4{margin:1rem 0 .4rem;font-size:1rem}
@media (max-width:640px){.inc-tbl{font-size:.78rem}.inc-tbl td:last-child{word-break:break-word}}
.cityrows .cr-static{display:flex;align-items:center;gap:1rem;background:var(--cream);border-radius:var(--r-lg);padding:1rem 1.2rem;color:var(--ink)}
.r-item>a{margin-left:.45rem}

/* Homepage: more cities beyond the six featured photo cards */
.city-more{margin-top:1.6rem}
.city-more-lab{margin:0 0 .7rem;font-size:.85rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.city-scroll{list-style:none;margin:0;padding:0 0 .2rem;display:flex;flex-wrap:nowrap;gap:.5rem;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
.city-scroll li{flex:0 0 auto}
.city-scroll a{display:inline-flex;align-items:center;min-height:44px;padding:0 .95rem;border-radius:999px;background:var(--cream);color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem;border:1px solid var(--line, transparent);white-space:nowrap}
.city-scroll a:hover{background:var(--em-soft)}
.city-scroll-all a{background:transparent;box-shadow:inset 0 0 0 1px var(--line, #d9d2c5)}
