/* ============ FLO identity tokens (paper, ink and type shared with shamkamboj.com; FLO teal #00697C from the logo) ============ */
:root{
  --bg:#f5f0e8; --bg2:#ede8de; --bg3:#e5dfd4;
  --ink:#1a1612; --ink2:#2a241e; --muted:#6b5f52; --faint:#c4b8a8; --line:#ddd5c8;
  --flo:#00697c; --flo-l:#4fb6c6; --flo-d:#004e5c; --flo-wash:#d7e8ea;
  --amber:#c97c2e;
  --sans:'Cabinet Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --serif:'Fraunces',Georgia,'Times New Roman',serif;
  --max:1140px; --r:14px; --ease:cubic-bezier(.2,.8,.2,1);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
@media(max-width:600px){.wrap{padding:0 16px}body{font-size:17px}}

/* type */
.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;font-weight:700;color:var(--flo-d);display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--flo)}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.02em;line-height:1.08}
h1{font-size:clamp(40px,6.2vw,76px);font-weight:500}
h2{font-size:clamp(32px,4.4vw,54px)}
h3{font-size:clamp(22px,2.4vw,28px);line-height:1.2}
em.hl{font-style:italic;color:var(--flo-d);font-weight:300}
.lead{font-size:clamp(18px,1.6vw,21px);color:var(--muted);max-width:620px}
p+p{margin-top:1em}

/* buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:15px 24px;border-radius:999px;font-weight:700;font-size:15px;text-decoration:none;transition:transform .2s var(--ease),background .2s,color .2s;border:1.5px solid var(--ink)}
.btn-ink{background:var(--ink);color:var(--bg)}
.btn-ink:hover{background:var(--flo-d);border-color:var(--flo-d);transform:translateY(-2px)}
.btn-ghost{background:transparent;color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:var(--bg)}
.btn .arr{transition:transform .2s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}

/* logo */
.mark{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.mark img{height:34px;width:auto}
.mark small{font-size:11px;letter-spacing:.2em;font-weight:700;color:var(--muted);text-transform:uppercase;padding-left:12px;border-left:1px solid var(--line);line-height:1.3}
footer .mark img{height:38px}
@media(max-width:600px){.mark small{display:none}}

/* rings: the logo's O, used as the founder-outward diagram */
.rings{width:100%;max-width:400px;margin:0 auto;display:block;overflow:visible}
.rings .ring{fill:none;stroke:var(--flo-l);stroke-width:7;stroke-linecap:round}
.rings .rdot{fill:var(--flo-l);transform-box:fill-box;transform-origin:center;animation:blink 3.6s var(--ease) infinite}
.rings .d1{animation-delay:.35s}.rings .d2{animation-delay:.7s}
.rings text{fill:#cfc6b8;font-family:var(--sans);font-size:12.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.rings .lbl-bg{fill:var(--ink)}
@keyframes blink{0%,60%,100%{transform:scale(1);opacity:1}30%{transform:scale(1.6);opacity:.55}}

/* nav */
header{position:sticky;top:0;z-index:50;background:rgba(245,240,232,.88);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .3s}
header.scrolled{border-bottom-color:var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;height:72px}
.nav ul{display:flex;gap:30px;list-style:none;font-size:15px;font-weight:500}
.nav ul a{text-decoration:none;color:var(--muted)}
.nav ul a:hover{color:var(--ink)}
.nav .btn{padding:11px 18px;font-size:14px}
.menu-btn{display:none;background:none;border:0;font:inherit;font-weight:700;font-size:14px;cursor:pointer;color:var(--ink)}
@media(max-width:900px){
  .nav ul{display:none}
  .nav ul.open{display:flex;position:absolute;top:72px;left:0;right:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line);padding:8px 16px 16px}
  .nav ul.open a{display:block;padding:12px 0;border-bottom:1px solid var(--line);color:var(--ink)}
  .menu-btn{display:block}
  .nav .btn{display:none}
}

/* image placeholders: replace the whole .ph element with an <img> once generated */
.ph{position:relative;background:repeating-linear-gradient(135deg,var(--bg2) 0 14px,var(--bg3) 14px 28px);border:1.5px dashed var(--faint);border-radius:var(--r);display:flex;flex-direction:column;justify-content:flex-end;padding:18px;overflow:hidden;color:var(--muted)}
.ph b{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--flo-d);font-weight:800}
.ph span{font-size:14px;line-height:1.45;margin-top:4px;max-width:420px}
.ph i{position:absolute;top:14px;right:16px;font-style:normal;font-size:11px;letter-spacing:.08em;background:var(--bg);padding:3px 8px;border-radius:99px;border:1px solid var(--line)}
.media{border-radius:var(--r);overflow:hidden}
.media img{width:100%;height:100%;object-fit:cover}

/* sections */
section{padding:110px 0}
@media(max-width:700px){section{padding:72px 0}}
.rule{height:1px;background:var(--line);border:0}

/* hero */
.hero{padding:70px 0 90px}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center}
.hero h1{margin:22px 0 26px}
.hero .lead{margin-bottom:34px}
.hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.hero .ph{aspect-ratio:4/5}
.hero-note{margin-top:38px;font-size:14px;color:var(--muted);display:flex;gap:10px;align-items:center}
.hero-note img{width:36px;height:36px;border-radius:50%;object-fit:cover;filter:grayscale(1);border:2px solid var(--bg)}
@media(max-width:900px){.hero-grid{grid-template-columns:1fr;gap:40px}.hero .ph{aspect-ratio:4/3}}

/* belief */
.belief{background:var(--ink);color:var(--bg)}
.belief .eyebrow{color:var(--flo-l)}
.belief .eyebrow::before{background:var(--flo-l)}
.belief h2{margin:22px 0 40px;max-width:900px}
.belief h2 em{color:var(--flo-l);font-style:italic;font-weight:300}
.belief-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.belief p{color:#cfc6b8;font-size:19px}
.belief .pull{font-family:var(--serif);font-size:clamp(24px,2.6vw,32px);line-height:1.3;color:var(--bg);font-style:italic;font-weight:300;border-left:2px solid var(--flo-l);padding-left:24px}
.belief .ph{background:repeating-linear-gradient(135deg,#231e19 0 14px,#2a241e 14px 28px);border-color:#4a4036;color:#a89a88;aspect-ratio:16/9;margin-top:56px}
.belief .ph i{background:var(--ink);border-color:#4a4036}
.belief .ph b{color:var(--flo-l)}
@media(max-width:800px){.belief-grid{grid-template-columns:1fr;gap:28px}}

/* box */
.box-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:64px;align-items:center}
.box-grid .ph{aspect-ratio:1/1}
.box-grid h2{margin:20px 0 24px}
.box-grid p{color:var(--muted)}
.box-grid p strong{color:var(--ink)}
@media(max-width:800px){.box-grid{grid-template-columns:1fr;gap:36px}.box-grid .ph{aspect-ratio:4/3}}

/* listen */
.listen{background:var(--bg2)}
.listen-head{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:end;margin-bottom:56px}
.listen-head h2{margin-top:20px}
.listen-head p{color:var(--muted)}
.listen-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:stretch}
.listen-grid .ph{min-height:420px}
.qlist{list-style:none;display:grid;gap:12px;align-content:start}
.qlist li{background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:20px 22px;display:flex;gap:16px;align-items:flex-start;font-size:17px}
.qlist li span{font-family:var(--serif);font-style:italic;color:var(--flo);font-size:20px;line-height:1.2;min-width:24px}
.qlist .then{background:var(--ink);color:var(--bg);border-color:var(--ink);font-weight:700}
.qlist .then span{color:var(--flo-l)}
@media(max-width:800px){.listen-head,.listen-grid{grid-template-columns:1fr;gap:28px}.listen-grid .ph{min-height:260px}}

/* timing */
.timing h2{margin:20px 0 22px;max-width:760px}
.timing .lead{margin-bottom:56px}
.t-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:stretch}
.t-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 1px 0 var(--line),0 24px 48px -32px rgba(26,22,18,.25)}
.t-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.t-tabs button{font:inherit;font-size:14px;font-weight:700;border:1.5px solid var(--line);background:var(--bg);color:var(--muted);border-radius:99px;padding:8px 14px;cursor:pointer;transition:all .2s}
.t-tabs button[aria-selected="true"]{background:var(--ink);border-color:var(--ink);color:var(--bg)}
.t-time{font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:700}
.t-enq{font-family:var(--serif);font-size:22px;margin:6px 0 24px;line-height:1.3}
.t-steps{list-style:none;border-left:2px solid var(--flo-wash);margin-left:6px}
.t-steps li{position:relative;padding:0 0 20px 22px}
.t-steps li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2.5px solid var(--flo)}
.t-steps li.human::before{background:var(--flo)}
.t-steps b{display:block;font-size:13px;letter-spacing:.06em;color:var(--flo-d);text-transform:uppercase}
.t-why{margin-top:6px;padding-top:18px;border-top:1px solid var(--line);font-size:15px;color:var(--muted)}
.t-why strong{color:var(--ink)}
.t-side{display:flex;flex-direction:column;gap:20px}
.t-side .ph{flex:1;min-height:260px}
.t-side p{color:var(--muted)}
.t-side p strong{color:var(--ink)}
@media(max-width:860px){.t-grid{grid-template-columns:1fr}}

