/* Boista: scenic travel look (forest, sand, coral, sun). Fraunces headings, DM Sans body. Ported from the prototype. */
:root{--forest:#0e3b3a;--pine:#175c55;--sage:#8fb8a3;--sand:#f7f0e4;--cream:#fffaf2;--coral:#ff6a4d;--sun:#ffb347;--sky:#d9eef2;--ink:#14212b;--mute:#5b6b73;--line:#e6dccb;--r:18px;--shadow:0 14px 44px rgba(14,59,58,.15)}
*{box-sizing:border-box}html{scroll-behavior:smooth}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
body{margin:0;font-family:'DM Sans',system-ui,sans-serif;color:var(--ink);background:var(--cream);line-height:1.55;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Fraunces',Georgia,serif;line-height:1.08;margin:0 0 .5em;font-weight:600;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:clamp(2.2rem,5.6vw,4.4rem)}h2{font-size:clamp(1.7rem,3.6vw,2.7rem)}h3{font-size:1.25rem}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.container{width:min(1180px,100% - 32px);margin-inline:auto}
.section{padding:clamp(44px,8vw,92px) 0}.sand{background:var(--sand)}.forest{background:var(--forest);color:#fff}.sky{background:var(--sky)}
.eyebrow{display:inline-flex;gap:8px;align-items:center;font-size:.76rem;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--coral)}
.eyebrow:before{content:"";width:26px;height:2px;background:currentColor}
.lead{font-size:1.12rem;color:var(--mute);max-width:60ch}.forest .lead{color:#cfe3dc}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;cursor:pointer;font:600 .95rem 'DM Sans',system-ui,sans-serif;padding:13px 22px;border-radius:999px;background:var(--coral);color:#fff;transition:.2s;box-shadow:0 8px 22px rgba(255,106,77,.35);text-decoration:none}
.btn:hover{transform:translateY(-2px)}.btn.ghost{background:transparent;color:inherit;border:1.5px solid currentColor;box-shadow:none}
.btn.dark{background:var(--forest);box-shadow:none}.btn.sm{padding:8px 14px;font-size:.85rem}.btn.block{width:100%}
.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible{outline:2.5px solid var(--coral);outline-offset:3px}
.chip{display:inline-flex;padding:7px 14px;border-radius:999px;border:1.5px solid var(--line);background:#fff;font-size:.88rem;cursor:pointer;font-weight:500;font-family:inherit;color:inherit}
.chip.on,.chip:hover{background:var(--forest);color:#fff;border-color:var(--forest)}.chips{display:flex;flex-wrap:wrap;gap:8px}
.tag{display:inline-block;font-size:.72rem;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--sky);color:var(--forest)}
.tag.hot{background:#ffe3dc;color:#b83a21}.tag.ok{background:#e3f5ea;color:#1c6b3f}.tag.gold{background:#fff1cc;color:#8a5a00}
.grid{display:grid;gap:22px}.g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))}.g4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
/* header */
header.site{position:sticky;top:0;z-index:50;background:rgba(255,250,242,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
header.site .in{display:flex;align-items:center;justify-content:space-between;height:68px;gap:16px}
.logo{font-family:'Fraunces',Georgia,serif;font-size:1.7rem;font-weight:700;color:var(--forest);display:flex;align-items:center;gap:8px}
.logo i{width:28px;height:28px;border-radius:50% 50% 50% 4px;background:linear-gradient(135deg,var(--coral),var(--sun));display:inline-block;transform:rotate(-20deg)}
nav.main{display:flex;gap:4px;align-items:center}nav.main a{padding:8px 12px;border-radius:999px;font-weight:500;font-size:.93rem}nav.main a:hover,nav.main a.on{background:var(--sand)}
nav.main a.bot{background:var(--forest);color:#fff}
.burger{display:none;background:none;border:0;font-size:1.6rem;cursor:pointer}
@media(max-width:980px){.burger{display:block}nav.main{display:none;position:absolute;top:68px;left:0;right:0;background:var(--cream);flex-direction:column;align-items:stretch;padding:12px;border-bottom:1px solid var(--line)}nav.main.open{display:flex}.hide-m{display:none}}
/* hero */
.hero{position:relative;min-height:92vh;color:#fff;overflow:hidden;display:flex;align-items:center;isolation:isolate}
.hero .bg{position:absolute;inset:0;z-index:-3;background:var(--forest)}.hero .bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.6s;transform:scale(1.06)}.hero .bg img.on{opacity:1;animation:kb 14s ease-out forwards}
@keyframes kb{to{transform:scale(1.14) translateX(-1%)}}
.hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(100deg,rgba(8,32,31,.82) 5%,rgba(8,32,31,.35) 55%,rgba(255,150,80,.18)),linear-gradient(0deg,rgba(8,32,31,.7),transparent 40%)}
.sun{position:absolute;right:12%;top:14%;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,#ffd98a,rgba(255,179,71,0) 70%);z-index:-1;animation:glow 6s ease-in-out infinite}
@keyframes glow{50%{transform:scale(1.25);opacity:.7}}
.cloud{position:absolute;height:60px;width:220px;border-radius:60px;background:rgba(255,255,255,.14);filter:blur(10px);z-index:-1;animation:drift 60s linear infinite}
@keyframes drift{from{transform:translateX(-300px)}to{transform:translateX(120vw)}}
.hills{position:absolute;left:0;right:0;bottom:-2px;z-index:0;pointer-events:none}.hills svg{width:100%;display:block}
.hero .wrap{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:center;padding:60px 0 150px}
@media(max-width:900px){.hero .wrap{grid-template-columns:1fr;padding-bottom:120px}}
.hero h1 em{font-style:italic;color:var(--sun)}
.pass{margin-top:28px;background:#fff;color:var(--ink);border-radius:20px;display:grid;grid-template-columns:repeat(3,1fr) auto;gap:0;box-shadow:var(--shadow);overflow:hidden;position:relative}
.pass:before,.pass:after{content:"";position:absolute;top:50%;width:18px;height:18px;border-radius:50%;background:#1a4b49;transform:translateY(-50%)}.pass:before{left:-9px}.pass:after{right:-9px}
.pass label{padding:12px 18px;border-right:1px dashed var(--line);font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;color:var(--mute);font-weight:700;display:flex;flex-direction:column;gap:2px}
.pass select,.pass input{border:0;font:600 1rem 'DM Sans',system-ui,sans-serif;background:transparent;outline:0;color:var(--ink);padding:0;width:100%}
.pass .btn{border-radius:0;box-shadow:none;padding:0 28px}
@media(max-width:900px){.pass{grid-template-columns:1fr 1fr}.pass .btn{grid-column:1/-1;padding:14px}}
/* chat: frosted glass (Glassmorphism 2.0, restrained: one blur, light tint, 1px edge highlight, slow colour wash behind) */
.chatcard{position:relative;isolation:isolate;color:var(--ink);border-radius:28px;display:flex;flex-direction:column;max-height:min(600px,calc(100vh - 120px));overflow:hidden;overflow:clip;background:rgba(255,250,242,.62);-webkit-backdrop-filter:blur(28px) saturate(170%);backdrop-filter:blur(28px) saturate(170%);border:1px solid rgba(255,255,255,.75);box-shadow:0 30px 70px -20px rgba(14,59,58,.35),0 1px 0 rgba(255,255,255,.9) inset,0 -1px 0 rgba(14,59,58,.06) inset}
.chatcard:before{content:"";position:absolute;inset:-40%;z-index:-1;pointer-events:none;background:radial-gradient(40% 35% at 20% 20%,rgba(143,184,163,.6),transparent 70%),radial-gradient(35% 30% at 85% 15%,rgba(255,179,71,.5),transparent 70%),radial-gradient(40% 40% at 70% 90%,rgba(255,106,77,.38),transparent 70%),radial-gradient(35% 35% at 10% 85%,rgba(217,238,242,.95),transparent 70%);filter:blur(30px);animation:aurora 18s ease-in-out infinite alternate}
@keyframes aurora{to{transform:rotate(8deg) scale(1.08) translate(3%,-3%)}}
.chathead{display:flex;gap:12px;align-items:center;padding:14px 18px;color:#fff;position:relative;background:linear-gradient(135deg,rgba(14,59,58,.94),rgba(23,92,85,.86));border-bottom:1px solid rgba(255,255,255,.18)}
.chathead:after{content:"";position:absolute;left:8%;right:8%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent)}
.chathead b{font-size:1rem}.chathead small{color:rgba(255,255,255,.72);display:block;font-size:.75rem}
.chathead .x{display:none;margin-left:auto;width:32px;height:32px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.12);color:#fff;font-size:1.2rem;line-height:1;cursor:pointer;place-items:center;transition:.2s}.chathead .x:hover{background:rgba(255,255,255,.26)}.buddy .chathead .x{display:grid}
.avatar{width:40px;height:40px;flex:none;border-radius:14px;background:linear-gradient(135deg,var(--sun),var(--coral));display:grid;place-items:center;font-size:1.2rem;position:relative;box-shadow:0 0 0 3px rgba(255,255,255,.18),0 8px 18px -4px rgba(255,106,77,.55)}
.avatar:after{content:"";position:absolute;right:-3px;bottom:-3px;width:11px;height:11px;border-radius:50%;background:#5ee29a;border:2px solid #0e3b3a;animation:pulse 2.4s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(94,226,154,.7)}70%,100%{box-shadow:0 0 0 7px rgba(94,226,154,0)}}
.chatbody{padding:18px 16px;overflow:auto;display:flex;flex-direction:column;gap:10px;flex:1;min-height:280px;scrollbar-width:thin;scrollbar-color:rgba(14,59,58,.25) transparent}
.chatbody::-webkit-scrollbar{width:6px}.chatbody::-webkit-scrollbar-thumb{background:rgba(14,59,58,.22);border-radius:6px}
.msg{max-width:86%;padding:11px 15px;border-radius:18px;font-size:.93rem;line-height:1.5;animation:pop .35s cubic-bezier(.2,.8,.2,1)}
@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.97)}}
.msg.bot{background:rgba(255,255,255,.66);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.85);border-bottom-left-radius:6px;box-shadow:0 6px 18px -8px rgba(14,59,58,.25),0 1px 0 rgba(255,255,255,.9) inset}
.msg.me{background:linear-gradient(135deg,var(--pine),var(--forest));color:#fff;align-self:flex-end;border-bottom-right-radius:6px;box-shadow:0 10px 24px -10px rgba(14,59,58,.6),0 1px 0 rgba(255,255,255,.18) inset}
.msg.typing{display:inline-flex;gap:4px;align-items:center;align-self:flex-start;padding:13px 16px}
.typing span{width:7px;height:7px;border-radius:50%;background:linear-gradient(135deg,var(--pine),var(--sage));animation:bl 1.1s infinite}.typing span:nth-child(2){animation-delay:.18s}.typing span:nth-child(3){animation-delay:.36s}
@keyframes bl{50%{opacity:.25;transform:translateY(-3px)}}
.quick{display:flex;flex-wrap:wrap;gap:8px;animation:pop .4s}
.chatcard .chip{background:rgba(255,255,255,.55);border:1px solid rgba(14,59,58,.14);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:.84rem;padding:7px 13px;box-shadow:0 1px 0 rgba(255,255,255,.8) inset;transition:.2s}
.chatcard .chip:hover{background:var(--forest);color:#fff;border-color:var(--forest);transform:translateY(-1px);box-shadow:0 8px 18px -8px rgba(14,59,58,.5)}
.plan{background:rgba(255,255,255,.7);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.9);border-radius:18px;overflow:hidden;font-size:.86rem;box-shadow:0 10px 26px -14px rgba(14,59,58,.35);transition:.25s;animation:pop .4s}
.plan:hover{transform:translateY(-3px);box-shadow:0 18px 34px -14px rgba(14,59,58,.4)}
.plan img{height:110px;width:100%;object-fit:cover}.plan div{padding:12px 14px}.plan .noimg{height:110px;background:linear-gradient(135deg,var(--sage),var(--pine))}
.chatin{display:flex;gap:8px;align-items:center;padding:12px 14px;border-top:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.35);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}
.chatin input{flex:1;min-width:0;border:1px solid rgba(14,59,58,.14);background:rgba(255,255,255,.75);border-radius:999px;padding:11px 16px;font:inherit;color:inherit;transition:.2s;box-shadow:0 1px 0 rgba(255,255,255,.9) inset}
.chatin input:focus{outline:0;border-color:rgba(255,106,77,.6);box-shadow:0 0 0 4px rgba(255,106,77,.18),0 1px 0 rgba(255,255,255,.9) inset;background:#fff}
.chatin .send{width:44px;height:44px;flex:none;border-radius:50%;border:0;cursor:pointer;background:linear-gradient(135deg,var(--coral),#ff8d4d);color:#fff;display:grid;place-items:center;box-shadow:0 8px 20px -6px rgba(255,106,77,.6),0 1px 0 rgba(255,255,255,.35) inset;transition:.2s}
.chatin .send:hover{transform:translateY(-2px) scale(1.04)}.chatin .send svg{width:18px;height:18px}
.fab{position:fixed;right:20px;bottom:20px;z-index:60;display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,rgba(255,106,77,.95),rgba(255,141,77,.95));color:#fff;border:1px solid rgba(255,255,255,.45);border-radius:999px;padding:13px 20px;font:700 .95rem 'DM Sans',system-ui,sans-serif;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 14px 34px -8px rgba(255,106,77,.6),0 1px 0 rgba(255,255,255,.4) inset;transition:.25s}
.fab:hover{transform:translateY(-2px) scale(1.03)}
.fab:before{content:"";position:absolute;inset:-6px;border-radius:inherit;border:2px solid rgba(255,106,77,.45);animation:ring 2.6s ease-out infinite;pointer-events:none}
@keyframes ring{to{transform:scale(1.25);opacity:0}}
.buddy{position:fixed;right:20px;bottom:88px;width:min(390px,calc(100vw - 32px));z-index:60;display:none;transform-origin:bottom right}
.buddy.open{display:block;animation:rise .35s cubic-bezier(.2,.8,.2,1)}
@keyframes rise{from{opacity:0;transform:translateY(16px) scale(.96)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.chatcard{background:rgba(255,250,242,.97)}.msg.bot,.plan{background:#fff}.chatin{background:rgba(255,255,255,.8)}}
/* cards */
.card{background:#fff;border-radius:var(--r);overflow:hidden;border:1px solid var(--line);transition:.25s;display:flex;flex-direction:column;color:inherit}.card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.card .ph{position:relative;aspect-ratio:4/3;overflow:hidden;background:linear-gradient(135deg,var(--sage),var(--pine))}.card .ph img{width:100%;height:100%;object-fit:cover;transition:transform .8s}.card:hover .ph img{transform:scale(1.07)}
.card .ph .tag{position:absolute;left:12px;top:12px}.card .ph .tag.r{left:auto;right:12px}
.card .bd{padding:16px;display:flex;flex-direction:column;gap:6px;flex:1}.card h3{margin:0;font-size:1.12rem}.meta{color:var(--mute);font-size:.86rem;display:flex;gap:10px;flex-wrap:wrap}
.price{margin-top:auto;display:flex;justify-content:space-between;align-items:end}.price b{font-size:1.2rem}.price small{color:var(--mute)}
.dest{position:relative;border-radius:var(--r);overflow:hidden;min-height:260px;color:#fff;display:flex;align-items:end;isolation:isolate;background:var(--pine)}.dest img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;transition:transform .8s}.dest:hover img{transform:scale(1.08)}
.dest:before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.72),transparent 60%);z-index:-1}.dest div{padding:18px}.dest h3{margin:0;color:#fff}.dest.big{grid-column:span 2;grid-row:span 2;min-height:540px}
.mosaic{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:900px){.mosaic{grid-template-columns:1fr 1fr}.dest.big{min-height:260px;grid-row:auto;grid-column:span 2}}
/* ticket */
.ticket{background:#fff;border-radius:16px;display:grid;grid-template-columns:1fr auto;border:1px solid var(--line);position:relative;overflow:hidden;color:inherit}
.ticket .l{padding:18px 20px}.ticket .r{padding:18px;border-left:2px dashed var(--line);text-align:center;display:grid;align-content:center;gap:4px;min-width:120px;background:var(--sand)}
.ticket:before,.ticket:after{content:"";position:absolute;right:108px;width:18px;height:18px;border-radius:50%;background:var(--cream)}.ticket:before{top:-9px}.ticket:after{bottom:-9px}
.sand .ticket:before,.sand .ticket:after{background:var(--sand)}
.days{font-family:'Fraunces',Georgia,serif;font-size:2.4rem;font-weight:700;color:var(--coral);line-height:1}
.bridge{font-size:.82rem;color:var(--pine);font-weight:600}
/* misc */
.steps{display:grid;gap:22px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));counter-reset:s;margin-top:28px}.step{position:relative;padding:28px 22px 22px;border-radius:var(--r);background:#fff;border:1px solid var(--line)}.step:before{counter-increment:s;content:counter(s);position:absolute;top:-14px;left:18px;width:30px;height:30px;border-radius:50%;background:var(--coral);color:#fff;display:grid;place-items:center;font-weight:700}
.step h3{margin-top:0}.step p{margin:0;color:var(--mute)}
.stat{font-family:'Fraunces',Georgia,serif;font-size:2.6rem;font-weight:700;line-height:1}.stat span{display:block;font-family:'DM Sans',system-ui,sans-serif;font-size:.9rem;color:var(--mute);font-weight:500;margin-top:6px}
.bar{height:10px;border-radius:99px;background:#eadfcc;overflow:hidden}.bar b{display:block;height:100%;background:linear-gradient(90deg,var(--pine),var(--sage));border-radius:99px}
.panel{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:22px}
table.cmp{width:100%;border-collapse:collapse;background:#fff;border-radius:var(--r);overflow:hidden}table.cmp th,table.cmp td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;font-size:.93rem}table.cmp th{background:var(--forest);color:#fff}
.tier{border:2px solid var(--line);border-radius:var(--r);padding:26px;background:#fff;display:flex;flex-direction:column;gap:12px;position:relative}.tier.hot{border-color:var(--coral);box-shadow:var(--shadow)}.tier .amt{font-family:'Fraunces',Georgia,serif;font-size:2.4rem;font-weight:700;line-height:1}.tier .amt small{font-family:'DM Sans',system-ui,sans-serif;font-size:.9rem;font-weight:500;color:var(--mute)}.tier ul{padding-left:18px;margin:0;color:var(--mute);display:grid;gap:6px;font-size:.93rem}.tier .btn{margin-top:auto}
.tier .pop{position:absolute;top:-13px;left:22px;background:var(--coral);color:#fff;font-size:.72rem;font-weight:700;padding:4px 12px;border-radius:999px;letter-spacing:.04em}
form.f{display:grid;gap:14px}form.f label{display:grid;gap:6px;font-weight:600;font-size:.9rem}form.f input,form.f select,form.f textarea{padding:12px 14px;border:1.5px solid var(--line);border-radius:12px;font:inherit;background:#fff;color:inherit;width:100%}
form.f .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:520px){form.f .two{grid-template-columns:1fr}}
form.f .check{display:flex;gap:10px;align-items:flex-start;font-weight:500;font-size:.9rem}form.f .check input{width:auto;margin-top:4px}
.note{padding:12px 14px;border-radius:12px;font-weight:600;font-size:.9rem}.note.ok{background:#e3f5ea;color:#1c6b3f}.note.err{background:#fee2e2;color:#991b1b}.note.info{background:var(--sky);color:var(--forest)}
.hp{position:absolute;left:-9999px}
details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;margin-bottom:10px}summary{cursor:pointer;font-weight:700}details p{margin:10px 0 0;color:var(--mute)}
.pagehead{background:linear-gradient(135deg,var(--forest),var(--pine));color:#fff;padding:64px 0 56px;position:relative;overflow:hidden}.pagehead p{color:#cfe3dc;max-width:62ch;font-size:1.1rem}
.pagehead img.bgimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28}.pagehead .container{position:relative}.pagehead h1{color:#fff}
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:200px 200px;gap:10px;border-radius:var(--r);overflow:hidden;background:var(--sand)}.gallery img{width:100%;height:100%;object-fit:cover}.gallery img:first-child{grid-row:span 2}
@media(max-width:700px){.gallery{grid-template-columns:1fr 1fr;grid-template-rows:180px 120px 120px}.gallery img:first-child{grid-column:span 2;grid-row:auto}}
.layout2{display:grid;grid-template-columns:1fr 360px;gap:32px;align-items:start}@media(max-width:900px){.layout2{grid-template-columns:1fr}}
.layout2.rev{grid-template-columns:320px 1fr}@media(max-width:900px){.layout2.rev{grid-template-columns:1fr}}
.sticky{position:sticky;top:90px}
.kpi{font-family:'Fraunces',Georgia,serif;font-size:2rem;font-weight:700}.up{color:#1c8a4f;font-weight:700;font-size:.85rem}
.ticks{list-style:none;padding:0;margin:14px 0;display:grid;gap:8px}.ticks li{padding-left:26px;position:relative}.ticks li:before{content:"";position:absolute;left:0;top:7px;width:13px;height:7px;border-left:2.5px solid var(--coral);border-bottom:2.5px solid var(--coral);transform:rotate(-45deg)}
.rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px}.rules div{background:var(--sand);border-radius:12px;padding:10px 12px;font-size:.88rem}.rules b{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--mute)}
.unit{border:1.5px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:6px;cursor:pointer}.unit:has(input:checked){border-color:var(--coral);background:#fff6f3}.unit input{width:auto}
.hbar{display:flex;gap:10px;align-items:center;font-size:.9rem;margin:6px 0}.hbar i{flex:1;height:10px;background:var(--sage);border-radius:6px;display:block}.hbar span{min-width:150px}
footer.site{background:#0a2827;color:#b9d2cc;padding:60px 0 28px;margin-top:40px}footer.site a:hover{color:#fff}footer h4{color:#fff;font-family:'DM Sans',system-ui,sans-serif;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em}footer ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.credit{font-size:.74rem;color:#7fa39a;margin-top:18px}
.review{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}.review b.stars{color:var(--sun);letter-spacing:2px}
.member{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-top:1px solid var(--line);font-size:.92rem}
.share-ok{color:#1c6b3f;font-weight:700}
