/* Solvara — page-level components (estimator, quote, financing, kits, stories, content pages) */

/* ---------- estimator ---------- */
.est{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.est__side{position:sticky;top:calc(var(--hdr-h) + 24px)}
.est-form{padding:32px}
.est-form__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px}
.sun-spin{color:var(--sun-500);animation:spin 18s linear infinite}
.est-grid{display:grid;gap:24px}
.est-pin{max-width:360px}
.est-more{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;animation:rise 500ms var(--ease)}
.est-more .full{grid-column:1/-1}
@keyframes rise{from{opacity:0;transform:translateY(12px)}}
.conn-cards{grid-template-columns:repeat(3,1fr)}
.conn-cards .rcard{flex-direction:column;align-items:flex-start;gap:8px;padding:16px}
.conn-cards .rcard b{font-size:var(--fs-md)}
.conn-cards .rcard span.xs{color:var(--t3);line-height:1.4}
.conn-cards .rcard .ico-tile{width:40px;height:40px;border-radius:12px}
.place-chip{display:inline-flex;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;border-radius:var(--r-md);background:var(--ok-bg);color:#0E5A3F;font-size:var(--fs-sm)}
.est-form__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}
@media (max-width:1100px){.est{grid-template-columns:minmax(0,1fr)}.est__side{position:static}}
@media (max-width:680px){.est-form{padding:24px 16px}.est-more{grid-template-columns:minmax(0,1fr)}.conn-cards{grid-template-columns:minmax(0,1fr)}.conn-cards .rcard{flex-direction:row;align-items:center}.est-pin{max-width:none}.est-form__foot .btn{width:100%}}