/* notices */
.notice-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.n-card{border-radius:18px;overflow:hidden;background:var(--bg2);display:flex;flex-direction:column}
.n-card .ph{border-radius:0;border:0;border-bottom:1.5px dashed var(--faint);aspect-ratio:16/10}
.n-body{padding:34px}
.n-body h3{margin:14px 0 18px}
.n-body ul{list-style:none;display:grid;gap:10px}
.n-body li{padding-left:26px;position:relative}
.n-body li::before{content:"";position:absolute;left:0;top:.72em;width:14px;height:2px;background:var(--flo)}
.n-body p{color:var(--muted)}
@media(max-width:800px){.notice-grid{grid-template-columns:1fr}}

/* how */
.how{background:var(--bg)}
.how h2{margin:20px 0 56px;max-width:760px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1.5px solid var(--ink)}
.step{padding:28px 26px 10px 0}
.step+.step{padding-left:26px;border-left:1px solid var(--line)}
.step .n{font-family:var(--serif);font-style:italic;font-size:44px;color:var(--flo);line-height:1;font-weight:300}
.step h3{font-size:22px;margin:16px 0 10px}
.step p{font-size:16px;color:var(--muted)}
@media(max-width:900px){.steps{grid-template-columns:1fr 1fr}.step:nth-child(3){padding-left:0;border-left:0}.step{padding-bottom:28px}}
@media(max-width:560px){.steps{grid-template-columns:1fr}.step,.step+.step{padding-left:0;border-left:0;border-bottom:1px solid var(--line)}}

/* stories */
.stories h2{margin:20px 0 48px}
.s-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.s-card{border:1.5px dashed var(--faint);border-radius:18px;padding:28px;display:flex;flex-direction:column;gap:14px;min-height:300px}
.s-card .tag{font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--flo-d)}
.s-card h3{font-size:22px}
.s-card p{font-size:16px;color:var(--muted);flex:1}
.s-card .who{font-size:14px;font-weight:700;border-top:1px solid var(--line);padding-top:14px}
@media(max-width:900px){.s-grid{grid-template-columns:1fr}.s-card{min-height:0}}

/* data */
.data{background:var(--ink);color:var(--bg)}
.data .eyebrow{color:var(--flo-l)}
.data .eyebrow::before{background:var(--flo-l)}
.data-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:64px;align-items:start}
.data h2{margin:20px 0 22px}
.data .lead{color:#cfc6b8}
.d-list{list-style:none;display:grid;gap:2px;border-radius:16px;overflow:hidden}
.d-list li{background:#231e19;padding:24px 26px;display:grid;grid-template-columns:40px 1fr;gap:14px}
.d-list svg{width:26px;height:26px;stroke:var(--flo-l);fill:none;stroke-width:1.6}
.d-list strong{display:block;font-size:18px;margin-bottom:2px}
.d-list span{color:#a89a88;font-size:16px}
@media(max-width:860px){.data-grid{grid-template-columns:1fr;gap:36px}}

/* founder */
.founder-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:64px;align-items:center}
.portrait{position:relative;max-width:400px}
.portrait img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:50%;filter:grayscale(1) contrast(1.05);background:var(--bg3)}
.portrait::after{content:"";position:absolute;right:6%;bottom:8%;width:22px;height:22px;border-radius:50%;background:var(--flo);border:5px solid var(--bg)}
.founder blockquote{font-family:var(--serif);font-size:clamp(26px,3vw,38px);line-height:1.25;font-weight:300;margin:22px 0 28px}
.founder blockquote .ph-text{background:var(--flo-wash);border-radius:6px;padding:0 6px;font-size:.6em;font-family:var(--sans);font-weight:500;display:inline-block;line-height:1.5;color:var(--flo-d)}
.sig strong{display:block;font-size:18px}
.sig span{color:var(--muted);font-size:15px}
.sig a{color:var(--flo-d);font-weight:700;font-size:15px}
.founder .ph{aspect-ratio:16/9;margin-top:28px}
@media(max-width:800px){.founder-grid{grid-template-columns:1fr;gap:36px}.portrait{max-width:260px}}

/* close */
.close{text-align:center;padding:130px 0;background:radial-gradient(ellipse at 50% 120%,var(--flo-wash),transparent 60%)}
.close h2{max-width:820px;margin:20px auto 22px}
.close .lead{margin:0 auto 36px}
.close .ctas{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}

/* footer */
footer{background:var(--bg2);padding:64px 0 34px;font-size:15px;color:var(--muted)}
.f-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px}
.f-grid h4{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);margin-bottom:14px}
.f-grid ul{list-style:none;display:grid;gap:8px}
.f-grid a{text-decoration:none}
.f-grid a:hover{color:var(--ink)}
.f-base{margin-top:50px;padding-top:24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:13px}
@media(max-width:800px){.f-grid{grid-template-columns:1fr 1fr}}

