/* Biz Ops Concierge — small, dependency-free component system. */
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/cormorant-garamond-500.ttf') format('truetype')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/editorial-serif.ttf') format('truetype')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/outfit-400.ttf') format('truetype')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/outfit-500.ttf') format('truetype')}
@font-face{font-family:'Outfit';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/outfit-600.ttf') format('truetype')}
:root{
  --navy:#0C4765;--blue:#577C8D;--blue-light:#658A9A;--slate:#486A7A;--teal:#2E596E;--ice:#EBF4F9;--white:#fff;
  --ink:var(--navy);--muted:var(--slate);--line:rgba(12,71,101,.18);
  --font-display:'Cormorant Garamond',Georgia,'Times New Roman',serif;--font-body:'Outfit',Arial,Helvetica,sans-serif;
  --space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4rem;--space-7:6rem;--space-8:7.5rem;
  --page-width:1240px;--gutter:clamp(1.5rem,5vw,5rem);--section-space:clamp(4.5rem,8vw,7.5rem)
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:1.5rem}body{margin:0;background:var(--white);color:var(--ink);font:400 1rem/1.7 var(--font-body);-webkit-font-smoothing:antialiased}
h1,h2,h3,p,ul,figure,blockquote{margin:0}a{color:inherit}img{display:block;max-width:100%}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid var(--blue-light);outline-offset:6px}::selection{background:var(--ice);color:var(--navy)}[hidden]{display:none!important}
h1,h2,h3{font-family:var(--font-display);font-weight:500;letter-spacing:-.035em;line-height:1.08;text-wrap:pretty}h2{font-size:clamp(2.4rem,3.65vw,3.6rem)}p{color:var(--muted)}
.wrap{width:min(var(--page-width),calc(100% - var(--gutter)*2));margin-inline:auto}.section{padding-block:var(--section-space)}.eyebrow{font:600 .8125rem/1.5 var(--font-body);letter-spacing:.17em;color:var(--slate);margin-bottom:1.4rem;text-transform:uppercase}
.skip{position:absolute;top:-10rem;left:1rem;padding:1rem;z-index:200;background:white}.skip:focus{top:1rem}
/* Header / brand */
header{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.55rem}header:not(.wrap){width:min(var(--page-width),calc(100% - var(--gutter)*2));margin-inline:auto}.brand{display:inline-flex;align-items:center;gap:.8rem;text-decoration:none;flex-shrink:0}.brand-mark{font:600 1.05rem/1 var(--font-display);letter-spacing:-.12em;padding-right:.12em;border:1px solid var(--navy);width:2.8rem;height:2.8rem;display:grid;place-items:center}.brand-name{font:600 1.65rem/1.1 var(--font-display);letter-spacing:-.025em}nav{display:flex;align-items:center;gap:2.1rem;font-size:.875rem}nav a{text-decoration:none;padding:.6rem 0;border-bottom:1px solid transparent}nav a:hover{border-color:var(--blue-light)}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.5rem;padding:1rem 1.8rem;background:var(--slate);border:1px solid var(--blue-light);border-radius:4px;color:white;text-decoration:none;font-size:.9375rem;line-height:1.3;font-weight:600;transition:background .18s,transform .18s}.button:hover{background:var(--teal);transform:translateY(-2px)}
/* Hero: image and text remain independent for predictable mobile reading. */
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--navy);color:white}.hero-inner{position:relative;padding-block:clamp(4rem,6.5vw,6rem)}.hero-copy{width:58%;max-width:700px}.hero h1{font-size:clamp(2.8rem,4.6vw,4.75rem);line-height:1.04;letter-spacing:-.03em;color:white}.hero h1 span{color:var(--ice)}.hero-subhead{font-size:clamp(1.2rem,1.8vw,1.5rem);line-height:1.45;color:var(--ice);max-width:540px;margin-top:1.7rem}.hero-body{font-size:1rem;line-height:1.8;color:var(--ice);max-width:530px;margin-top:1.3rem}.hero .button{margin-top:2rem}.hero-photo{position:absolute;z-index:-1;inset:0 0 0 49%}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:51% 35%}.hero-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 0%,rgba(12,71,101,.88) 6%,rgba(12,71,101,.2) 30%,transparent 48%),linear-gradient(270deg,rgba(12,71,101,.86) 0%,transparent 20%),linear-gradient(0deg,rgba(12,71,101,.7),transparent 45%)}.scroll-cue{display:block;width:2.5rem;text-decoration:none;font-size:1.75rem;line-height:1;margin-top:2.5rem;color:var(--ice)}
/* Outcome strip */
.trust-strip{background:var(--ice)}.trust-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:1.6rem 0;gap:1.5rem}.trust-list li{display:flex;align-items:center;gap:.7rem;font-size:.8125rem;line-height:1.5;font-weight:600}.trust-list li:before{content:"✓";font-weight:400;font-size:1rem;color:var(--slate)}
/* Services / three stages */
.section-intro{display:grid;grid-template-columns:1.3fr .7fr;align-items:end;gap:7%;margin-bottom:3.5rem}.section-intro h2{max-width:770px}.section-description{max-width:380px;font-size:1rem;padding-bottom:.2rem}.stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem}.stage{padding:2rem 1.9rem 2.1rem;border:1px solid var(--line);border-top:3px solid var(--blue-light);display:flex;flex-direction:column;min-width:0}.stage h3{font-size:2.35rem;letter-spacing:-.03em}.stage-number{display:block;font:500 .8125rem/1.3 var(--font-body);letter-spacing:.12em;margin-bottom:1.75rem;color:var(--slate)}.stage-promise{margin:1rem 0 1.75rem;min-height:5.1em;color:var(--ink);line-height:1.7;font-size:1rem}.stage ul{list-style:none;padding:0;margin-top:auto;border-top:1px solid var(--line);padding-top:1rem}.stage li{font-size:1rem;line-height:1.6;position:relative;padding:.6rem 0 .6rem 1rem;color:var(--muted)}.stage li:before{content:"";position:absolute;left:0;top:1.3rem;width:4px;height:4px;background:currentColor;border-radius:50%}.stage-clean{background:var(--ice)}.stage-clarity{background:var(--white);border-top-color:var(--slate)}.stage-control{background:var(--navy);border-color:var(--navy);border-top-color:var(--blue-light);color:white}.stage-control .stage-number,.stage-control .stage-promise,.stage-control li{color:var(--ice)}.stage-control ul{border-color:var(--blue-light)}
/* Founder portrait + bio */
.founder{background:var(--ice)}.founder-grid{display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:9%}.founder-photo{position:relative;max-width:450px;aspect-ratio:4/5;background:var(--blue-light);box-shadow:1rem 1rem 0 rgba(101,138,154,.16)}.founder-photo img{width:100%;height:100%;object-fit:cover;object-position:center 26%}.founder-copy{font-family:var(--font-body)}.founder-copy .eyebrow{margin-bottom:1rem}.founder-copy>p{font-size:1.0625rem;line-height:1.7}.founder-role{font-family:inherit;font-size:clamp(1.75rem,2.5vw,2.15rem);font-weight:600;line-height:1.25;letter-spacing:-.02em;color:var(--navy);margin-bottom:1.4rem}.founder-lead{color:var(--navy);margin-bottom:1rem}.founder-copy .founder-pullquote{border-top:1px solid var(--line);padding-top:1.5rem;margin-top:1.5rem;color:var(--navy);font-family:var(--font-display);font-size:clamp(1.8rem,2.2vw,2rem);font-weight:500;line-height:1.22;letter-spacing:-.02em}
/* Testimonial */
.testimonial{background:white;text-align:center}.testimonial-inner{max-width:940px}.testimonial .eyebrow{margin-bottom:2rem}.testimonial blockquote{font-family:var(--font-display);font-size:clamp(2rem,3.2vw,3.15rem);line-height:1.23;letter-spacing:-.025em}.testimonial blockquote p{color:var(--navy)}.testimonial figcaption{margin-top:2.2rem}.testimonial figcaption strong{display:block;font-size:.95rem;font-weight:600}.testimonial figcaption span{display:block;font-size:.875rem;color:var(--slate);margin-top:.25rem}
/* Client fit */
.fit{background:var(--ice)}.fit-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:9%;align-items:center}.fit-description{margin-top:1.6rem}.fit-list{list-style:none;padding:0}.fit-list li{position:relative;padding:1.55rem 0 1.55rem 2.2rem;border-bottom:1px solid var(--line);font-size:1.125rem;line-height:1.55}.fit-list li:first-child{border-top:1px solid var(--line)}.fit-list li:before{content:"✓";position:absolute;left:0;color:var(--slate)}
/* Final action */
.contact{background:var(--navy);color:white;text-align:center}.contact-inner{max-width:790px}.contact h2{font-size:clamp(3rem,5.5vw,5rem)}.contact p{color:var(--ice);max-width:640px;margin:1.65rem auto 2rem;font-size:1.0625rem;line-height:1.8}.contact .button{min-width:200px}
/* One cohesive footer: identity and credentials, then a quiet legal row. */
.site-footer{display:block;background:var(--ice);padding:0}
.footer-main{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2.5rem;padding-block:2.5rem}
.footer-brand-group{display:flex;flex-direction:column;align-items:flex-start;gap:.85rem}
.footer-email{font-size:.875rem;color:var(--slate);text-decoration:none;overflow-wrap:anywhere}
.footer-email:hover{text-decoration:underline;text-underline-offset:4px}
.footer-proof{display:flex;align-items:center;gap:1.5rem}
.footer-proof p{max-width:none;font-size:.875rem;line-height:1.55}
.footer-proof strong{display:block;color:var(--navy);font-weight:600;margin-bottom:.25rem}
.footer-proof p span{display:block;white-space:nowrap}
.credential-badges{display:flex;align-items:center;gap:.5rem;flex-shrink:0}
.credential-badges img{width:64px;height:auto}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:1.25rem;border-top:1px solid var(--line);padding-block:1.1rem}
.footer-bottom p{font-size:.8125rem;color:var(--slate)}
.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:1.5rem;font-size:.8125rem;color:var(--slate)}
.footer-links a{text-decoration:none;padding-block:.5rem}
.footer-links a:hover{text-decoration:underline;text-underline-offset:4px}
.cookie-settings{font:inherit;color:inherit;background:none;border:0;padding:.5rem 0;text-decoration:underline;cursor:pointer}
@media(max-width:900px){.footer-main{grid-template-columns:1fr;gap:1.8rem}.footer-proof{justify-content:space-between;max-width:520px}.footer-bottom{align-items:flex-start;flex-wrap:wrap;gap:.5rem 1.5rem}}
@media(max-width:600px){.footer-main{padding-block:2rem;gap:1.5rem}.footer-proof{align-items:center;gap:1rem}.footer-proof p{font-size:.8125rem;max-width:none;width:100%}.footer-proof{flex-wrap:wrap}.credential-badges img{width:54px}.credential-badges{gap:.3rem}.footer-bottom{display:block;padding-block:1rem}.footer-links{margin-top:.5rem;gap:1rem}.footer-brand-group .brand-name{font-size:1.65rem}}
@media(max-width:360px){.footer-proof p span{white-space:normal}}
/* Policy / 404 pages */
.legal-page{max-width:850px;padding-block:4rem 6rem}.legal-page h1{font-size:clamp(2.8rem,5vw,4.5rem);margin-bottom:1.5rem}.legal-page h2{font-size:2rem;letter-spacing:-.025em;margin:2.5rem 0 1rem}.legal-page p{margin:1rem 0}.legal-page a{overflow-wrap:anywhere;text-underline-offset:4px}.header-cta{font-size:.875rem}
/* Consent controls */
.cookie-banner{position:fixed;bottom:1.25rem;left:50%;transform:translateX(-50%);z-index:100;width:min(1000px,calc(100% - 2rem));max-height:70vh;overflow:auto;background:white;color:var(--navy);border:1px solid var(--blue-light);box-shadow:0 .5rem 2rem rgba(12,71,101,.16);padding:1.5rem;border-radius:6px;display:flex;align-items:center;gap:1.5rem}.cookie-banner strong{font-size:1rem}.cookie-banner p{font-size:.875rem;margin:.5rem 0 0;line-height:1.5}.cookie-actions{display:flex;gap:.625rem;flex-shrink:0}.cookie-actions button{padding:.75rem 1rem;min-height:44px;border:1px solid var(--slate);background:var(--ice);color:var(--navy);border-radius:4px;cursor:pointer;font-size:.875rem}.cookie-actions button:disabled{opacity:.65;cursor:default}
/* Responsive components */
@media(min-width:1700px){.hero-copy{width:55%}.hero-photo{left:47%}}
@media(max-width:1050px){nav{gap:1.5rem}.hero h1{font-size:3.4rem}.hero-copy{width:61%}.hero-photo{left:48%}.hero-body{max-width:460px}.section-intro{gap:5%;grid-template-columns:1.2fr .8fr}.stage{padding:1.6rem 1.3rem}.stage h3{font-size:2.1rem}.founder-grid{gap:6%}.fit-grid{gap:6%}}
@media(max-width:800px){header{gap:1rem;flex-wrap:wrap}.site-header nav{gap:1.7rem;margin-left:auto}.brand-name{font-size:1.5rem}.hero-photo{display:none}.hero-copy{width:100%;max-width:620px}.hero-inner{padding-block:3.5rem}.hero h1{font-size:clamp(2.85rem,7vw,4rem)}.hero-body{max-width:580px}.hero-subhead{max-width:580px}.hero .scroll-cue{margin-top:1.75rem}.trust-list{grid-template-columns:1fr 1fr;gap:1.1rem 1.5rem}.section-intro{grid-template-columns:1fr;gap:1.4rem;margin-bottom:2.5rem}.section-description{max-width:580px}.stages{grid-template-columns:1fr;gap:1rem}.stage{display:grid;grid-template-columns:.85fr 1.15fr;gap:0 2rem;padding:2rem}.stage h3{font-size:2.5rem}.stage-number{margin-bottom:1rem}.stage-promise{min-height:0;margin-bottom:0;grid-column:1}.stage ul{grid-column:2;grid-row:1/3;border-top:0;padding-top:0;margin:0;border-left:1px solid var(--line);padding-left:1.5rem}.stage-control ul{border-color:var(--blue-light)}.founder-grid{grid-template-columns:.85fr 1.15fr;gap:6%;align-items:start}.fit-grid{grid-template-columns:1fr;gap:2rem}.fit h2{max-width:600px}.fit-description{max-width:640px}.fit-list{max-width:660px}.cookie-banner{flex-direction:column;align-items:stretch;gap:1rem}.cookie-actions{flex-wrap:wrap}.cookie-actions button{flex:1}}
@media(max-width:600px){:root{--gutter:1.5rem;--section-space:4.5rem}header{padding-block:1.2rem;gap:1rem}.site-header{justify-content:center}.site-header nav{width:100%;margin:0;justify-content:space-between;gap:.6rem;font-size:.875rem;border-top:1px solid var(--line);padding-top:.5rem}.brand-mark{width:2.5rem;height:2.5rem}.brand-name{font-size:1.6rem}.hero-inner{padding-block:3rem}.hero h1{font-size:clamp(2.65rem,10.5vw,3.6rem)}.hero-subhead{font-size:1.3rem;margin-top:1.4rem}.hero-body{font-size:1rem;line-height:1.7}.hero .button{width:100%;margin-top:1.75rem}.trust-list{padding-block:1.5rem;gap:1.15rem}.trust-list li{font-size:.8125rem;align-items:start;gap:.5rem}.trust-list li:before{margin-top:-.1rem}.stage{display:block;padding:1.8rem}.stage h3{font-size:2.55rem}.stage-promise{margin:1rem 0 1.5rem}.stage ul{border-left:0;border-top:1px solid var(--line);padding:1rem 0 0}.stage-control ul{border-top-color:var(--blue-light)}.founder-grid{grid-template-columns:1fr;gap:3rem}.founder-photo{width:calc(100% - .75rem);max-width:390px;box-shadow:.75rem .75rem 0 rgba(101,138,154,.16);aspect-ratio:4/4.5}.testimonial blockquote{font-size:2.2rem}.testimonial figcaption span{max-width:280px;margin-inline:auto}.fit-list li{font-size:1rem}.contact h2{font-size:3.3rem}.contact p{font-size:1rem}.contact .button{width:100%}.cookie-banner{bottom:.75rem;padding:1.1rem}.legal-page{padding-block:2.5rem 4rem}header:not(.site-header){justify-content:flex-start}.header-cta{min-height:2.8rem;padding:.75rem 1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Header descriptor sits beneath the wordmark. */
.brand-text{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.brand-subtitle{font:400 .875rem/1.4 var(--font-body);letter-spacing:0;color:var(--slate)}
header .brand{max-width:100%;flex-shrink:1}
header .brand-mark{flex-shrink:0}
@media(max-width:600px){header .brand-subtitle{font-size:.8125rem;max-width:30ch}header .brand-name{font-size:1.6rem}}

/* Unified hero typography and balanced section spacing. */
.hero-subhead,.hero-body,.hero .button{font-family:var(--font-body)}
.hero h1{font-family:var(--font-display);font-size:clamp(2.75rem,4.3vw,3.625rem);font-weight:500;line-height:1.08;letter-spacing:-.025em}
.hero h1 span{color:inherit}
.hero-subhead{font-size:1.1875rem;font-weight:500;line-height:1.55;margin-top:1.5rem;max-width:none;text-wrap:pretty}
.hero-body{font-size:1.125rem;font-weight:400;line-height:1.7;margin-top:1.125rem;max-width:600px}
.trust-list{gap:0;padding-block:1.5rem}
.trust-list li{justify-content:center;text-align:center;padding:.5rem 1.2rem;border-right:1px solid var(--line);font-size:.875rem;line-height:1.55}
.trust-list li:last-child{border-right:0}
.trust-list li:before{flex-shrink:0}
.section-intro{display:block;margin-bottom:2.75rem}
.section-intro h2{max-width:none}
.section-description{max-width:none;margin-top:1.5rem;padding:0;font-size:1.0625rem;line-height:1.7}
@media(max-width:800px){
 .trust-list{row-gap:0;padding-block:.75rem}
 .trust-list li{padding:1rem}
 .trust-list li:nth-child(2n){border-right:0}
 .trust-list li:nth-child(n+3){border-top:1px solid var(--line)}
 .section-intro{margin-bottom:2rem}
}
@media(max-width:600px){
 .hero h1{font-size:clamp(2.25rem,9.2vw,2.625rem);line-height:1.1}
 .hero-subhead{font-size:1.125rem}
 .section-description{margin-top:1.25rem;font-size:1rem}
}
@media(max-width:480px){
 .trust-list{grid-template-columns:1fr;padding-block:.5rem}
 .trust-list li{justify-content:flex-start;text-align:left;padding:.85rem 0;border-right:0;gap:.8rem}
 .trust-list li+li{border-top:1px solid var(--line)}
}

/* Keep the supporting sentence together where its full width fits. */
@media(min-width:1100px){.hero-subhead{white-space:nowrap}}

/* Mobile hero retains the office portrait before the copy. */
@media(max-width:800px){
  .hero-photo{display:block;inset:0 0 auto 0;height:clamp(250px,68vw,325px)}
  .hero-photo img{object-position:center 27%}
  .hero-photo:after{background:linear-gradient(0deg,var(--navy) 0%,rgba(12,71,101,.9) 7%,rgba(12,71,101,.45) 20%,transparent 44%),linear-gradient(270deg,rgba(12,71,101,.72),transparent 17%)}
  .hero-inner{padding-top:clamp(230px,62vw,300px)}
}

/* Distinct booking action in the main navigation. */
.site-header .nav-cta{min-height:2.75rem;padding:.7rem 1.2rem;background:var(--navy);border-color:var(--navy);color:white;white-space:nowrap}
.site-header .nav-cta:hover{background:var(--teal);border-color:var(--teal)}
@media(max-width:600px){.site-header nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;text-align:center}.site-header .nav-cta{grid-column:1/-1;width:100%}}