.est-out{margin-top:32px;display:grid;gap:24px;animation:rise 600ms var(--ease)}
.res-hero{position:relative;overflow:hidden;padding:32px;border-radius:var(--r-2xl);background:var(--ink-900);color:var(--d1);isolation:isolate}
.res-hero::before{content:"";position:absolute;right:-160px;top:-200px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(245,165,36,.28),transparent 65%);z-index:-1}
.res-hero__top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}
.res-size{font-family:var(--ff-head);font-size:clamp(3.052rem,7vw,4.768rem);font-weight:650;letter-spacing:-.045em;line-height:.95}
.res-size small{font-size:.4em;letter-spacing:-.02em;color:var(--d2);font-weight:500;margin-left:6px}
.res-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:32px}
.res-kpis .kpi b{font-size:var(--fs-xl)}
.res-msg{display:flex;gap:12px;margin-top:24px;padding:16px;border-radius:var(--r-lg);background:rgba(127,216,180,.1);border:1px solid rgba(127,216,180,.22);font-size:var(--fs-sm);color:#CFF3E3}
.res-msg.is-warn{background:rgba(245,165,36,.1);border-color:rgba(245,165,36,.3);color:var(--sun-300)}
.res-msg .ico{flex:none;margin-top:1px}
@media (max-width:680px){.res-hero{padding:24px 16px}.res-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}

.offer-chip{display:inline-flex;align-items:center;gap:10px;padding:6px 8px 6px 6px;border-radius:var(--r-pill);border:1px solid #F6DDB0;background:#FFF7E6;font-size:var(--fs-sm);font-weight:600;color:var(--ink-900);transition:all var(--t-fast) var(--ease)}
.offer-chip:hover{box-shadow:var(--sh-gold);transform:translateY(-1px)}
.offer-chip:active{transform:scale(.98)}
.tenures{display:flex;flex-wrap:wrap;gap:8px}
.tenures button{min-height:40px;padding:0 16px;border-radius:var(--r-pill);border:1px solid var(--line-2);background:var(--surface);font-size:var(--fs-sm);font-weight:600;color:var(--t2);transition:all var(--t-fast) var(--ease)}
.tenures button:hover{border-color:rgba(8,29,28,.3);color:var(--t1)}
.tenures button[aria-pressed="true"]{background:var(--ink-900);border-color:var(--ink-900);color:var(--d1)}
.tenures button .z{display:block;font-size:.65rem;color:var(--ok);font-weight:700;letter-spacing:.04em;line-height:1}
.tenures button[aria-pressed="true"] .z{color:#7FD8B4}

.plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.plan{position:relative;padding:32px;display:flex;flex-direction:column;gap:16px;overflow:visible}
.plan--hi{border:1.5px solid var(--sun-500);box-shadow:0 0 0 4px rgba(245,165,36,.1),var(--sh-3)}
.plan__rib{position:absolute;top:-13px;left:32px}
.plan__name{display:flex;align-items:center;justify-content:space-between;gap:8px}
.plan__name h3{font-size:var(--fs-lg);letter-spacing:.06em;text-transform:uppercase}
.plan__price{font-family:var(--ff-head);font-size:var(--fs-3xl);font-weight:650;letter-spacing:-.035em;line-height:1}
.plan__price small{font-family:var(--ff-body);font-size:var(--fs-xs);font-weight:500;letter-spacing:0;color:var(--t3);margin-left:4px}
.plan .kv b{font-family:var(--ff-head);font-size:var(--fs-md)}
.plan .saved{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px;border-radius:var(--r-md);background:var(--ok-bg);color:var(--ok);font-size:var(--fs-sm);font-weight:600}
.plan ul{display:grid;gap:8px;font-size:var(--fs-sm);color:var(--t2)}
.plan li{display:flex;gap:8px;align-items:flex-start}
.plan li .ico{color:var(--ok);margin-top:2px}
@media (max-width:760px){.plans{grid-template-columns:minmax(0,1fr)}.plan{padding:24px}}

.chart-card{padding:32px}
.chart{position:relative;margin-top:24px}
.chart svg{width:100%;height:auto;overflow:visible}
.chart .axis{fill:var(--t3);font-size:11px;font-family:var(--ff-body)}
.chart .gridl{stroke:var(--line);stroke-dasharray:3 5}
.chart .zero{stroke:var(--line-2)}
.chart .area{fill:url(#cg)}
.chart .lineP{fill:none;stroke:var(--sun-600);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.chart .be circle{fill:var(--surface);stroke:var(--ok);stroke-width:3}
.chart .be text{font-size:12px;font-weight:600;fill:var(--ok);font-family:var(--ff-body)}
.chart-legend{display:flex;flex-wrap:wrap;gap:24px;margin-top:16px}
.chart-legend div b{display:block;font-family:var(--ff-head);font-size:var(--fs-xl);letter-spacing:-.02em}
.chart-legend div span{font-size:var(--fs-xs);color:var(--t3)}
@media (max-width:680px){.chart-card{padding:24px 16px}}

.impact{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.impact>div{display:flex;gap:16px;align-items:center;padding:24px;border-radius:var(--r-xl);background:var(--surface);border:1px solid var(--line)}
.impact b{display:block;font-family:var(--ff-head);font-size:var(--fs-xl);letter-spacing:-.02em}
.impact span.xs{color:var(--t3)}
@media (max-width:760px){.impact{grid-template-columns:minmax(0,1fr)}}

.notes{display:grid;gap:16px;padding:24px 32px;font-size:var(--fs-sm);color:var(--t2)}
.notes b{color:var(--t1)}
.cmp{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}
.cmp th,.cmp td{padding:12px 16px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.cmp th{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--t3)}
.cmp td:first-child{color:var(--t3);width:28%}
.interest-cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;padding:32px;border-radius:var(--r-2xl);background:linear-gradient(135deg,#FFF6E3,#FDEBC6);border:1px solid #F6DDB0}
.interest-cta h3{font-size:var(--fs-xl)}
.interest-cta p{color:#6B4A0E;margin-top:4px}

/* near-you live panel */
.near{padding:24px}
.near__head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}
.near .media{aspect-ratio:4/3;border-radius:var(--r-lg)}
.near__who{display:flex;align-items:center;gap:12px;margin:16px 0}
.near__who .av{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:var(--paper-2);color:var(--t2)}
.near__who b{display:block;font-size:var(--fs-sm)}
.near__who span{font-size:var(--fs-xs);color:var(--t3)}
.near .tabs{margin-bottom:16px}
.tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tile{padding:14px;border-radius:var(--r-md);background:var(--paper);border:1px solid var(--line)}
.tile b{display:block;font-family:var(--ff-head);font-size:var(--fs-lg);letter-spacing:-.02em}
.tile span{display:flex;align-items:center;gap:6px;font-size:var(--fs-xs);color:var(--t3);margin-top:2px}
.tile--sun{background:linear-gradient(180deg,#FFF6E3,#FFF1D1);border-color:#F6DDB0}
.tile--ok{background:var(--ok-bg);border-color:#C4E6D5}
.sysinfo{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin-top:16px}
.sysinfo div{display:flex;gap:10px;align-items:center}
.sysinfo .ico{color:var(--sun-600)}
.sysinfo b{display:block;font-size:var(--fs-sm)}
.sysinfo span{display:block;font-size:var(--fs-xs);color:var(--t3)}

.partner-banner{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:16px;padding:12px 16px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line);box-shadow:var(--sh-1);font-size:var(--fs-sm)}

/* ---------- quote / next steps ---------- */
.q-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:32px;align-items:start}
.q-side{position:sticky;top:calc(var(--hdr-h) + 24px);display:grid;gap:16px}
.q-sum{padding:24px}
.q-steps{display:grid;gap:24px}
.q-step{padding:32px}
.q-step__head{display:flex;gap:16px;align-items:flex-start}
.q-step__n{flex:none;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;font-family:var(--ff-head);font-weight:700;background:var(--paper-2);color:var(--t2)}
.q-step.is-done .q-step__n{background:var(--ok);color:#fff}
.q-step.is-active .q-step__n{background:var(--sun-grad);color:var(--ink-900);box-shadow:var(--sh-gold)}
.q-step h2{font-size:var(--fs-xl)}
.q-step__body{margin-top:24px;padding-left:56px}
.opt-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.opt{position:relative;padding:24px;border-radius:var(--r-xl);border:1.5px solid var(--line-2);background:var(--surface);display:flex;flex-direction:column;gap:12px;transition:all var(--t-fast) var(--ease)}
.opt:hover{border-color:rgba(8,29,28,.3);box-shadow:var(--sh-2)}
.opt h3{font-size:var(--fs-lg)}
.opt ul{display:grid;gap:6px;font-size:var(--fs-sm);color:var(--t2)}
.opt li{display:flex;gap:8px}
.opt li .ico{color:var(--ok);margin-top:3px}
.opt .price{font-family:var(--ff-head);font-size:var(--fs-2xl);font-weight:650;letter-spacing:-.03em}
.slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.slots button{min-height:44px;border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--surface);font-size:var(--fs-sm);font-weight:600;color:var(--t2);transition:all var(--t-fast)}
.slots button:hover:not([disabled]){border-color:var(--sun-500);color:var(--t1)}
.slots button[aria-pressed="true"]{background:var(--ink-900);border-color:var(--ink-900);color:var(--d1)}
.slots button[disabled]{opacity:.35;text-decoration:line-through}
.days{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;padding-bottom:4px}
.days::-webkit-scrollbar{display:none}
.days button{flex:none;width:68px;padding:10px 0;border-radius:var(--r-md);border:1px solid var(--line-2);background:var(--surface);text-align:center;transition:all var(--t-fast)}
.days button small{display:block;font-size:.68rem;color:var(--t3);text-transform:uppercase;letter-spacing:.06em}
.days button b{display:block;font-family:var(--ff-head);font-size:var(--fs-lg)}
.days button[aria-pressed="true"]{background:var(--ink-900);border-color:var(--ink-900);color:var(--d1)}
.days button[aria-pressed="true"] small{color:var(--sun-400)}
.done-box{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:var(--r-lg);background:var(--ok-bg);border:1px solid #C4E6D5;color:#0E5A3F}
.done-box .ico{color:var(--ok);flex:none}
@media (max-width:1100px){.q-grid{grid-template-columns:minmax(0,1fr)}.q-side{position:static}}
@media (max-width:680px){.q-step{padding:24px 16px}.q-step__body{padding-left:0}.opt-cards{grid-template-columns:minmax(0,1fr)}}

/* gateway (demo checkout) */
.gw__head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.gw__amt{font-family:var(--ff-head);font-size:var(--fs-2xl);font-weight:650;letter-spacing:-.03em}
.gw__methods{display:grid;gap:8px;margin-top:16px}
.pay-result{text-align:center;display:grid;justify-items:center;gap:16px}
.pay-result .big-ico{width:72px;height:72px;border-radius:50%;display:grid;place-items:center}
.pay-result .big-ico .ico{width:36px;height:36px}
.pay-result .ok{background:var(--ok-bg);color:var(--ok)}
.pay-result .bad{background:var(--err-bg);color:var(--err)}

/* ---------- proposal (print) ---------- */
.proposal{max-width:900px;margin:0 auto;background:#fff;padding:48px;border-radius:var(--r-xl);box-shadow:var(--sh-2)}
@media print{.proposal{box-shadow:none;padding:0;border-radius:0}.no-print{display:none!important}@page{size:A4;margin:14mm}}

/* ---------- financing ---------- */
.fin-options{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.fin-opt{padding:32px;display:flex;flex-direction:column;gap:16px}
.fin-opt h3{font-size:var(--fs-xl)}
.fin-opt p{color:var(--t2);font-size:var(--fs-sm)}
.fin-opt ul{display:grid;gap:8px;font-size:var(--fs-sm)}
.fin-opt li{display:flex;gap:8px}.fin-opt li .ico{color:var(--ok);margin-top:3px}
.fin-opt .btn{margin-top:auto;align-self:flex-start}
@media (max-width:1024px){.fin-options{grid-template-columns:minmax(0,1fr)}}
.req-card{padding:0;overflow:hidden}
.req-card__head{padding:24px 32px;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px}
.req-card__body{padding:32px}
.stepper{display:flex;gap:8px;margin-bottom:32px}
.stepper span{flex:1;height:4px;border-radius:4px;background:var(--paper-2);position:relative;overflow:hidden}
.stepper span.is-on::after,.stepper span.is-done::after{content:"";position:absolute;inset:0;background:var(--sun-500)}
.wiz-step{display:grid;gap:24px;animation:rise 400ms var(--ease)}
.wiz-foot{display:flex;justify-content:space-between;gap:16px;margin-top:32px}
.grid-2f{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}
.grid-2f .full{grid-column:1/-1}
@media (max-width:680px){.grid-2f{grid-template-columns:minmax(0,1fr)}.req-card__body{padding:24px 16px}.req-card__head{padding:16px}}
.yn{display:inline-grid;grid-auto-flow:column;gap:4px;padding:4px;border-radius:var(--r-pill);background:var(--paper-2)}
.yn label{position:relative;min-width:64px;min-height:36px;display:grid;place-items:center;padding:0 14px;border-radius:var(--r-pill);font-size:var(--fs-sm);font-weight:600;color:var(--t2);cursor:pointer;transition:all var(--t-fast)}
.yn input{position:absolute;opacity:0;pointer-events:none}
.yn label:has(input:checked){background:var(--surface);color:var(--t1);box-shadow:var(--sh-1)}
.yn label:has(input:focus-visible){outline:2px solid var(--sun-500)}
.q-line{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:16px 0;border-bottom:1px solid var(--line)}
.q-line:last-child{border-bottom:0}
.q-line .label{max-width:520px;font-weight:500}
.fz{display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;flex:none}
.fz--green{background:var(--ok-bg);color:var(--ok)}.fz--orange{background:var(--warn-bg);color:var(--warn)}.fz--red{background:var(--err-bg);color:var(--err)}
.score{display:grid;grid-template-columns:auto 1fr;gap:32px;align-items:center;padding:32px;border-radius:var(--r-2xl);background:var(--ink-900);color:var(--d1)}
.gauge{position:relative;width:160px;height:160px}
.gauge svg{width:100%;height:100%;transform:rotate(-90deg)}
.gauge .trk{fill:none;stroke:rgba(255,255,255,.1);stroke-width:12}
.gauge .val{fill:none;stroke-width:12;stroke-linecap:round;transition:stroke-dashoffset 1.2s var(--ease)}
.gauge b{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--ff-head);font-size:var(--fs-3xl);font-weight:650;letter-spacing:-.03em}
.fz-list{display:grid;gap:8px}
.fz-row{display:grid;grid-template-columns:24px 1fr auto;gap:12px;align-items:start;padding:12px 16px;border-radius:var(--r-md);background:var(--surface);border:1px solid var(--line);font-size:var(--fs-sm)}
.fz-row b{display:block}
.fz-row span.muted{display:block;font-size:var(--fs-xs)}
@media (max-width:680px){.score{grid-template-columns:minmax(0,1fr);justify-items:center;text-align:center;padding:24px 16px}}
.emi-calc{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;padding:32px;align-items:center}
.emi-out{padding:32px;border-radius:var(--r-xl);background:var(--ink-900);color:var(--d1);text-align:center}
.emi-out b{display:block;font-family:var(--ff-head);font-size:var(--fs-4xl);letter-spacing:-.04em;font-weight:650;line-height:1.1}
@media (max-width:760px){.emi-calc{grid-template-columns:minmax(0,1fr);padding:24px 16px}}

/* ---------- kits ---------- */
.kit{display:flex;flex-direction:column;overflow:hidden}
.kit .media{aspect-ratio:16/10}
.kit__tag{position:absolute;left:16px;top:16px}
.kit__body{padding:24px;display:flex;flex-direction:column;gap:16px;flex:1}
.kit__title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}
.kit__title h3{font-size:var(--fs-xl)}
.kit__price{font-family:var(--ff-head);font-weight:650;font-size:var(--fs-lg)}
.kit .kv{padding:8px 0}
.kit__eco{display:flex;gap:8px;align-items:center;font-size:var(--fs-xs);color:var(--ok);font-weight:600}
.kit .btn{margin-top:auto}
.kit.is-rec{border:1.5px solid var(--sun-500);box-shadow:0 0 0 4px rgba(245,165,36,.12),var(--sh-3)}
.kd{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:32px;align-items:start}
.kd__side{position:sticky;top:calc(var(--hdr-h) + 24px);display:grid;gap:16px}
.part{padding:32px}
.part__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.part__head h2{font-size:var(--fs-xl);display:flex;align-items:center;gap:10px}
.part__price{font-family:var(--ff-head);font-size:var(--fs-2xl);font-weight:650;letter-spacing:-.03em;text-align:right}
.part__price small{display:block;font-family:var(--ff-body);font-size:var(--fs-xs);font-weight:500;color:var(--t3);letter-spacing:0}
.comp{display:grid;grid-template-columns:48px 1fr auto;gap:16px;align-items:start;padding:16px 0;border-top:1px solid var(--line)}
.comp .ico-tile{width:48px;height:48px}
.comp b{display:block}
.comp p{font-size:var(--fs-sm);color:var(--t2)}
.comp .xs{color:var(--t3)}
.comp__val{font-family:var(--ff-head);font-weight:650;white-space:nowrap}
.cart{padding:24px}
.cart__line{display:grid;grid-template-columns:1fr auto;gap:8px 16px;padding:16px 0;border-bottom:1px solid var(--line)}
.qty{display:inline-flex;align-items:center;border:1px solid var(--line-2);border-radius:var(--r-pill);overflow:hidden}
.qty button{width:36px;height:36px;border:0;background:none;display:grid;place-items:center;color:var(--t2)}
.qty button:hover{background:var(--paper-2);color:var(--t1)}
.qty span{min-width:28px;text-align:center;font-weight:600}
.cart__total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0}
.cart__total b{font-family:var(--ff-head);font-size:var(--fs-2xl);letter-spacing:-.03em}
@media (max-width:1100px){.kd{grid-template-columns:minmax(0,1fr)}.kd__side{position:static}}
@media (max-width:680px){.part{padding:24px 16px}.comp{grid-template-columns:40px 1fr;}.comp__val{grid-column:2}}

/* ---------- stories ---------- */
.filters{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr auto;gap:16px;align-items:end;padding:24px;margin-bottom:32px}
@media (max-width:1024px){.filters{grid-template-columns:repeat(2,minmax(0,1fr))}.filters .full{grid-column:1/-1}}
@media (max-width:560px){.filters{grid-template-columns:minmax(0,1fr);padding:16px}}
.story-card{overflow:hidden;display:flex;flex-direction:column}
.story-card .media{aspect-ratio:4/3}
.story-card__top{position:absolute;left:16px;right:16px;top:16px;display:flex;justify-content:space-between;gap:8px}
.story-card__body{padding:24px;display:flex;flex-direction:column;gap:8px;flex:1}
.story-card__body h3{font-size:var(--fs-lg);line-height:1.3}
.story-card__body .btn--link{margin-top:auto;padding-top:8px}
.results-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px;font-size:var(--fs-sm);color:var(--t3)}
.st-hero{position:relative;min-height:560px;display:flex;align-items:flex-end;color:var(--d1);background:var(--ink-950);isolation:isolate;overflow:hidden}
.st-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.st-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(5,20,19,.55) 0%,rgba(5,20,19,.2) 35%,rgba(5,20,19,.92) 100%)}
.st-hero .container{padding-top:calc(var(--hdr-h) + 64px);padding-bottom:48px}
.st-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}
.st-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:48px;align-items:start}
.st-body p{font-size:var(--fs-lg);line-height:1.7;color:var(--t2)}
.st-body p+p{margin-top:24px}
.st-body p:first-child::first-letter{float:left;font-family:var(--ff-serif);font-size:4.2em;line-height:.8;padding:6px 10px 0 0;color:var(--sun-600)}
.pull{margin:40px 0;padding:32px;border-radius:var(--r-2xl);background:var(--ink-900);color:var(--d1)}
.pull blockquote{margin:0;font-family:var(--ff-serif);font-style:italic;font-size:clamp(1.563rem,3vw,2.2rem);line-height:1.25}
.pull figcaption{margin-top:16px;font-size:var(--fs-sm);color:var(--d3)}
.gallery{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:16px;margin-top:40px}
.gallery .media{border-radius:var(--r-xl)}
.gallery .media:first-child{grid-row:span 2}
.gallery button{padding:0;border:0;background:none;cursor:zoom-in;display:block;height:100%}
.gallery img{height:100%}
@media (max-width:1024px){.st-grid{grid-template-columns:minmax(0,1fr)}}
@media (max-width:560px){.gallery{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}.gallery .media:first-child{grid-column:1/-1;grid-row:auto}}

/* ---------- content pages ---------- */
.prose{max-width:760px}
.prose h2{font-size:var(--fs-2xl);margin:48px 0 16px}
.prose h3{font-size:var(--fs-lg);margin:32px 0 12px}
.prose p,.prose li{color:var(--t2);line-height:1.75}
.prose p+p{margin-top:16px}
.prose ul{list-style:disc;padding-left:24px;margin-top:12px;display:grid;gap:8px}
.team{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}
.member{padding:24px;text-align:center;display:grid;justify-items:center;gap:8px}
.member .av{width:96px;height:96px;border-radius:50%;display:grid;place-items:center;font-family:var(--ff-head);font-size:var(--fs-2xl);font-weight:650;color:var(--ink-900);background:var(--sun-grad);box-shadow:inset 0 2px 0 rgba(255,255,255,.5),var(--sh-gold);margin-bottom:8px}
.member:nth-child(3n+2) .av{background:linear-gradient(135deg,#CFE9DC,#8FD1B3)}
.member:nth-child(3n) .av{background:linear-gradient(135deg,#E6DDF7,#B9A8EC)}
.member h3{font-size:var(--fs-md)}
.member .xs{color:var(--t3)}
@media (max-width:1024px){.team{grid-template-columns:repeat(2,1fr)}}
@media (max-width:480px){.team{grid-template-columns:minmax(0,1fr)}}
.faq-wrap{display:grid;grid-template-columns:260px minmax(0,1fr);gap:48px;align-items:start}
.faq-nav{position:sticky;top:calc(var(--hdr-h) + 24px);display:grid;gap:4px}
.faq-nav button{display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:0 16px;border-radius:var(--r-md);border:0;background:none;text-align:left;font-weight:600;color:var(--t2);transition:all var(--t-fast)}
.faq-nav button:hover{background:rgba(8,29,28,.04);color:var(--t1)}
.faq-nav button[aria-selected="true"]{background:var(--surface);color:var(--t1);box-shadow:var(--sh-1)}
.faq-nav button span{font-size:var(--fs-xs);color:var(--t3);font-weight:500}
@media (max-width:900px){.faq-wrap{grid-template-columns:minmax(0,1fr)}.faq-nav{position:static;display:flex;overflow-x:auto}.faq-nav button{flex:none}}
.search-box{position:relative}
.search-box .ico{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:var(--t3)}
.search-box .input{padding-left:48px}
.contact-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.contact-card{padding:32px;display:flex;flex-direction:column;gap:12px}
.contact-card h3{font-size:var(--fs-lg)}
.contact-card a.big{font-family:var(--ff-head);font-size:var(--fs-xl);font-weight:650;letter-spacing:-.02em}
@media (max-width:900px){.contact-cards{grid-template-columns:minmax(0,1fr)}}
.jobs{display:grid;gap:12px}
.job{display:grid;grid-template-columns:1fr auto auto;gap:24px;align-items:center;padding:24px 32px}
.job h3{font-size:var(--fs-lg)}
@media (max-width:760px){.job{grid-template-columns:minmax(0,1fr);gap:12px;padding:24px}}
.nf{min-height:80vh;display:grid;place-items:center;text-align:center;padding:calc(var(--hdr-h) + 48px) 24px 64px}
.nf b{display:block;font-family:var(--ff-serif);font-style:italic;font-size:clamp(6rem,20vw,12rem);line-height:.9;background:var(--sun-grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px;align-items:center}
.split .media{border-radius:var(--r-2xl);aspect-ratio:4/3}
@media (max-width:900px){.split{grid-template-columns:minmax(0,1fr);gap:32px}}
.checklist{display:grid;gap:12px}
.checklist li{display:flex;gap:12px;align-items:flex-start}
.checklist li .ico{color:var(--ok);margin-top:3px}
.art-body{max-width:720px;margin-inline:auto}
.art-body p{font-size:var(--fs-lg);line-height:1.75;color:var(--t2)}
.art-body p+p{margin-top:24px}
.art-body h2{font-size:var(--fs-2xl);margin:48px 0 16px}
@keyframes drawLine{to{stroke-dashoffset:0}}
.tiles--3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (max-width:560px){.tiles--3{grid-template-columns:repeat(2,minmax(0,1fr))}.tiles--3>:last-child{grid-column:1/-1}}