/* reveal */
.rv{opacity:0;transform:translateY(18px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.rings .rdot{animation:none}html{scroll-behavior:auto}}

/* founder strip (home) */
.fstrip{padding:56px 0}
.fstrip-in{display:flex;align-items:center;gap:22px;background:var(--bg2);border-radius:18px;padding:22px 26px}
.fstrip img{width:64px;height:64px;border-radius:50%;object-fit:cover;filter:grayscale(1);flex:none;background:var(--bg3)}
.fstrip p{flex:1;font-size:16px;color:var(--muted)}
.fstrip p strong{color:var(--ink)}
.fstrip a.more{font-weight:700;color:var(--flo-d);white-space:nowrap;text-decoration:none}
@media(max-width:640px){.fstrip-in{flex-wrap:wrap}.fstrip a.more{white-space:normal}}
/* team avatars (hero note) */
.avs{display:flex;flex:none}
.avs .av{width:36px;height:36px;border-radius:50%;background:var(--bg3);border:2px solid var(--bg);margin-left:-10px;display:grid;place-items:center;font-size:9px;font-weight:800;color:var(--muted)}
.avs .av:first-child{margin-left:0}
/* subpage hero */
.sub-hero{padding:70px 0 40px}
.sub-hero h1{font-size:clamp(38px,5.4vw,64px);margin:20px 0 22px;max-width:900px}
.back{font-size:15px;font-weight:700;color:var(--flo-d);text-decoration:none}

/* operations / workflows */
.ops{background:var(--bg2)}
.ops-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.ops h2{margin:20px 0 24px}
.ops p{color:var(--muted)}
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:26px 0}
.chips li{font-size:14px;font-weight:700;padding:7px 13px;border-radius:99px;background:var(--bg);border:1px solid var(--line)}
.ops .ops-line{font-family:var(--serif);font-style:italic;font-size:24px;line-height:1.3;color:var(--ink);border-left:2px solid var(--flo);padding-left:18px}
.w-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;box-shadow:0 24px 48px -32px rgba(26,22,18,.25)}
.w-flow{list-style:none;counter-reset:w;display:grid;gap:10px}
.w-flow li{position:relative;padding:14px 16px 14px 54px;border-radius:12px;background:var(--bg);font-size:16px;line-height:1.45}
.w-flow li b{display:block;font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:2px}
.w-flow li::before{content:"";position:absolute;left:16px;top:16px;width:24px;height:24px;border-radius:50%;background-position:center;background-repeat:no-repeat}
.w-assign::before,.k-assign{background-color:var(--flo)!important}
.w-do::before,.k-do{background-color:var(--flo-l)!important}
.w-check::before,.k-check{background-color:var(--ink)!important}
.w-feedback::before,.k-feedback{background-color:var(--amber)!important}
.w-loop::before,.k-loop{background-color:#fff!important;border:2.5px dashed var(--amber)}
.w-escalate::before,.k-escalate{background-color:#b83030!important}
.w-assign b{color:var(--flo-d)}.w-do b{color:var(--flo)}.w-check b{color:var(--ink)}.w-feedback b,.w-loop b{color:#8a5418}.w-escalate b{color:#b83030}
.w-loop{margin-left:26px;background:#fbf3e8!important;border:1px dashed #e3c79f}
.w-loop::after{content:"↺";position:absolute;left:21px;top:15px;font-size:15px;font-weight:800;color:var(--amber)}
.w-escalate{margin-left:26px;background:#f8e9e7!important}
.w-escalate::after{content:"↑";position:absolute;left:23px;top:15px;font-size:15px;font-weight:800;color:#fff}
.w-legend{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.w-legend i{display:inline-block;width:11px;height:11px;border-radius:50%;margin-right:6px;vertical-align:-1px;box-sizing:border-box}
@media(max-width:900px){.ops-grid{grid-template-columns:1fr;gap:36px}}
@media(max-width:1150px) and (min-width:901px){.nav ul{gap:18px;font-size:14px}.mark small{display:none}}

/* video stories */
.s-grid-2{grid-template-columns:1fr 1fr}
.s-video{border-style:solid;border-color:var(--line);background:var(--bg2)}
.s-video{display:grid;grid-template-columns:200px 1fr;column-gap:24px;align-content:start}
.s-video>*:not(.ph){grid-column:2}
.s-video .ph{grid-column:1;grid-row:1/span 4;aspect-ratio:9/16;padding:14px;background:repeating-linear-gradient(135deg,var(--bg) 0 14px,var(--bg3) 14px 28px)}
.s-video .who a{color:var(--flo-d)}
@media(max-width:1000px){.s-grid-2{grid-template-columns:1fr}}
@media(max-width:520px){.s-video{grid-template-columns:1fr}.s-video>*:not(.ph),.s-video .ph{grid-column:1;grid-row:auto}.s-video .ph{max-width:240px;margin-bottom:8px}}

.s-label{font-size:13px;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--muted);margin-bottom:16px;display:flex;align-items:center;gap:12px}
.s-label::after{content:"";flex:1;height:1px;background:var(--line)}

/* ===================== site-wide additions (multi-page build) ===================== */
.skip{position:absolute;left:-9999px;top:8px;background:var(--ink);color:var(--bg);padding:8px 14px;border-radius:8px;z-index:100}
.skip:focus{left:12px}
.nav ul a[aria-current="page"]{color:var(--ink);font-weight:700}
.menu-cta{display:none}
@media(max-width:900px){.nav ul.open .menu-cta{display:block}.nav ul.open .menu-cta a{color:var(--flo-d);font-weight:700;border-bottom:0}}
a.more{font-weight:700;color:var(--flo-d);text-decoration:none}
a.more:hover{text-decoration:underline}
.cap-note{color:var(--muted);font-size:16px;max-width:560px;margin:-18px auto 34px}
.sub-hero .lead{margin-top:6px}
.f-about{margin-top:14px;max-width:320px}
:focus-visible{outline:2px solid var(--flo);outline-offset:3px;border-radius:4px}

/* our story */
.beliefs{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:44px;border-top:1.5px solid var(--ink);padding-top:28px}
.beliefs h3{font-size:22px;margin-bottom:10px}
.beliefs p{color:var(--muted);font-size:16px}
.story-beliefs h2{margin-top:20px}
@media(max-width:900px){.beliefs{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.beliefs{grid-template-columns:1fr}}

/* what we set up */
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cap{background:var(--bg2);border-radius:18px;padding:28px;display:flex;flex-direction:column}
.cap h3{font-size:22px;margin-bottom:16px}
.cap ul{list-style:none;display:grid;gap:9px;flex:1;margin-bottom:18px}
.cap li{padding-left:22px;position:relative;font-size:16px;line-height:1.45}
.cap li::before{content:"";position:absolute;left:0;top:.6em;width:10px;height:2px;background:var(--flo)}
.cap .more{font-size:15px}
@media(max-width:960px){.cap-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.cap-grid{grid-template-columns:1fr}}
.pricing-note{background:var(--ink);color:var(--bg)}
.pricing-note .eyebrow{color:var(--flo-l)}.pricing-note .eyebrow::before{background:var(--flo-l)}
.pricing-note h2{margin-top:20px}.pricing-note h2 em{color:var(--flo-l)}
.pricing-note p{color:#cfc6b8}
.pricing-note a.more{color:var(--flo-l)}
.pn-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
@media(max-width:800px){.pn-grid{grid-template-columns:1fr;gap:24px}}

/* book a conversation */
.book-hero{padding-bottom:110px}
.book-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:start}
.expect{list-style:none;display:grid;gap:14px;margin-top:30px;max-width:560px}
.expect li{padding-left:26px;position:relative;color:var(--muted)}
.expect li::before{content:"";position:absolute;left:0;top:.55em;width:11px;height:11px;border-radius:50%;border:2.5px solid var(--flo)}
.expect b{color:var(--ink)}
.book-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:30px;display:grid;gap:14px;box-shadow:0 24px 48px -32px rgba(26,22,18,.25)}
.book-card h2{font-size:28px;margin-bottom:4px}
.book-card label{display:grid;gap:6px;font-size:14px;font-weight:700}
.book-card .opt{font-weight:400;color:var(--muted)}
.book-card input,.book-card textarea{font:inherit;font-size:16px;font-weight:400;padding:12px 14px;border:1.5px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);width:100%}
.book-card input:focus,.book-card textarea:focus{outline:none;border-color:var(--flo)}
.book-card .btn{justify-content:center;margin-top:6px;cursor:pointer}
.form-note{font-size:13px;color:var(--muted)}
.form-note a{color:var(--flo-d)}
@media(max-width:900px){.book-grid{grid-template-columns:1fr;gap:36px}}

/* job pages */
.job-hero{padding:70px 0 80px}
.job-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.job-hero h1{font-size:clamp(38px,5.4vw,64px);margin:20px 0 24px}
.job-hero .lead{margin-bottom:32px}
.job-hero .ctas{display:flex;gap:12px;flex-wrap:wrap}
.job-hero-grid>.rv:only-child{grid-column:1/-1;max-width:820px}
@media(max-width:900px){.job-hero-grid{grid-template-columns:1fr;gap:36px}}
.symptoms{background:var(--ink);color:var(--bg);padding:70px 0}
.symptoms .eyebrow{color:var(--flo-l)}.symptoms .eyebrow::before{background:var(--flo-l)}
.sym-list{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:2px;margin-top:26px;border-radius:14px;overflow:hidden}
.sym-list li{background:#231e19;padding:22px 24px 22px 54px;position:relative;font-family:var(--serif);font-size:21px;line-height:1.35;font-style:italic;font-weight:300}
.sym-list li::before{content:"“";position:absolute;left:22px;top:14px;font-size:40px;color:var(--flo-l);font-style:normal}
@media(max-width:760px){.sym-list{grid-template-columns:1fr}}
.setup h2{margin:20px 0 40px}
.ask-set{border-top:1.5px solid var(--ink)}
.as-head,.as-row{display:grid;grid-template-columns:1fr 1.3fr;gap:40px;padding:20px 0;border-bottom:1px solid var(--line)}
.as-head{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--muted);padding:14px 0}
.as-row .ask{font-family:var(--serif);font-size:21px;line-height:1.35}
.as-row .set{color:var(--muted)}
.setup-extra{margin-top:28px;max-width:760px;padding:20px 24px;background:var(--flo-wash);border-radius:12px;color:var(--flo-d)}
@media(max-width:760px){.as-head{display:none}.as-row{grid-template-columns:1fr;gap:6px}}
.example{background:var(--bg2)}
.example h2{margin:20px 0 36px}
.ba{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:stretch}
.ba-col{border-radius:16px;padding:28px}
.ba-col b{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:10px}
.ba-col.before{background:var(--bg);border:1.5px dashed var(--faint)}
.ba-col.before b{color:var(--muted)}
.ba-col.after{background:#fff;border:1.5px solid var(--flo);box-shadow:0 24px 48px -32px rgba(0,105,124,.35)}
.ba-col.after b{color:var(--flo-d)}
.ba-arrow{align-self:center;font-size:28px;color:var(--flo)}
.ba-note{margin-top:16px;font-size:14px;color:var(--muted)}
@media(max-width:760px){.ba{grid-template-columns:1fr}.ba-arrow{transform:rotate(90deg);justify-self:center}}
.bigger-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.bigger h2{margin:20px 0 22px}
.bigger p{color:var(--muted)}
.related{list-style:none;display:grid;gap:12px}
.related a{display:block;text-decoration:none;padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:var(--bg);transition:border-color .2s,transform .2s var(--ease)}
.related a:hover{border-color:var(--flo);transform:translateX(4px)}
.related b{display:block;font-family:var(--serif);font-weight:500;font-size:20px}
.related span{font-size:15px;color:var(--muted)}
@media(max-width:800px){.bigger-grid{grid-template-columns:1fr;gap:28px}}

/* ===== live-site placeholder treatment: until real images arrive, slots show a quiet branded tile ===== */
.ph{background:var(--flo-wash) url(/assets/img/flo-rings-soft.svg) center/34% no-repeat!important;border:0!important}
.ph b,.ph span,.ph i{display:none!important}
.belief .ph{background:#231e19 url(/assets/img/flo-rings-dark.svg) center/22% no-repeat!important}
.n-card .ph{border-bottom:0!important}
.avs{display:none}

/* real images inside placeholders */
.ph.has-img{display:block;padding:0;background:none!important;border:0!important}
.ph.has-img::before,.ph.has-img::after{display:none!important;content:none!important}
.ph.has-img>i,.ph.has-img>b,.ph.has-img>span{display:none!important}
.ph.has-img>img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}

/* system trace cards on photos: what FLO did behind the moment */
.ph.has-img .trace{position:absolute;z-index:2;max-width:min(300px,78%);background:rgba(251,248,242,.95);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid rgba(26,22,18,.08);border-left:3px solid #00697C;border-radius:12px;padding:12px 14px 12px 13px;box-shadow:0 14px 34px -14px rgba(26,22,18,.45);color:#1a1612;font-size:13.5px;line-height:1.42;text-align:left;animation:trIn .7s cubic-bezier(.2,.7,.2,1) .4s both}
.ph.has-img .trace.t-2{animation-delay:.9s}
.ph.has-img .t-tl{top:16px;left:16px}.ph.has-img .t-tr{top:16px;right:16px}.ph.has-img .t-bl{bottom:16px;left:16px}.ph.has-img .t-br{bottom:16px;right:16px}
.ph.has-img .trace .tk{display:flex;align-items:center;gap:7px;font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;font-weight:700;color:#004E5C;margin:0 0 7px}
.ph.has-img .trace .tk::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:#00697C;box-shadow:0 0 0 3px #D7E8EA}
.ph.has-img .trace p{margin:0;font-size:13.5px;color:#1a1612;max-width:none}
.ph.has-img .trace p.tq{font-family:Fraunces,Georgia,serif;font-style:italic;font-size:16px;line-height:1.35}
.ph.has-img .trace ol{list-style:none;margin:0;padding:0}
.ph.has-img .trace li{position:relative;margin:0;padding:0 0 8px 17px;font-size:13px;line-height:1.38;color:#1a1612;list-style:none}
.ph.has-img .trace li:last-child{padding-bottom:0}
.ph.has-img .trace li::before{content:"";position:absolute;left:2px;top:5px;width:7px;height:7px;border-radius:50%;border:1.5px solid #00697C;background:#fbf8f2;box-sizing:border-box}
.ph.has-img .trace li:not(:last-child)::after{content:"";position:absolute;left:5.5px;top:13px;bottom:0;width:1px;background:#9cc9cf}
.ph.has-img .trace li.esc::before{border-color:#c97c2e;background:#c97c2e}
.ph.has-img .trace .tm{margin-top:7px;font-size:11.5px;color:#6b6157}
@keyframes trIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ph.has-img .trace{animation:none}}
@media (max-width:640px){.ph.has-img .trace{max-width:84%;padding:9px 11px;font-size:12px}.ph.has-img .trace li{font-size:12px;padding-bottom:6px}.ph.has-img .trace p.tq{font-size:14px}.ph.has-img .t-tl,.ph.has-img .t-tr{top:10px}.ph.has-img .t-bl,.ph.has-img .t-br{bottom:10px}.ph.has-img .t-tl,.ph.has-img .t-bl{left:10px}.ph.has-img .t-tr,.ph.has-img .t-br{right:10px}.ph.has-img .trace.t-hide-m{display:none}.ph.has-img{aspect-ratio:auto!important;overflow:visible;border-radius:0}.ph.has-img>img{height:auto;border-radius:var(--r,14px)}.ph.has-img .trace,.ph.has-img .t-tl,.ph.has-img .t-tr,.ph.has-img .t-bl,.ph.has-img .t-br{position:relative;top:auto;right:auto;bottom:auto;left:auto;display:block;width:fit-content;max-width:88%;margin:-30px 12px 0 auto}}

/* timing tab photo swap */
#t-img{transition:opacity .25s ease}

/* timing tabs: one-line segmented control */
.t-card .t-tabs{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;flex-wrap:nowrap;padding:4px;margin:0 0 26px;background:#f1ebe1;border:1px solid rgba(26,22,18,.08);border-radius:999px}
.t-card .t-tabs button{margin:0;min-width:0;padding:10px 6px;border:0;border-radius:999px;background:transparent;color:#6b6157;font:inherit;font-size:14px;font-weight:600;line-height:1.2;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;box-shadow:none;transition:background .2s,color .2s}
.t-card .t-tabs button:hover{color:#1a1612}
.t-card .t-tabs button[aria-selected="true"]{background:#1a1612;color:#f5f0e8}
.t-card .t-tabs button:focus-visible{outline:2px solid #00697C;outline-offset:2px}
@media (max-width:480px){.t-card .t-tabs{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:18px}.t-card .t-tabs button{border-radius:14px;font-size:13.5px;padding:10px 4px}}

/* our story: founder bio, principles, people */
.founder .chips{margin-top:6px}
.story-run{padding-top:0}
.people{display:flex;flex-wrap:wrap;gap:12px;margin:-14px 0 40px}
.people>div{display:flex;flex-direction:column;gap:2px;padding:14px 18px;border:1px solid rgba(26,22,18,.1);border-left:3px solid #00697C;border-radius:12px;background:#fbf8f2;min-width:220px}
.people strong{font-family:Fraunces,Georgia,serif;font-weight:500;font-size:19px}
.people span{font-size:14px;color:#6b6157}

/* FLO background: mist (own identity, distinct from shamkamboj.com paper) */
:root{--bg:#eef2f0;--bg2:#e3eae7;--bg3:#d8e0dd;--line:#d2dbd7;--faint:#b3c0bb;--muted:#5b6662}
.ph.has-img .trace{background:rgba(250,252,251,.96)}
.ph.has-img .trace li::before{background:#fafcfb}
.ph.has-img .trace .tm{color:#5b6662}
.people>div{background:#f8faf9}
.t-card .t-tabs{background:#e3eae7}

header{background:rgba(238,242,240,.9)}
/* header accent: hairline + teal fade */
body>header,header#top{border-bottom:1px solid #d2dbd7!important}
body>header::after,header#top::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,#00697c 0,#4fb6c6 22%,rgba(79,182,198,0) 60%);pointer-events:none}

/* belief collage: four businesses, 4:3 tiles */
.moments{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:56px}
.belief .moments .ph,.moments .ph{aspect-ratio:4/3;margin-top:0}
.moments .ph img{width:100%;height:100%;object-fit:cover}
.moments .trace{max-width:min(78%,300px);padding:10px 13px}
.moments .trace p{font-size:12.5px;line-height:1.45}
.moments .trace .tk,.moments .trace .tm{font-size:10.5px}
@media(max-width:720px){.moments{grid-template-columns:1fr;gap:28px}.moments .trace{max-width:none}}

/* reels: short founder notes (videos on cdn.shamkamboj.com) */
.reels-strip{padding:96px 0;background:var(--bg2,#e3eae7)}
.reels-lead{max-width:560px;color:var(--muted,#5b6662);margin-top:12px}
.reels{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.reel{margin:0}
.reel-play{position:relative;display:block;width:100%;aspect-ratio:9/16;border:0;padding:0;border-radius:14px;overflow:hidden;background:#1a1612;cursor:pointer}
.reel-play img,.reel-play video{width:100%;height:100%;object-fit:cover;display:block}
.reel-btn{position:absolute;left:50%;top:50%;width:58px;height:58px;margin:-29px 0 0 -29px;border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 6px 24px rgba(0,0,0,.25);transition:transform .2s}
.reel-btn::after{content:"";position:absolute;left:23px;top:18px;border-left:17px solid #00697c;border-top:11px solid transparent;border-bottom:11px solid transparent}
.reel-play:hover .reel-btn{transform:scale(1.08)}
.reel-dur{position:absolute;right:10px;bottom:10px;background:rgba(26,22,18,.72);color:#fff;font-size:12px;padding:3px 9px;border-radius:20px}
.reel figcaption{margin-top:12px;font-size:15px;line-height:1.4;color:#1a1612}
.reels-more{display:inline-block;margin-top:28px;color:#00697c;font-weight:600;text-decoration:none}
.reels-more:hover{text-decoration:underline}
.reel.playing .reel-btn,.reel.playing .reel-dur{display:none}
@media(max-width:760px){.reels-strip{padding:64px 0}.reels{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-right:-16px;padding-right:16px;-webkit-overflow-scrolling:touch}.reels .reel{flex:0 0 64%;scroll-snap-align:start}
.reels.reels-all{display:grid;grid-template-columns:1fr 1fr;overflow:visible;margin-right:0;padding-right:0}.reel figcaption{font-size:14px}}

/* reel aside: one or two short reels placed inside a section */
.reel-aside{display:flex;align-items:center;gap:28px;margin-top:48px;padding:20px;border:1px solid var(--line,#d2dbd7);border-radius:18px;background:rgba(255,255,255,.55);max-width:640px}
.reel-aside .reel{flex:0 0 150px}
.reel-aside .reel-btn{width:46px;height:46px;margin:-23px 0 0 -23px}
.reel-aside .reel-btn::after{left:18px;top:13px;border-left-width:14px;border-top-width:10px;border-bottom-width:10px}
.reel-aside .reel figcaption{font-size:13px;margin-top:8px}
.ra-k{display:block;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#00697c;font-weight:600}
.ra-t{font-family:Fraunces,serif;font-size:22px;line-height:1.25;margin:8px 0 6px;color:#1a1612}
.ra-l{color:var(--muted,#5b6662);font-size:15px;line-height:1.5;margin:0}
.reel-aside.ra-two{max-width:760px}
@media(max-width:600px){.reel-aside{gap:16px;padding:14px}.reel-aside .reel{flex-basis:118px}.ra-t{font-size:18px}.reel-aside.ra-two{flex-wrap:wrap}.reel-aside.ra-two .ra-text{flex-basis:100%}}
/* reel aside on dark sections */
.symptoms .reel-aside{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.14)}
.symptoms .ra-k{color:#4fb6c6}.symptoms .ra-t{color:#fff}.symptoms .ra-l,.symptoms .reel-aside figcaption{color:rgba(255,255,255,.72)}
/* reel aside v2: full-width inset band */
.reel-aside{max-width:none;width:100%;box-sizing:border-box;margin-top:36px;padding:16px 32px 16px 16px;gap:32px;border:0;border-radius:16px;background:#e3eae7;box-shadow:inset 0 0 0 1px rgba(0,105,124,.10),inset 0 2px 12px rgba(26,22,18,.05);position:relative}
.reel-aside::before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:0 3px 3px 0;background:linear-gradient(#00697c,#4fb6c6)}
.reel-aside .reel{flex:0 0 112px}
.reel-aside .reel-play{border-radius:10px;box-shadow:0 8px 20px -10px rgba(26,22,18,.45)}
.reel-aside .reel-dur{right:6px;bottom:6px;font-size:11px;padding:2px 7px}
.reel-aside .reel-btn{width:40px;height:40px;margin:-20px 0 0 -20px}
.reel-aside .reel-btn::after{left:16px;top:11px;border-left-width:12px;border-top-width:9px;border-bottom-width:9px}
.reel-aside .ra-text{flex:1;max-width:620px}
.reel-aside .ra-t{font-size:26px;margin:6px 0 8px}
.reel-aside.ra-two{max-width:none}
.reel-aside.ra-two .reel{flex-basis:112px}
.reel-aside.ra-two .reel figcaption{font-size:12.5px;line-height:1.35}
.symptoms .reel-aside{background:rgba(255,255,255,.04);box-shadow:inset 0 0 0 1px rgba(255,255,255,.10),inset 0 2px 14px rgba(0,0,0,.35)}
@media(max-width:600px){.reel-aside{padding:12px 16px 12px 12px;gap:16px;margin-top:28px}.reel-aside .reel,.reel-aside.ra-two .reel{flex-basis:92px}.reel-aside .ra-t{font-size:18px}.reel-aside .ra-l{font-size:14px}}

.reel-aside.ra-two{align-items:center}.reel-aside.ra-two .reel{flex-basis:124px;align-self:flex-start}.reel-aside.ra-two .reel figcaption{min-height:2.7em}

/* inside FLO: product illustrations (sample data) */
.uiv{padding:104px 0}
.uiv-lead{max-width:620px;color:var(--muted,#5b6662);margin-top:12px}
.uiv-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:32px 0 22px}
.uiv-tabs button{border:1px solid #d2dbd7;background:#fff;color:#1a1612;border-radius:999px;padding:8px 16px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:background .2s,color .2s}
.uiv-tabs button:hover{border-color:#00697c}
.uiv-tabs button[aria-selected=true]{background:#00697c;border-color:#00697c;color:#fff}
.uiv-panel{display:none}.uiv-panel.on{display:block;animation:uivIn .35s ease}
@keyframes uivIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ui-fig{margin:0}
.ui-scroll{border-radius:16px;box-shadow:0 28px 60px -34px rgba(0,60,70,.4)}
.ui-svg{width:100%;height:auto;display:block}
.ui-fig figcaption{margin-top:16px;color:var(--muted,#5b6662);font-size:15px;line-height:1.55;max-width:700px}
.ui-fig figcaption strong{color:#1a1612}
.ui-row{display:grid;gap:32px;margin-top:56px}
.ui-row.ui-n2{grid-template-columns:1fr 1fr}
@media(max-width:900px){.ui-row.ui-n2{grid-template-columns:1fr}}
@media(max-width:700px){.ui-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.ui-svg{min-width:660px}
.uiv{padding:72px 0}.uiv-tabs{flex-wrap:nowrap;overflow-x:auto;margin-right:-16px;padding-right:16px}.uiv-tabs button{flex:0 0 auto}}

.uiv-tabs button.on{background:#00697c;border-color:#00697c;color:#fff}
.ui-row.ui-n2{grid-template-columns:1fr;max-width:980px}
.uiv .ui-fig{max-width:1000px}

/* free assessment */
.fa-wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.fa-meta{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.fa-meta li{background:#fff;border:1px solid #d2dbd7;border-radius:999px;padding:6px 14px;font-size:14px;color:#1a1612}
.fa-card{background:#fff;border:1px solid #d2dbd7;border-radius:20px;padding:32px;box-shadow:0 30px 70px -40px rgba(0,60,70,.35);scroll-margin-top:96px}
.fa-progress{display:flex;align-items:center;gap:16px;margin-bottom:24px}
.fa-step-label{font-size:13px;color:#5b6662;white-space:nowrap}
.fa-bar{flex:1;height:6px;background:#e3eae7;border-radius:6px;overflow:hidden}.fa-bar i{display:block;height:100%;background:linear-gradient(90deg,#00697c,#4fb6c6);transition:width .3s}
.fa-q{display:none}.fa-q.on{display:block;animation:uivIn .3s ease}
.fa-q h2,.fa-result h2{font-family:Fraunces,serif;font-size:28px;line-height:1.2;margin:0 0 8px}
.fa-hint{color:#5b6662;font-size:14px;margin:0 0 12px}
.fa-opts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.fa-opts button{text-align:left;border:1px solid #d2dbd7;background:#f6f8f7;border-radius:12px;padding:14px 16px;font:inherit;font-size:15px;color:#1a1612;cursor:pointer;transition:border-color .15s,background .15s}
.fa-opts button:hover{border-color:#00697c}
.fa-opts button.sel{border-color:#00697c;background:#d7e8ea;color:#004e5c;font-weight:600}
.fa-q textarea,.fa-contact input:not([type=radio]):not([type=checkbox]){width:100%;box-sizing:border-box;border:1px solid #d2dbd7;border-radius:10px;padding:12px 14px;font:inherit;font-size:15px;background:#f6f8f7;margin-top:6px}
.fa-nav{display:flex;justify-content:space-between;align-items:center;margin-top:28px}
.fa-back{background:none;border:0;font:inherit;color:#5b6662;cursor:pointer;padding:8px 0}.fa-back:disabled{opacity:.35;cursor:default}
.fa-nav .btn[disabled]{opacity:.45;pointer-events:none}
.fa-first{background:#d7e8ea;border-radius:14px;padding:16px 18px;margin:18px 0}.fa-first b{color:#004e5c;font-size:13px;text-transform:uppercase;letter-spacing:.06em}.fa-first p{margin:6px 0 0;font-size:16px;line-height:1.5}
.fa-working{color:#1a1612}.fa-note{font-size:13px;color:#5b6662;border-top:1px solid #e3eae7;padding-top:14px;margin-top:14px}
.fa-contact{margin-top:28px;padding-top:24px;border-top:1px solid #e3eae7;display:grid;gap:14px}
.fa-contact h3,.fa-done h3{font-family:Fraunces,serif;font-size:22px;margin:0}
.fa-contact label{display:block;font-size:14px;font-weight:600;color:#1a1612}
.fa-pref{display:flex;flex-wrap:wrap;gap:16px;align-items:center;font-size:14px}.fa-pref>span{font-weight:600;width:100%}
.fa-pref label,.fa-check{font-weight:400!important;display:flex!important;gap:8px;align-items:center}
.fa-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.fa-err{color:#b4472a;font-size:14px;margin:0}
.fa-done{margin-top:24px;padding-top:20px;border-top:1px solid #e3eae7}
@media(max-width:900px){.fa-wrap{grid-template-columns:1fr;gap:28px}}
@media(max-width:560px){.fa-card{padding:20px}.fa-opts{grid-template-columns:1fr}.fa-q h2,.fa-result h2{font-size:23px}}

.fa-card [hidden]{display:none!important}

/* google reviews */
.grv{padding:96px 0}
.grv-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.grv-score{display:flex;align-items:center;gap:10px;text-decoration:none;color:#1a1612;background:#fff;border:1px solid #d2dbd7;border-radius:999px;padding:10px 18px}
.grv-score b{font-family:Fraunces,serif;font-size:24px}.grv-stars,.grv-st{color:#e8a33b;letter-spacing:2px}
.grv-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:40px}
.grv-card{margin:0;background:#fff;border:1px solid #d2dbd7;border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:14px}
.grv-card blockquote{margin:0;font-size:16px;line-height:1.6;color:#1a1612}
.grv-card figcaption{font-size:14px;color:#5b6662;margin-top:auto}.grv-card figcaption a{color:#00697c;font-weight:600;text-decoration:none}
.grv-attr{margin-top:20px;font-size:13px;color:#5b6662}.grv-attr a{color:#00697c}
@media(max-width:600px){.grv{padding:64px 0}}

/* ad-matched hero: landscape photos cropped into the portrait frame */
.hero .ph img.ph-land{object-fit:cover;object-position:50% 40%}

/* quiet hours pages */
.qh-hero .lead{max-width:560px}
.qh-week{background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px 22px 16px;box-shadow:0 30px 70px -44px rgba(0,60,70,.45)}
.qh-week figcaption{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.qh-week figcaption b{font-family:var(--serif);font-weight:500;font-size:20px}
.qh-week figcaption span{font-size:13px;font-weight:700;color:var(--flo-d);background:var(--flo-wash);border-radius:999px;padding:4px 12px}
.qh-grid{display:grid;grid-template-columns:34px repeat(6,1fr);gap:5px;align-items:center}
.qh-grid i,.qh-legend i{display:block;height:30px;border-radius:6px}
.qh-legend i{width:14px;height:14px;border-radius:4px}
.qh-h{font-size:11px;color:var(--muted);text-align:center}
.qh-d{font-size:12px;font-weight:700;color:var(--muted)}
.l3{background:var(--flo-d)}.l2{background:var(--flo)}.l1{background:var(--flo-l);opacity:.45}
.l0{background:repeating-linear-gradient(45deg,#fff,#fff 4px,#f3e3d0 4px,#f3e3d0 8px);border:1.5px solid var(--amber)}
.qh-season{display:grid;grid-template-columns:repeat(12,1fr);gap:6px;height:180px;align-items:end}
.qh-m{display:flex;flex-direction:column;justify-content:flex-end;align-items:stretch;height:100%;gap:6px}
.qh-m i{display:block;border-radius:6px 6px 3px 3px}
.qh-m span{font-size:11px;color:var(--muted);text-align:center}
.qh-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:14px;font-size:13px;color:var(--muted)}
.qh-legend span{display:inline-flex;align-items:center;gap:6px}
.qh-note{font-size:13px;color:var(--muted);margin-top:8px}
.qh-cinema{background:var(--flo-wash);padding:80px 0}
.qh-cinema h2{margin:18px 0 18px;max-width:820px}
.qh-cinema p{max-width:700px;color:var(--ink2)}
.qh-big{font-family:var(--serif);font-size:clamp(22px,2.4vw,30px);line-height:1.3;color:var(--flo-d)!important;margin-top:22px!important;font-style:italic;font-weight:400}
.qh-due h2{margin:18px 0 40px}
.qh-due-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.qh-line{list-style:none;position:relative;padding-left:34px}
.qh-line::before{content:"";position:absolute;left:9px;top:10px;bottom:10px;width:2px;background:var(--line)}
.qh-line li{position:relative;padding:12px 0 22px}
.qh-line li::before{content:"";position:absolute;left:-31px;top:17px;width:14px;height:14px;border-radius:50%;background:var(--bg);border:2px solid var(--faint)}
.qh-line li.now::before{background:var(--flo);border-color:var(--flo);box-shadow:0 0 0 6px var(--flo-wash)}
.qh-line b{display:block;font-family:var(--serif);font-weight:500;font-size:22px}
.qh-line span{color:var(--muted)}
.qh-phone{background:#ece5dd;border-radius:22px;padding:0 0 18px;max-width:380px;justify-self:center;width:100%;overflow:hidden;box-shadow:0 30px 70px -40px rgba(0,0,0,.4)}
.qh-chat-top{background:#075e54;color:#fff;font-size:14px;font-weight:700;padding:14px 18px;display:flex;align-items:center;gap:10px}
.qh-chat-top i{width:28px;height:28px;border-radius:50%;background:rgba(255,255,255,.3)}
.qh-bubble,.qh-reply{margin:16px 16px 0;padding:10px 12px 18px;border-radius:10px;font-size:15px;line-height:1.45;position:relative;max-width:88%}
.qh-bubble{background:#fff;border-top-left-radius:2px}
.qh-reply{background:#dcf8c6;margin-left:auto;border-top-right-radius:2px;width:max-content}
.qh-bubble small,.qh-reply small{position:absolute;right:10px;bottom:3px;font-size:11px;color:#7a8a80}
.qh-cycles{margin-top:56px;border-top:1.5px solid var(--ink)}
.qh-cy-head,.qh-cy-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:24px;padding:16px 0;border-bottom:1px solid var(--line)}
.qh-cy-head{font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--muted);padding:12px 0}
.qh-cy-row b{font-family:var(--serif);font-weight:500;font-size:19px}
.qh-cy-row span{color:var(--muted)}
.qh-ways{background:var(--bg2)}
.qh-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.qh-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px}
.qh-card b{display:block;font-family:var(--serif);font-weight:500;font-size:24px;margin-bottom:10px;color:var(--flo-d)}
.qh-card p{color:var(--muted);font-size:17px}
.qh-calc{display:grid;grid-template-columns:1fr 1fr;gap:40px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:40px;box-shadow:0 30px 70px -44px rgba(0,60,70,.4);scroll-margin-top:96px}
.qh-calc h2{margin:16px 0 22px;font-size:clamp(28px,3.4vw,42px)}
.qh-calc label{display:block;font-size:15px;font-weight:700;margin-top:16px}
.qh-calc input{display:block;width:100%;margin-top:6px;border:1px solid var(--line);border-radius:10px;padding:12px 14px;font:inherit;font-size:18px;background:var(--bg)}
.qh-calc input:focus{outline:2px solid var(--flo);border-color:var(--flo)}
.qh-out{background:var(--flo-wash);border-radius:16px;padding:30px;display:flex;flex-direction:column;justify-content:center}
.qh-out p{color:var(--flo-d)}
.qh-out p+p{margin-top:4px}
.qh-num{font-family:var(--serif);font-size:clamp(40px,5vw,60px);line-height:1.05;color:var(--ink)!important;font-weight:500}
.qh-quarter{margin-top:16px!important;font-size:17px}
.qh-quarter b{color:var(--ink)}
.qh-out .ctas{display:flex;gap:10px;flex-wrap:wrap;margin-top:22px}
.qh-more{padding:80px 0}
.qh-rel{grid-template-columns:repeat(3,1fr);margin:22px 0 18px}
.qh-rel span{display:block;color:var(--muted);font-size:15px;margin-top:4px}
.qh-hub-hero .ctas{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.qh-type-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
.qh-type-grid a{display:block;height:100%;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px;transition:border-color .2s,transform .2s var(--ease)}
.qh-type-grid a:hover{border-color:var(--flo);transform:translateY(-3px)}
.qh-type-grid b{display:block;font-family:var(--serif);font-weight:500;font-size:21px}
.qh-type-grid span{display:block;color:var(--muted);font-size:15px;margin:6px 0 10px}
.qh-type-grid i{font-style:normal;font-size:13px;font-weight:700;color:var(--flo-d)}
.qh-types h2{margin-top:18px}
@media(max-width:900px){.qh-due-grid,.qh-calc{grid-template-columns:1fr}.qh-cards,.qh-rel,.qh-type-grid{grid-template-columns:1fr}.qh-calc{padding:24px}}
@media(max-width:600px){.qh-cy-head{display:none}.qh-cy-row{grid-template-columns:1fr;gap:2px}.qh-grid{grid-template-columns:30px repeat(6,1fr);gap:4px}.qh-grid i{height:24px}.qh-week{padding:16px}.qh-season{height:140px;gap:4px}.qh-cinema{padding:60px 0}.qh-out{padding:22px}}

.qh-home{margin-top:28px;font-size:17px}

/* institutes page */
.in-journey .qh-line li{padding:8px 0 14px}
.in-journey .qh-line b{font-size:19px}
.in-stages{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin-top:26px;border-radius:14px;overflow:hidden;counter-reset:s}
.in-stages li{background:#231e19;padding:22px 24px;counter-increment:s}
.in-stages b{display:block;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--flo-l);margin-bottom:8px}
.in-stages b::before{content:counter(s) ". "}
.in-stages span{font-family:var(--serif);font-style:italic;font-weight:300;font-size:20px;line-height:1.35}
.in-stories h2{margin:18px 0 26px}
.in-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:34px}
.in-tabs button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 16px;font:inherit;font-size:15px;cursor:pointer;color:var(--ink)}
.in-tabs button.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.in-story{display:none}.in-story.on{display:grid}
.in-team b{color:var(--flo-d)}
.in-portal{background:var(--bg2)}
.in-portal h2{margin:18px 0 14px}
.in-phones{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:34px}
.in-ph{text-align:center}
.in-ph>p{margin-top:12px;font-weight:700;font-size:15px}
.in-sc{background:#fff;border:8px solid #1a1612;border-radius:28px;min-height:360px;padding:22px 16px;text-align:left;display:flex;flex-direction:column;gap:8px;box-shadow:0 26px 60px -40px rgba(0,0,0,.5)}
.in-sc b{font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.25}
.in-sc small{color:var(--muted);font-size:13px}
.in-k{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--flo)}
.in-bar{height:8px;border-radius:8px;background:var(--flo-wash);overflow:hidden}.in-bar i{display:block;height:100%;background:var(--flo)}
.in-sc ul{list-style:none;display:grid;gap:6px;margin-top:6px;font-size:14px}
.in-sc ul li{border:1px solid var(--line);border-radius:10px;padding:8px 10px}
.in-sc li.ok{color:var(--flo-d)}.in-sc li.ok::before{content:"\2713  "}
.in-sc li.cur{border-color:var(--flo);background:var(--flo-wash)}
.in-sc li.lk{color:var(--faint)}.in-sc li.lk::before{content:"\1F512  "}
.in-q li.sel{border-color:var(--flo);background:var(--flo-wash);font-weight:700}
.in-join{display:block;text-align:center;background:var(--flo);color:#fff;border-radius:999px;padding:11px;font-weight:700;margin:10px 0}
.in-cert{align-items:center;justify-content:center;text-align:center;background:linear-gradient(#fff,#f7f1e6)}
.in-cert b{font-size:24px}
.in-seal{width:54px;height:54px;border-radius:50%;background:radial-gradient(circle,#e1b04a 40%,#c08a20 41%);margin-top:12px}
.in-weeks{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}
.in-weeks li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px}
.in-weeks b{display:block;color:var(--flo-d);font-size:13px;letter-spacing:.12em;text-transform:uppercase}
.in-qa{display:grid;gap:10px;margin-top:22px;max-width:820px}
.in-qa details{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px}
.in-qa summary{cursor:pointer;font-family:var(--serif);font-size:20px}
.in-qa p{margin-top:10px;color:var(--muted)}
.in-price{padding:20px 0 60px}
.in-pbox{max-width:820px}.in-pbox b{display:block;font-family:var(--serif);font-weight:500;font-size:22px;margin-bottom:6px}
.in-pbox .more{display:inline-block;margin-top:10px}
@media(max-width:900px){.in-stages,.in-phones,.in-weeks{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.in-stages,.in-weeks{grid-template-columns:1fr}.in-phones{grid-template-columns:1fr 1fr;gap:12px}.in-sc{min-height:300px;border-width:6px;padding:16px 12px}.in-sc b{font-size:16px}.in-tabs{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px}.in-tabs button{flex:0 0 auto}}
.in-hero-ph{position:relative;max-width:300px;justify-self:center;width:100%;padding:20px 0}
.in-hero-ph .in-sc{min-height:430px}
.in-hero-ph .in-sc li small{display:block;color:var(--muted);font-size:12px;margin-top:2px}
.in-chip{position:absolute;background:#fff;border:1px solid var(--line);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:700;color:var(--flo-d);box-shadow:0 14px 30px -18px rgba(0,60,70,.45);white-space:nowrap}
.in-chip.c1{top:70px;right:calc(100% - 28px)}.in-chip.c2{top:190px;left:calc(100% - 28px)}.in-chip.c3{top:330px;right:calc(100% - 28px)}.in-chip.c4{top:420px;left:calc(100% - 28px)}
.in-fgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.in-feat h2{margin:18px 0 6px}
.in-feat .setup-extra{margin-top:26px}
@media(max-width:900px){.in-fgrid{grid-template-columns:1fr 1fr}.in-chip{position:static;display:inline-block;margin:6px 6px 0 0;white-space:normal}.in-hero-ph{padding:0}}
@media(max-width:560px){.in-fgrid{grid-template-columns:1fr}.in-hero-ph .in-sc{min-height:0}}

/* realestate page */
.re-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px}
.re-tags i{font-style:normal;font-size:12px;font-weight:700;color:var(--flo-d);background:var(--flo-wash);border-radius:999px;padding:4px 9px}
.in-sc ul.re-pipe li{display:flex;justify-content:space-between;align-items:center;padding:6px 10px}
.re-pipe li b{font-family:inherit;font-size:15px}
.re-pipe li.ok::before{content:none}
.re-pipe li.ok{color:var(--flo-d);font-weight:700}
@media(min-width:901px){.re-hero .in-chip.c1{top:-6px;right:auto;left:-40px}.re-hero .in-chip.c3{top:auto;bottom:-6px;right:auto;left:-40px}}
.re-btns{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}
.re-btns i{font-style:normal;font-size:12px;font-weight:700;color:#0a7d6e;border:1px solid #bfe3dc;background:#fff;border-radius:8px;padding:5px 8px}
.re-flow{grid-template-columns:repeat(6,1fr);margin:24px 0 8px}
.re-flow li span{font-size:14px;color:var(--muted)}
.re-proof{padding:56px 0;background:var(--flo-wash);color:var(--ink)}
.re-proof-list{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:18px 0 14px}
.re-proof-list b{display:block;font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.1;margin-bottom:6px}
.re-proof-list span{opacity:.8}
.re-proof-list b{color:var(--flo-d)}
@media(max-width:900px){.re-flow{grid-template-columns:1fr 1fr}.re-proof-list{grid-template-columns:1fr}}
.re-teaser-s{padding:0 0 8px;margin-top:-24px}
.re-teaser{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:8px 24px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--flo);border-radius:14px;padding:18px 24px;color:var(--ink);text-decoration:none;box-shadow:0 18px 40px -32px rgba(0,60,70,.5)}
.re-teaser .eyebrow{margin:0}
.re-teaser b{font-family:var(--serif);font-weight:500;font-size:20px;line-height:1.3}
.re-teaser:hover{border-color:var(--flo)}
.re-opts{list-style:none;display:grid;gap:7px;margin-top:10px;color:var(--muted);font-size:15px}
.re-opts li{padding-left:16px;position:relative}
.re-opts li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--flo-l)}
.re-play .lead{max-width:760px;margin-bottom:6px}
.re-case .ask-set{margin:26px 0 8px}
.re-case .ask{font-style:italic}
@media(max-width:900px){.re-teaser{grid-template-columns:1fr}}

/* fitness page */
.fit-prog .in-phones{margin-bottom:10px}
.fit-ladder-wrap{margin:40px 0 28px}
.fit-ladder{list-style:none;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:14px;counter-reset:r}
.fit-ladder li{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;position:relative;display:flex;flex-direction:column;gap:6px}
.fit-ladder li:nth-child(2){margin-top:12px}.fit-ladder li:nth-child(3){margin-top:24px}.fit-ladder li:nth-child(4){margin-top:36px}.fit-ladder li:nth-child(5){margin-top:48px;border-color:var(--flo)}
.fit-rung{font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:var(--flo)}
.fit-ladder b{font-family:var(--serif);font-weight:500;font-size:19px;line-height:1.25}
.fit-ladder li>span:last-child{color:var(--muted);font-size:14px}
@media(max-width:900px){.fit-ladder{grid-template-columns:1fr}.fit-ladder li{margin-top:0!important}}
