:root {
  --ink: #0b0b0b;
  --paper: #f1ede5;
  --white: #fffdf8;
  --ember: #C0252A;
  --amber: #C0252A;
  --muted: #a7a39b;
  --line: rgba(255,255,255,.16);
  --pad: clamp(1.25rem, 4vw, 4.5rem);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--ink); }
body {
  margin: 0;
  color: var(--paper);
  background: var(--ink);
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.5;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 1000;
  pointer-events: none;
  opacity: .04;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, a { -webkit-tap-highlight-color: transparent; }

.site-header {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.05rem var(--pad);
  border-bottom: 1px solid transparent;
  transition: background .3s, border-color .3s, padding .3s;
}
.site-header.scrolled { background: rgba(11,11,11,.88); border-color: var(--line); backdrop-filter: blur(16px); padding-block: .75rem; }
.brand { display: flex; align-items: center; gap: .75rem; font-weight: 900; letter-spacing: -.05em; font-size: 1.35rem; }
.brand-mark { width: 1.7rem; aspect-ratio: 1; background: var(--ember); clip-path: polygon(0 0,72% 0,100% 28%,100% 100%,28% 100%,0 72%); }
.nav { display: flex; align-items: center; gap: clamp(1rem, 2.5vw, 2.5rem); font-size: .8rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.nav a { position: relative; }
.nav a:not(.nav-cta)::after { content:""; position:absolute; left:0; right:100%; bottom:-.35rem; height:2px; background:var(--ember); transition:right .25s; }
.nav a:hover::after, .nav a[aria-current="page"]::after { right:0; }
.nav-cta, .button { display:inline-flex; align-items:center; justify-content:center; gap:.7rem; border:1px solid var(--ember); background:var(--ember); color:#fff; padding:.85rem 1.2rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; font-size:.78rem; transition:transform .25s, background .25s, color .25s; }
.nav-cta:hover, .button:hover { transform: translateY(-3px); background:transparent; color:var(--paper); }
.button.secondary { background:transparent; border-color:rgba(255,255,255,.35); }
.button.secondary:hover { border-color:var(--paper); }
.menu-button { display:none; background:transparent; border:0; color:var(--paper); font-size:1.7rem; }

.hero { min-height: 100svh; position:relative; display:grid; align-items:end; overflow:hidden; padding:8rem var(--pad) 3rem; }
.hero-media { position:absolute; inset:0; }
.hero-media::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(0,0,0,.93) 0%,rgba(0,0,0,.65) 48%,rgba(0,0,0,.2) 100%),linear-gradient(0deg,#0b0b0b 0%,transparent 40%); }
.hero-media img { width:100%; height:115%; object-fit:cover; filter:saturate(.78) contrast(1.08); transform:translateY(var(--parallax,0)); }
.hero-content { position:relative; z-index:2; max-width:1080px; }
.eyebrow { display:flex; align-items:center; gap:.7rem; margin-bottom:1.25rem; color:#d2cec6; font-size:.76rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow::before { content:""; width:2.5rem; height:2px; background:var(--ember); }
h1,h2,h3,p { margin-top:0; }
h1 { max-width:1050px; margin-bottom:1.5rem; font-size:clamp(3.6rem,9.1vw,9.4rem); line-height:.83; letter-spacing:-.075em; text-transform:uppercase; font-weight:950; }
h1 em, h2 em { color:var(--ember); font-style:normal; }
.hero-lead { max-width:660px; font-size:clamp(1.05rem,1.7vw,1.4rem); color:#dedad3; }
.hero-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:2rem; }
.hero-index { position:absolute; right:var(--pad); bottom:2.7rem; z-index:2; display:grid; gap:.25rem; text-align:right; font-size:.7rem; letter-spacing:.15em; text-transform:uppercase; color:#c8c3bb; }
.hero-index strong { font-size:1.1rem; color:var(--paper); }

.metric-strip { display:grid; grid-template-columns:repeat(4,1fr); border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.metric { min-height:180px; padding:2rem var(--pad); border-right:1px solid var(--line); display:flex; flex-direction:column; justify-content:space-between; }
.metric:last-child { border:0; }
.metric strong { font-size:clamp(2rem,4vw,4.5rem); letter-spacing:-.065em; line-height:1; }
.metric span { color:var(--muted); font-size:.72rem; letter-spacing:.12em; text-transform:uppercase; max-width:15rem; }

.section { position:relative; padding:clamp(5rem,10vw,9rem) var(--pad); }
.section-light { background:var(--paper); color:var(--ink); }
.section-grid { display:grid; grid-template-columns:minmax(220px,.65fr) minmax(0,1.75fr); gap:clamp(2rem,8vw,9rem); }
.section-kicker { position:sticky; top:7rem; align-self:start; font-size:.72rem; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.section-kicker span { color:var(--ember); margin-right:.6rem; }
h2 { font-size:clamp(2.7rem,6vw,6.8rem); line-height:.92; letter-spacing:-.065em; text-transform:uppercase; max-width:1050px; margin-bottom:2rem; }
.lead { max-width:790px; color:#5f5b55; font-size:clamp(1.05rem,1.7vw,1.35rem); }
.dark-lead { color:#b5b1aa; }

.problem-list { margin-top:3rem; border-top:1px solid rgba(0,0,0,.22); }
.problem-row { display:grid; grid-template-columns:5rem 1fr; gap:1rem; padding:1.55rem 0; border-bottom:1px solid rgba(0,0,0,.22); align-items:start; }
.problem-row span { color:var(--ember); font-weight:900; }
.problem-row p { margin:0; font-size:clamp(1.1rem,2vw,1.55rem); font-weight:650; max-width:800px; }

.statement { min-height:80svh; display:grid; place-items:center; text-align:center; padding:8rem var(--pad); overflow:hidden; }
.statement h2 { max-width:1200px; margin:0; }
.word-roll { display:inline-block; color:var(--ember); }

.system-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:4rem; }
.system-card { min-height:320px; background:var(--ink); padding:clamp(1.5rem,3.5vw,3.2rem); display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; position:relative; }
.system-card::before { content:attr(data-step); position:absolute; right:-.03em; top:-.2em; font-size:9rem; font-weight:950; color:rgba(255,255,255,.035); letter-spacing:-.08em; }
.system-card h3 { font-size:clamp(1.5rem,2.8vw,2.5rem); letter-spacing:-.04em; text-transform:uppercase; }
.system-card p { color:var(--muted); max-width:31rem; }
.system-card .line { width:3rem; height:3px; background:var(--ember); transition:width .4s; }
.system-card:hover .line { width:100%; }

.image-break { height:min(72vw,780px); position:relative; overflow:hidden; }
.image-break img { width:100%; height:120%; object-fit:cover; position:absolute; top:-10%; filter:saturate(.75); transform:translateY(var(--parallax,0)); }
.image-break::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(0,0,0,.8),transparent 60%); }
.image-caption { position:absolute; z-index:2; left:var(--pad); bottom:var(--pad); font-size:.75rem; text-transform:uppercase; letter-spacing:.16em; }

.review-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:1px; background:rgba(0,0,0,.18); margin-top:4rem; }
.review { background:var(--paper); padding:clamp(1.6rem,4vw,3.5rem); min-height:250px; display:flex; flex-direction:column; justify-content:space-between; }
.review.featured { grid-row:span 2; min-height:501px; background:var(--ember); color:#fff; }
.review blockquote { margin:0; font-size:clamp(1.15rem,2vw,1.75rem); letter-spacing:-.025em; font-weight:600; }
.review.featured blockquote { font-size:clamp(1.8rem,3.3vw,3.4rem); line-height:1.12; }
.review cite { font-style:normal; font-size:.75rem; font-weight:800; text-transform:uppercase; letter-spacing:.12em; margin-top:2rem; }

.split-cta { display:grid; grid-template-columns:1.4fr .6fr; min-height:520px; }
.split-cta > div { padding:clamp(3rem,7vw,7rem) var(--pad); display:flex; flex-direction:column; justify-content:space-between; }
.split-cta .cta-main { background:var(--ember); color:#fff; }
.split-cta .cta-side { background:#171717; }
.split-cta h2 { margin-bottom:3rem; }

.page-hero { min-height:70svh; padding:10rem var(--pad) 5rem; display:flex; flex-direction:column; justify-content:flex-end; border-bottom:1px solid var(--line); position:relative; overflow:hidden; }
.page-hero::before { content:""; position:absolute; width:52vw; aspect-ratio:1; right:-18vw; top:-20vw; border:1px solid rgba(192,37,42,.5); border-radius:50%; box-shadow:0 0 0 6vw rgba(192,37,42,.05),0 0 0 12vw rgba(192,37,42,.025); }
.page-hero h1 { position:relative; font-size:clamp(3.5rem,8vw,8rem); max-width:1150px; }
.page-hero .hero-lead { position:relative; }

.timeline { margin-top:4rem; }
.timeline-item { display:grid; grid-template-columns:7rem minmax(0,1fr) minmax(250px,.75fr); gap:2rem; border-top:1px solid var(--line); padding:3rem 0; }
.timeline-item:last-child { border-bottom:1px solid var(--line); }
.timeline-item .num { color:var(--ember); font-size:1.2rem; font-weight:900; }
.timeline-item h3 { font-size:clamp(1.7rem,3vw,3rem); text-transform:uppercase; letter-spacing:-.04em; }
.timeline-item p { color:var(--muted); }

.team-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:rgba(0,0,0,.18); margin-top:4rem; border:1px solid rgba(0,0,0,.18); }
.team-card { aspect-ratio:.8; background:#d9d3c8; color:var(--ink); padding:1.5rem; display:flex; flex-direction:column; justify-content:flex-end; position:relative; overflow:hidden; }
.team-card::before { content:""; position:absolute; width:120%; height:70%; background:linear-gradient(135deg,transparent 20%,rgba(192,37,42,.16)); transform:rotate(-14deg); left:-10%; top:0; }
.team-card .initials { position:absolute; top:50%; left:50%; transform:translate(-50%,-55%); font-size:clamp(4rem,7vw,8rem); font-weight:950; letter-spacing:-.1em; color:rgba(11,11,11,.12); }
.team-card h3 { position:relative; z-index:2; margin:0; font-size:clamp(1.4rem,2.4vw,2.3rem); text-transform:uppercase; letter-spacing:-.04em; }

.contact-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1px; background:var(--line); border:1px solid var(--line); margin-top:4rem; }
.contact-card { background:var(--ink); padding:clamp(2rem,5vw,4rem); min-height:280px; display:flex; flex-direction:column; justify-content:space-between; }
.contact-card small { color:var(--muted); text-transform:uppercase; letter-spacing:.14em; }
.contact-card a { font-size:clamp(1.5rem,3.5vw,3.5rem); letter-spacing:-.055em; font-weight:850; word-break:break-word; }
.contact-card a:hover { color:var(--ember); }

.footer { padding:4rem var(--pad) 2rem; border-top:1px solid var(--line); }
.footer-top { display:grid; grid-template-columns:1.2fr .8fr; gap:2rem; align-items:end; }
.footer-wordmark { font-size:clamp(4rem,13vw,13rem); font-weight:950; letter-spacing:-.09em; line-height:.75; text-transform:uppercase; }
.footer-nav { display:grid; grid-template-columns:repeat(2,1fr); gap:.75rem; font-size:.8rem; text-transform:uppercase; letter-spacing:.12em; }
.footer-bottom { display:flex; justify-content:space-between; gap:2rem; margin-top:4rem; padding-top:1.25rem; border-top:1px solid var(--line); color:var(--muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.1em; }

.reveal { opacity:0; transform:translateY(32px); transition:opacity .8s cubic-bezier(.2,.8,.2,1),transform .8s cubic-bezier(.2,.8,.2,1); }
.reveal.visible { opacity:1; transform:none; }

@media (max-width: 900px) {
  .nav { position:fixed; inset:0; background:var(--ink); flex-direction:column; justify-content:center; font-size:1.25rem; transform:translateY(-105%); transition:transform .45s cubic-bezier(.7,0,.2,1); }
  .nav.open { transform:none; }
  .menu-button { display:block; position:relative; z-index:2; }
  .metric-strip { grid-template-columns:repeat(2,1fr); }
  .metric:nth-child(2) { border-right:0; }
  .metric:nth-child(-n+2) { border-bottom:1px solid var(--line); }
  .section-grid { grid-template-columns:1fr; }
  .section-kicker { position:static; }
  .review-grid, .split-cta, .footer-top { grid-template-columns:1fr; }
  .review.featured { grid-row:auto; min-height:380px; }
  .team-grid { grid-template-columns:repeat(2,1fr); }
  .timeline-item { grid-template-columns:4rem 1fr; }
  .timeline-item p { grid-column:2; }
}

@media (max-width: 560px) {
  h1 { font-size:3.35rem; }
  .hero { min-height:92svh; }
  .hero-index { display:none; }
  .metric { min-height:145px; padding:1.35rem; }
  .system-grid, .contact-grid { grid-template-columns:1fr; }
  .system-card { min-height:270px; }
  .team-grid { grid-template-columns:1fr 1fr; }
  .team-card { min-height:260px; }
  .timeline-item { grid-template-columns:1fr; gap:.5rem; }
  .timeline-item p { grid-column:auto; }
  .footer-bottom { flex-direction:column; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto !important; animation:none !important; transition:none !important; }
  .reveal { opacity:1; transform:none; }
}

/* Local brand, video and reversible scroll experience. */
.brand-logo{transform:scale(1.5)}
.brick-copy h2 br:after{content:' '}
.brand-logo{width:78px;height:80px;object-fit:contain}.site-header{padding-block:.3rem}.footer-logo{width:190px;height:190px;object-fit:contain}.background-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.7)}
.hero-media::after{z-index:1}.hero-media img{position:absolute;inset:0}.image-break .background-video{height:100%}
.brick-build{height:240svh;background:#111;position:relative}.brick-sticky{height:100svh;position:sticky;top:0;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:3rem;padding:7rem var(--pad) 3rem;overflow:hidden}.brick-copy h2{font-size:clamp(2.5rem,5vw,5.5rem)}.brick-copy p{max-width:30rem;color:#b5b1aa}.build-caption{font-size:.8rem;letter-spacing:.13em;text-transform:uppercase;color:#ccc}.brick-wall{position:relative;width:min(100%,560px);height:390px;align-self:center;perspective:900px}.brick{position:absolute;bottom:calc(var(--row) * 51px);left:calc(var(--col) * 27%);width:25%;height:43px;background:linear-gradient(140deg,#dd4549,#C0252A 55%,#871b1f);border:1px solid #ef70736b;box-shadow:inset 0 5px 0 #ffffff12,inset 0 -6px 0 #0002,0 7px 12px #0006;border-radius:3px;opacity:0;will-change:transform,opacity;transform:translateY(-65vh) rotate(-8deg)}
.real-team{grid-template-columns:2fr 1fr 1fr}.real-team .team-card{aspect-ratio:auto;min-height:380px;padding:1.3rem;isolation:isolate;justify-content:flex-end;color:white}.real-team .team-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}.real-team .team-card:before{inset:0;width:100%;height:100%;transform:none;background:linear-gradient(0deg,#000d,transparent 65%);z-index:-1}.real-team .team-card p{margin:0}.real-team .team-card h3{font-size:1.6rem}
a:focus-visible,button:focus-visible{outline:3px solid #fff;outline-offset:5px}.eyebrow,.section-kicker,.metric span,.review cite,.footer-nav{font-size:.875rem}.hero-content{opacity:1;transform:none}
@media(max-width:900px){.nav{height:100dvh;visibility:hidden;pointer-events:none;inset:0;transform:translateY(-110%)}.nav.open{visibility:visible;pointer-events:auto}.site-header.scrolled{backdrop-filter:none;background:#0b0b0b}.brand{z-index:2}.brick-sticky{grid-template-columns:1fr;gap:1rem;padding-top:7rem}.brick-copy h2{font-size:2.7rem;margin-bottom:1rem}.brick-copy h2 br{display:none}.brick-wall{width:min(85%,450px);height:310px;justify-self:center}.brick{height:34px;bottom:calc(var(--row) * 42px)}.real-team{grid-template-columns:1fr 1fr}.real-team .founders{grid-column:1/-1}.brand-logo{width:65px;height:70px}}
@media(max-width:560px){.brick-copy h2{font-size:2.4rem}.brick-copy p{font-size:1rem}.real-team .team-card{min-height:300px}.real-team .team-card h3{font-size:1.3rem}.brick-wall{height:260px}.brick-sticky{padding-bottom:1rem}.hero .eyebrow{max-width:300px}.hero h1{font-size:clamp(2.8rem,12vw,3.35rem)}}
@media(prefers-reduced-motion:reduce){.brick-build{height:auto}.brick-sticky{position:relative;height:auto;min-height:650px}.brick{opacity:1!important;transform:none!important}.background-video{display:none}}

/* Single-file rebuild. Brand palette is inherited from the recovered Brix website. */
html{scroll-padding-top:7rem}body{overflow-x:clip}body::before{opacity:.018}main,section,article,fieldset{min-width:0}button,input,select{font:inherit}a,button,input,select{touch-action:manipulation}button,select,.button,.nav a,.text-link{min-height:44px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #de4a4f;outline-offset:4px}img,video{max-width:100%;height:auto}button{cursor:pointer}section[id],article[id],.tier-heading[id]{scroll-margin-top:7rem}[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:1rem;z-index:1001;padding:1rem;background:white;color:black}.skip-link:focus{top:1rem}.site-header{background:#0b0b0bea}.brand-logo{height:72px;width:74px}.hero{min-height:92svh;display:block;padding-top:9.5rem;padding-bottom:4rem;overflow:clip}.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(2rem,5vw,6rem);align-items:center}.hero h1{font-size:clamp(3.4rem,6.8vw,7.8rem);line-height:.94;letter-spacing:-.065em}.hero-content{max-width:100%}.hero-lead{font-size:clamp(1.05rem,1.6vw,1.3rem);max-width:32rem}.hero-media img{height:100%;transform:none}.hero-media::after{background:linear-gradient(90deg,#000d,#0008),linear-gradient(0deg,#0b0b0b,transparent 70%)}.background-video{width:100%;height:100%;max-width:100%;object-fit:cover}.hero-stamp{display:flex;flex-direction:column;border-left:2px solid var(--ember);padding-left:1rem;margin-top:2.5rem;font-size:.82rem;letter-spacing:.04em;color:#c5c0b8}.hero-stamp span:last-child{font-weight:700;color:white;margin-top:.2rem}.text-link{display:inline-flex;align-items:center;gap:.8rem;font-weight:750;font-size:.9rem;text-decoration:underline;text-underline-offset:5px}.text-link span{margin-left:auto}.video-toggle{min-height:44px;background:#111c;border:1px solid #777;color:white;padding:.6rem .9rem;font-size:.75rem;position:relative;z-index:3;margin-top:1.5rem}.image-break>.video-toggle{position:absolute;right:var(--pad);bottom:var(--pad);margin:0}.trade-tool{background:#f4f0e8;color:#171717;padding:clamp(1.4rem,2.8vw,2.8rem);border-top:4px solid var(--ember);box-shadow:0 24px 70px #0005}.tool-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.tool-tag,.tool-step{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:800}.tool-tag{color:#a31c22}.tool-step{color:#777}.trade-tool h2{font-size:clamp(1.9rem,3vw,3.3rem);line-height:1.02;letter-spacing:-.05em;text-transform:none;margin-bottom:1rem}.trade-tool>p{color:#615b54;font-size:.9rem}.field-label,legend{display:block;font-weight:800;font-size:.85rem;margin:1.7rem 0 .7rem}select{width:100%;min-height:52px;padding:12px;color:#171717;background:#fff;border:1px solid #a49c92;border-radius:0;font-size:16px}fieldset{border:0;margin:0;padding:0}legend{padding:0;padding-top:1.6rem;margin:0 0 .35rem}.field-hint{color:#686057;font-size:.78rem}.service-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem}.service-choice{display:flex;gap:.5rem;align-items:center;padding:.7rem;border:1px solid #cfc7bc;font-size:.76rem;line-height:1.3;min-height:48px;cursor:pointer;background:#faf8f3}.service-choice:has(input:checked){background:#fbe9e9;border-color:var(--ember);color:#8e181d}.service-choice input{flex:0 0 auto;width:17px;height:17px;accent-color:var(--ember);margin:0}.tool-note{font-size:.72rem!important;margin:1.25rem 0 0!important}.tool-stage,.forecast{animation:slide-in .3s ease both}@keyframes slide-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.forecast{position:relative;z-index:2;border:1px solid #54463e;background:#181614;padding:clamp(1.3rem,3vw,3rem);margin-top:3rem}.forecast-head{display:flex;justify-content:space-between;gap:1rem;align-items:start}.forecast .tool-tag{color:#f18d91}.forecast h2{font-size:clamp(1.6rem,3vw,2.7rem);line-height:1.1;letter-spacing:-.04em;margin:1rem 0 2rem;text-transform:none}.estimate-pill{font-size:.72rem;border:1px solid #66574d;border-radius:2rem;padding:.4rem .8rem;color:#ded2c6}.forecast-numbers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;border-block:1px solid #ffffff26;padding:1.6rem 0}.forecast-numbers>div{display:flex;flex-direction:column;gap:.65rem}.forecast-numbers span{font-size:.8rem;color:#ded2c6}.forecast-numbers strong{font-size:clamp(1.65rem,3vw,3rem);line-height:1.1;letter-spacing:-.035em}.forecast-numbers small{font-size:.7rem;color:#aaa195}.tailored-copy{padding-top:1.5rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem 2rem}.tailored-copy p{font-size:.9rem;color:#d1c9bd}.tailored-copy strong{display:block;color:#fff;margin-bottom:.3rem}.assumptions{color:#c0b7aa;font-size:.78rem;margin:1rem 0 1.6rem;max-width:70rem}.assumptions summary{cursor:pointer;min-height:44px;display:list-item;padding-top:.5rem;color:#f2eee6}.assumptions p{margin:.5rem 0}.forecast-fine{font-size:.75rem;margin:1rem 0 0;color:#aaa195}.section-heading{max-width:1000px;margin-bottom:3rem}.section-heading .section-kicker{position:static;margin-bottom:2rem}.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.service-card{position:relative;display:flex;flex-direction:column;padding:1.8rem;background:#faf8f3;border:1px solid #d7d0c5;transition:transform .2s,border-color .2s}.service-card:hover{transform:translateY(-4px);border-color:#c0252a}.service-card:first-child{grid-column:span 2;background:#c0252a;color:white}.service-icon{width:2rem;height:2rem;color:#a31c22;margin-bottom:2rem}.service-card:first-child .service-icon{color:white}.service-number{position:absolute;right:1.8rem;top:1.8rem;color:#8a7e71;font-size:.75rem}.service-card:first-child .service-number{color:#ffd9da}.service-card h3{font-size:1.35rem;letter-spacing:-.035em;line-height:1.15;max-width:28rem}.service-card p{color:#625b53;font-size:.9rem;max-width:38rem;margin-bottom:1.5rem}.service-card:first-child p{color:#fff0ef}.service-card .text-link{margin-top:auto;font-size:.8rem}.program-prices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.price-card{display:flex;flex-direction:column;border:1px solid #ffffff30;background:#171717;padding:clamp(1.3rem,2.8vw,2.7rem)}.featured-price{border-top:4px solid var(--ember);background:#241719}.price-label{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#c6b7a6;margin-bottom:1.6rem}.price-card h3{font-size:clamp(1.2rem,2vw,1.8rem);letter-spacing:-.04em;line-height:1.2}.price{font-size:clamp(1.8rem,3.5vw,3.8rem);font-weight:850;letter-spacing:-.04em;margin:.5rem 0 1rem}.price small{display:block;font-size:.78rem;font-weight:400;letter-spacing:0;color:#c0b7ad;margin-top:.5rem}.price-card ul{padding-left:1.2rem;color:#c7bfb5;font-size:.9rem;line-height:1.7;margin-bottom:2rem}.price-card li{padding-bottom:.5rem}.price-card li::marker{color:#d84e53}.price-card .button{margin-top:auto}.tier-heading{margin:4rem 0 1.5rem}.tier-heading h3{font-size:1.7rem;margin:0 0 .5rem;letter-spacing:-.04em}.tier-heading p,.pricing-note{color:#a7a39b;font-size:.85rem}.tier-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.tier-grid .price{font-size:2rem}.pricing-note{margin-top:1.5rem}.google-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.google-review{background:#fffdfa;padding:1.6rem;border:1px solid #dcd6ce;border-radius:10px;box-shadow:0 3px 14px #38230c08}.google-review header{display:flex;gap:.85rem;align-items:center}.review-avatar{width:42px;height:42px;border-radius:50%;background:#8b342e;color:white;display:grid;place-items:center;font-size:.85rem;flex-shrink:0}.google-review:nth-child(2n) .review-avatar{background:#4b675f}.google-review:nth-child(3n) .review-avatar{background:#6d6384}.google-review h3{font-size:1rem;line-height:1.25;margin:0 0 .3rem;letter-spacing:0}.review-source{display:flex;align-items:center;gap:.35rem;font-size:.7rem;color:#686868}.google-g{width:14px;height:14px}.google-review blockquote{font-size:.95rem;line-height:1.65;margin:1.5rem 0 .25rem;color:#3b3835}.stars{display:inline-flex;color:#f6b400;gap:2px}.stars svg{height:18px;width:18px}.google-rating{display:flex;align-items:center;gap:.8rem;margin-top:1.5rem;font-size:.8rem;color:#5b554e;flex-wrap:wrap}.client-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.clients-section{border-top:1px solid #d1c9bd;padding-top:5rem}.client-card{border:1px solid #d1c9bd}.client-photo{width:100%;aspect-ratio:1.8;object-fit:cover}.client-identity{background:#faf8f3;padding:1rem}.client-logo{width:100%;height:90px;object-fit:contain}.client-identity h3{font-size:.9rem;margin:1rem 0 .25rem;text-align:center}.section-light .button:hover{color:var(--ink);border-color:var(--ink)}.section-light a:focus-visible{outline-color:#9a1d22}.real-team{gap:1rem;background:transparent;border:0}.real-team .team-card img{height:100%;object-fit:cover}.contact-card{min-height:190px}.contact-card a{font-size:clamp(1.1rem,2vw,2rem);overflow-wrap:anywhere}.reveal{opacity:1;transform:none}.brick-wall{max-width:100%}.nav a{display:inline-flex;align-items:center}.footer-nav a{min-height:44px;display:flex;align-items:center}.image-caption{max-width:65%}.button{white-space:normal;text-align:center;line-height:1.5}.section h2{font-size:clamp(2.5rem,5.5vw,6rem);line-height:1.02}
@media(max-width:1100px){.hero-layout{gap:2rem}.hero h1{font-size:clamp(3rem,6.7vw,5rem)}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card:first-child{grid-column:span 1}.google-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tier-grid .price-card{padding:1.25rem}.section-grid{grid-template-columns:minmax(0,1fr);gap:2rem}.section-kicker{position:static}.contact-grid{margin-top:2rem}}
@media(max-width:900px){.hero-layout{grid-template-columns:1fr}.hero h1{font-size:clamp(3.5rem,10vw,6rem)}.hero-stamp{margin-top:1.5rem}.hero-layout .hero-content{max-width:42rem}.trade-tool{max-width:none}.hero{padding-top:8rem}.tier-grid{grid-template-columns:1fr}.tier-grid .price-card{padding:2rem}.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.forecast-head{flex-direction:column}.menu-button{min-width:48px;min-height:48px}.nav{background:#111;overflow-y:auto;padding:7rem 2rem 3rem;justify-content:center}.nav a{min-height:48px}.site-header.scrolled{padding-block:.3rem}}
@media(max-width:768px){.services-grid,.program-prices,.google-review-grid,.client-grid,.forecast-numbers,.tailored-copy{grid-template-columns:1fr}.hero{min-height:0;padding-bottom:3rem}.hero-index{display:none}.hero-layout{gap:2rem}.service-card{padding:1.5rem}.service-icon{margin-bottom:1.5rem}.section{padding-block:4rem}.section h2{font-size:clamp(2.3rem,7vw,3.5rem)}.section-heading{margin-bottom:2rem}.section-heading .section-kicker{margin-bottom:1.4rem}.forecast-numbers>div+div{border-top:1px solid #ffffff20;padding-top:1.2rem}.forecast-numbers strong{font-size:2.4rem}.forecast-numbers{gap:1.2rem}.metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{min-height:135px;padding:1.3rem;border-bottom:1px solid var(--line)}.metric strong{font-size:2.4rem}.metric span{font-size:.65rem}.real-team{grid-template-columns:1fr}.real-team .founders{grid-column:auto}.real-team .team-card{min-height:360px}.client-photo{max-height:260px}.client-logo{height:80px}.client-identity h3{font-size:1rem}.contact-grid{grid-template-columns:1fr}.contact-card{min-height:130px;padding:1.5rem}.contact-card a{font-size:1.6rem}.split-cta{grid-template-columns:1fr;min-height:0}.split-cta>div{padding:3rem var(--pad)}.split-cta h2{font-size:2.8rem}.statement{min-height:55svh;padding:5rem var(--pad)}.statement h2{font-size:clamp(2.4rem,7vw,4rem)}.image-break{height:65svh;max-height:560px}.image-caption{bottom:5rem;max-width:85%}.image-break>.video-toggle{left:var(--pad);right:auto}.system-grid{grid-template-columns:1fr}.system-card{min-height:230px}.system-card h3{font-size:1.75rem}.footer-top{grid-template-columns:1fr}.footer-logo{width:130px;height:130px}.footer-bottom{flex-direction:column;gap:.5rem;margin-top:2rem}.brick-sticky{padding-top:6rem}.brick-copy h2{font-size:2.4rem}.brick-copy p{font-size:.95rem}.brick-wall{width:min(90%,420px)}.problem-row{grid-template-columns:2rem minmax(0,1fr)}.problem-row p{font-size:1.1rem}}
@media(max-width:480px){:root{--pad:1.2rem}.brand-logo{height:62px;width:64px}.hero{padding-top:7.5rem}.hero h1{font-size:clamp(2.8rem,12vw,3.7rem);line-height:.99}.eyebrow{font-size:.67rem;letter-spacing:.1em}.eyebrow::before{width:1.3rem}.hero-lead{font-size:1.05rem}.trade-tool{padding:1.25rem}.trade-tool h2{font-size:2rem}.service-choices{grid-template-columns:1fr}.service-choice{font-size:.85rem;min-height:48px}.tool-top{margin-bottom:1.2rem}.forecast{padding:1.25rem}.forecast h2{font-size:1.7rem}.forecast .button{width:100%}.hero-actions{display:grid;grid-template-columns:1fr}.section h2{font-size:2.4rem;letter-spacing:-.05em}.tier-heading{margin-top:3rem}.google-review{padding:1.35rem}.metric span{letter-spacing:.04em}.metric strong{font-size:2rem}.real-team .team-card{min-height:330px}.real-team .founders{min-height:300px}.brick-copy h2{font-size:2.1rem}.brick-copy .eyebrow{margin-bottom:.7rem}.brick-wall{height:230px}.brick{height:28px;bottom:calc(var(--row)*35px)}.brick-sticky{gap:.5rem}.contact-card a{font-size:1.4rem}.estimate-pill{font-size:.65rem}.forecast-numbers strong{font-size:2.15rem}.button{padding:1rem;font-size:.75rem}}
.brick-copy{min-width:0}.brick-copy h2 br{display:block}.section-grid>div{min-width:0}.brand{flex-shrink:0}.brand img{flex-shrink:0}
@media(max-width:900px){.brick-sticky{grid-template-columns:minmax(0,1fr)}.brick-copy h2 br{display:block}}
@media(max-width:480px){.section h2{font-size:clamp(2rem,8vw,2.4rem)}.brick-copy h2{font-size:2rem}.build-caption{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.background-video{display:none}.video-toggle{display:none}.brick-build{height:auto}.brick-sticky{height:auto;min-height:680px}.brick{opacity:1!important;transform:none!important}}

/* Refined selector: open typography, a single trade field and compact service pills. */
.trade-tool{padding:clamp(1.5rem,3vw,3rem);background:linear-gradient(135deg,rgba(20,20,20,.92),rgba(20,20,20,.77));border:1px solid #ffffff24;border-radius:24px;box-shadow:none;color:#fff;backdrop-filter:blur(18px)}
.trade-tool .tool-top{margin-bottom:1.6rem}.trade-tool .tool-tag{color:#bbb5ae;font-size:.65rem;letter-spacing:.14em}.trade-tool .tool-step{color:#928c85;font-size:.65rem}.trade-tool h2{font-size:clamp(2.3rem,3.5vw,3.8rem);font-weight:800;letter-spacing:-.055em;line-height:1.04;margin-bottom:.8rem}.trade-tool h2 em{color:#ee696d}.trade-tool>p{color:#bdb7b0;font-size:.9rem}.trade-tool .field-label{margin-top:2rem;font-size:.75rem;letter-spacing:.025em;font-weight:650;color:#e4dfd8}.select-shell{position:relative}.select-shell select{appearance:none;-webkit-appearance:none;border:1px solid #ffffff35;border-radius:10px;background:#ffffff09;color:#fff;padding:0 3rem 0 1rem;min-height:56px;font-size:16px;cursor:pointer;transition:border-color .2s,background .2s}.select-shell select:focus{border-color:#eb696e;background:#222;outline:2px solid #eb696e;outline-offset:3px}.select-shell select option{background:#1a1a1a;color:white}.select-shell>svg{position:absolute;right:1rem;top:50%;transform:translateY(-50%);width:20px;height:20px;pointer-events:none;fill:none;stroke:#c8c2ba;stroke-width:1.5}.trade-tool legend{font-size:.8rem;letter-spacing:0;padding-top:1.75rem;font-weight:650;color:#eee8e0}.trade-tool .field-hint{font-size:.72rem;margin:.35rem 0 1rem;color:#a8a29b}.service-choices{display:flex;flex-wrap:wrap;gap:.5rem}.service-choice{position:relative;display:inline-flex;flex:0 1 auto;align-items:center;gap:.55rem;min-height:44px;padding:.65rem .95rem;border:1px solid #ffffff29;border-radius:30px;background:transparent;color:#d5cfc8;font-size:.76rem;line-height:1.25;transition:background .18s,border-color .18s,color .18s;max-width:100%}.service-choice:hover{background:#ffffff0a;border-color:#ffffff65}.service-choice input{position:absolute;width:1px;height:1px;opacity:0;margin:0;clip-path:inset(50%)}.service-choice:has(input:focus-visible){outline:2px solid #ed797d;outline-offset:3px}.service-choice:has(input:checked){background:#c0252a25;border-color:#e56469;color:#fff}.choice-mark{font-size:1rem;line-height:1;color:#a49b91;width:13px;text-align:center}.service-choice:has(input:checked) .choice-mark{color:#f78f93}.trade-tool .tool-note{color:#99928a;font-size:.7rem!important;margin-top:1.25rem!important;min-height:1.5em}.selector-next{display:flex;justify-content:space-between;align-items:center;gap:1rem;min-height:50px;border-radius:9px;margin-top:1.5rem;padding:.8rem 1rem;background:#c0252a;color:#fff;font-size:.8rem;font-weight:750}.selector-next:hover{background:#d43137}.selector-next span{font-size:1.2rem}.forecast{border-radius:18px;scroll-margin-top:6rem}.forecast .assumptions{max-width:70rem}
.enquiry-form{padding:clamp(1.4rem,3vw,2.8rem);border:1px solid #ffffff26;border-radius:18px;margin:2.5rem 0;background:#141414;scroll-margin-top:7rem}.enquiry-heading h3{font-size:2rem;letter-spacing:-.045em;line-height:1.1;margin-bottom:.7rem}.enquiry-heading p{color:#a9a29a;font-size:.9rem}.enquiry-selection{font-size:.78rem;background:#c0252a17;border-left:2px solid #c0252a;padding:.8rem 1rem;line-height:1.6;color:#e2c8c9;overflow-wrap:anywhere}.enquiry-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin-top:1.7rem}.enquiry-form label{display:block;font-size:.8rem;color:#e4ded7;min-width:0}.enquiry-form label span{color:#a19b93;font-size:.72rem}.enquiry-form input:not([type=hidden]),.enquiry-form textarea{display:block;width:100%;min-height:50px;font:inherit;font-size:16px;color:#fff;border:1px solid #ffffff29;border-radius:8px;background:#ffffff04;padding:.85rem 1rem;margin-top:.5rem;box-sizing:border-box}.enquiry-form input::placeholder,.enquiry-form textarea::placeholder{color:#8f8981;font-size:.85rem}.enquiry-form input:focus,.enquiry-form textarea:focus{border-color:#e26569;outline:2px solid #e26569;outline-offset:2px}.enquiry-form textarea{resize:vertical;min-height:100px}.message-label{margin-top:1.2rem}.enquiry-footer{margin-top:1.5rem;display:flex;flex-direction:column;align-items:start;gap:.8rem}.enquiry-footer button{border-radius:8px;min-height:50px}.enquiry-footer p{font-size:.72rem;color:#aaa298;margin:0}.enquiry-status{margin:1rem 0 0;font-size:.9rem;line-height:1.6}.enquiry-status:empty{display:none}.enquiry-status[data-state=success]{color:#a9d7b5}.enquiry-status[data-state=error]{color:#ffbabd}.enquiry-form button:disabled{opacity:.65;cursor:default;transform:none}.enquiry-form input:disabled,.enquiry-form textarea:disabled{opacity:.6}
@media(max-width:768px){.trade-tool{border-radius:18px;padding:1.5rem}.trade-tool h2{font-size:2.7rem}.enquiry-fields{grid-template-columns:1fr}.enquiry-form{padding:1.5rem}.hero-layout{gap:2.2rem}}
@media(max-width:480px){.trade-tool{padding:1.3rem}.trade-tool h2{font-size:2.35rem}.trade-tool .tool-tag{font-size:.59rem;letter-spacing:.08em}.trade-tool .tool-top{gap:.5rem}.service-choice{font-size:.74rem;padding:.6rem .8rem;min-height:44px}.trade-tool .field-label{margin-top:1.5rem}.enquiry-footer .button{width:100%;font-size:.7rem}.enquiry-form{padding:1.2rem}.enquiry-heading h3{font-size:1.8rem}}

/* Five-page layout. */
.page-hero{min-height:55svh;padding-top:9rem;padding-bottom:3.5rem}.page-hero h1{font-size:clamp(3rem,7vw,7rem);line-height:1}.page-hero+.section{padding-top:4rem}.nav a[aria-current="page"]{color:#f07b7f}.nav a.nav-cta[aria-current="page"]{color:white}.enquiry-fields input{min-width:0}.timeline-item>*{min-width:0}
@media(max-width:1100px){.timeline-item{grid-template-columns:3rem minmax(0,1fr)}.timeline-item p{grid-column:2}.nav{gap:1.2rem}}
@media(max-width:900px){.nav{gap:1rem}.page-hero{min-height:45svh}.page-hero h1{font-size:clamp(2.8rem,8vw,5rem)}}
@media(max-width:768px){.split-cta{grid-template-columns:minmax(0,1fr)}.split-cta>div{min-width:0}.split-cta h2{font-size:clamp(2rem,8vw,2.8rem);overflow-wrap:anywhere}}
@media(max-width:480px){.page-hero{padding-top:8rem;padding-bottom:2.5rem;min-height:0}.page-hero h1{font-size:clamp(2.5rem,10vw,3.2rem);overflow-wrap:anywhere}.page-hero .hero-lead{font-size:1rem}.timeline-item{gap:.75rem;grid-template-columns:2rem minmax(0,1fr);padding:2rem 0}.timeline-item h3{font-size:1.6rem}.timeline-item p{margin:0}.real-team .team-card h3{font-size:1.3rem}}

/* Original GHL footage, with lighter treatment and the original cream/red palette. */
.hero{padding:0;min-height:0;overflow:clip}
.hero-stage{position:relative;min-height:100svh;padding:9rem var(--pad) 4rem;display:grid;align-items:center;isolation:isolate}
.hero-media{inset:0;overflow:hidden}
.hero-media::after{background:linear-gradient(90deg,rgba(0,0,0,.72) 0%,rgba(0,0,0,.36) 44%,rgba(0,0,0,.08) 100%),linear-gradient(0deg,rgba(11,11,11,.65),transparent 24%)}
.background-video{filter:none;transform:none}
.hero-media img,.image-break img{filter:none}
.image-break::after{background:linear-gradient(0deg,rgba(0,0,0,.5),transparent 36%)}
.hero-content .hero-lead{color:#fff;text-shadow:0 1px 8px #0006}
.hero-content .eyebrow,.hero-content>.text-link{color:#fff;text-shadow:0 1px 6px #0008}
.hero-stamp{color:#eee8df}
.hero:has(.hero-stage)>.forecast{margin:2rem var(--pad) 4rem}
.trade-tool{background:#f3efe7;color:#171717;border:1px solid #ece6db;border-radius:16px;backdrop-filter:none;box-shadow:0 12px 40px #00000012}
.trade-tool h2 em{color:var(--ember)}
.trade-tool .tool-tag,.trade-tool .tool-step{color:#74695d}
.trade-tool>p{color:#665e55}
.trade-tool .field-label,.trade-tool legend{color:#29241f}
.trade-tool .field-hint,.trade-tool .tool-note{color:#74695d}
.select-shell select{background:#fffdfa;border-color:#cec5b8;color:#171717}
.select-shell select option{background:#fffdfa;color:#171717}
.select-shell select:focus{background:#fff;border-color:var(--ember);outline-color:var(--ember)}
.select-shell>svg{stroke:#756b60}
.service-choice{background:#fffdfa;border-color:#d4cabe;color:#4c433a}
.service-choice:hover{background:#eae3d9;border-color:#aa9b8b}
.service-choice:has(input:checked){background:#f7e1e0;border-color:#c0252a;color:#8e1b20}
.service-choice:has(input:focus-visible){outline-color:#c0252a}
.service-choice .choice-mark{color:#817567}
.service-choice:has(input:checked) .choice-mark{color:#a31c22}
.forecast{background:var(--paper);color:var(--ink);border:1px solid #d8cfc2;border-radius:12px}
.forecast .tool-tag{color:#a31c22}.forecast-numbers{border-color:#d2c7b8}
.forecast-numbers span,.forecast-numbers small,.forecast-fine,.assumptions,.tailored-copy p{color:#675b4e}
.forecast-numbers strong,.tailored-copy strong,.assumptions summary{color:#171717}
.estimate-pill{color:#655a4e;border-color:#c8bbab}
.forecast .button:hover{color:#171717}
@media(min-width:1101px){.hero-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:4vw}.hero h1{font-size:clamp(4rem,7.3vw,8.2rem)}.trade-tool{padding:2rem}.trade-tool h2{font-size:clamp(2.1rem,3.2vw,3.5rem)}}
@media(max-width:900px){.hero-stage{padding-top:8rem}.hero-media::after{background:linear-gradient(90deg,#0009,#0003),linear-gradient(0deg,#0b0b0b 0%,transparent 30%)}.trade-tool{border-radius:14px}}
@media(max-width:768px){.hero{padding:0}.hero-stage{padding-bottom:2rem}.forecast-numbers>div+div{border-color:#d2c7b8}}
@media(max-width:480px){.hero{padding:0}.hero-stage{padding-top:7.5rem}.hero:has(.hero-stage)>.forecast{margin:1.5rem var(--pad) 3rem}.trade-tool{padding:1.3rem}}

/* Transparent header with individual, high-contrast navigation buttons. */
.site-header,.site-header.scrolled{background:transparent;border-bottom:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;padding-block:.65rem}
.nav{gap:.55rem}
.nav a{min-height:44px;padding:.7rem 1rem;border:1px solid #ffffff85;border-radius:9px;background:#fffdf8ed;color:#29241f;font-size:.75rem;font-weight:800;letter-spacing:.065em;box-shadow:0 2px 10px #0000000d;transition:background .18s,border-color .18s,color .18s}
.nav a:not(.nav-cta)::after{display:none}
.nav a:hover{background:#fff;border-color:#fff;color:#a31c22;transform:none}
.nav a[aria-current="page"]{background:#f8e4e2;color:#a31c22;border-color:#e8afad}
.nav .nav-cta,.nav .nav-cta[aria-current="page"]{background:#c0252a;color:white;border-color:#c0252a;padding-inline:1.25rem}
.nav .nav-cta:hover{background:#a51e23;border-color:#a51e23;color:white}
.menu-button{background:#fffdf8ed;color:#29241f;border:1px solid #ffffff85;border-radius:9px;line-height:1}
@media(max-width:900px){.nav{background:#f1ede5;gap:.8rem}.nav a{width:min(100%,22rem);justify-content:center;min-height:50px;background:#fffdfa;border-color:#d6cbbd}.site-header,.site-header.scrolled{background:transparent;backdrop-filter:none}.menu-button{position:relative;z-index:2}}
.site-header{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}
.site-header.header-hidden{opacity:0;transform:translateY(-12px);pointer-events:none}
.site-header:has(:focus-visible),.site-header:has(.nav.open){opacity:1;transform:translateY(0);pointer-events:auto}
@media(prefers-reduced-motion:reduce){.site-header{transition:none;transform:none}.site-header.header-hidden{transform:none}}
/* Contact dropdowns and optional booking calendar. */
.enquiry-form select,.service-dropdown summary{width:100%;min-height:54px;box-sizing:border-box;border:1px solid #ffffff29;border-radius:8px;background:#ffffff04;color:#eee9e2;padding: .9rem 2.5rem .9rem 1rem;font:inherit;font-size:16px;margin-top:.5rem;cursor:pointer}
.enquiry-form select{display:block;color-scheme:dark}.enquiry-form select option{background:#202020;color:#fff}.service-field{min-width:0;font-size:.8rem;color:#e4ded7}.service-dropdown{position:relative}.service-dropdown summary{display:flex;align-items:center;list-style:none;position:relative}.service-dropdown summary::-webkit-details-marker{display:none}.service-dropdown summary::after{content:'';position:absolute;right:1.1rem;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);top:20px}.service-dropdown[open] summary::after{transform:rotate(225deg);top:24px}.service-dropdown summary:focus-visible,.enquiry-form select:focus-visible{outline:2px solid #e26569;outline-offset:3px}.service-options{position:absolute;z-index:20;top:calc(100% + 8px);left:0;right:0;background:#242321;border:1px solid #ffffff30;border-radius:12px;padding:.4rem;max-height:320px;overflow:auto;box-shadow:0 14px 40px #0005}.service-options label{display:flex;align-items:center;gap:.7rem;min-height:46px;padding:.45rem .65rem;border-radius:7px;cursor:pointer}.service-options label:hover{background:#ffffff0d}.enquiry-form .service-options input{width:18px;min-height:18px;height:18px;margin:0;flex:0 0 18px;accent-color:#c0252a}.enquiry-form .service-options span{font-size:.86rem;color:#eee9e2}.booking-section{background:#f4f0e9;color:#211f1c;scroll-margin-top:2rem}.booking-intro{max-width:760px;margin:0 auto 2rem}.booking-intro h2{font-size:clamp(2.4rem,5vw,4.8rem)}.booking-intro p{line-height:1.7}.booking-intro a{display:inline-flex;align-items:center;min-height:44px;color:#ad2229;text-decoration:underline;text-underline-offset:4px}.booking-calendar{display:block;width:100%;max-width:1100px;height:850px;margin:auto;border:0;border-radius:16px;background:white}.booking-intro h2:focus{outline:none}.enquiry-form select:disabled{opacity:.6}@media(max-width:768px){.booking-calendar{height:1000px}.service-options{max-height:280px}}@media(max-width:480px){.booking-calendar{height:1050px;border-radius:8px}.booking-section{padding-left:1rem;padding-right:1rem}}
