:root {
  --ink:#171515;
  --taupe:#927D80;
  --soft-taupe:#DCD1D0;
  --warm-white:#FBFAF9;
  --paper:#fffefc;
  --purple:#5F0B97;
  --magenta:#C30255;
  --orange:#EA6801;
  --gold:#F2AD03;
  --green:#3D9823;
  --blue:#0150AE;
  --indigo:#392993;
  --teal:#007C93;
  --radius:28px;
  --shadow:0 20px 60px rgba(23,21,21,.08);
  --shell:min(1260px, calc(100% - 44px));
  --hand:'Architects Daughter','Segoe Print','Bradley Hand',cursive;
  --sans:'Inter','Aptos','Arial',sans-serif;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{margin:0;font-family:var(--hand);color:var(--ink);background:var(--warm-white);line-height:1.6;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea{font:inherit}
::selection{background:#f4cf33;color:#171515}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.shell{width:var(--shell);margin-inline:auto}
.handwriting{font-family:var(--hand)}
.paper-grid{background-color:var(--paper);background-image:linear-gradient(rgba(146,125,128,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(146,125,128,.045) 1px,transparent 1px);background-size:28px 28px}

.scroll-progress{position:fixed;top:0;left:0;right:0;height:4px;background:transparent;z-index:1000}
.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--purple),var(--magenta),var(--orange),var(--gold),var(--green),var(--blue));transition:width .05s linear}

.site-header{position:fixed;top:4px;left:0;right:0;z-index:900;transition:.25s ease}
.site-header.scrolled{background:rgba(251,250,249,.9);backdrop-filter:blur(14px);border-bottom:1px solid rgba(146,125,128,.15)}
.nav-wrap{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand-mark{display:flex;align-items:center;gap:11px;min-width:190px}
.brand-mark img{width:54px;height:54px;object-fit:contain}
.brand-mark-copy{display:flex;flex-direction:column;line-height:1.05}
.brand-mark-copy strong{font-size:18px;letter-spacing:.02em;font-family:var(--hand)}
.brand-mark-copy small{font-family:var(--hand);font-size:15px;color:#74696b;margin-top:5px}
.main-nav{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:400;font-family:var(--hand)}
.main-nav>a:not(.nav-cta){position:relative;padding:8px 0}
.main-nav>a:not(.nav-cta)::after{display:none}
.main-nav>a:hover,.main-nav>a.active{color:var(--magenta)}
.nav-cta{padding:11px 17px;border:1.5px solid var(--ink);border-radius:999px;box-shadow:3px 3px 0 var(--gold);transition:.2s ease;font-family:var(--hand)}
.nav-cta:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0 var(--gold)}
.nav-toggle{display:none;width:45px;height:45px;border:1px solid rgba(23,21,21,.15);background:#fff;border-radius:14px;align-items:center;justify-content:center;flex-direction:column;gap:5px}
.nav-toggle span:not(.sr-only){width:20px;height:2px;background:var(--ink);display:block;border-radius:2px}

.hero{position:relative;min-height:100vh;padding:142px 0 78px;display:grid;align-items:center;overflow:hidden}
.hero::after{content:"";position:absolute;left:-15%;bottom:-33%;width:70%;height:52%;border:1px solid rgba(146,125,128,.18);border-radius:50%;transform:rotate(-8deg);box-shadow:0 -24px 0 -23px rgba(146,125,128,.22),0 -48px 0 -47px rgba(146,125,128,.18),0 -72px 0 -71px rgba(146,125,128,.16),0 -96px 0 -95px rgba(146,125,128,.13),0 -120px 0 -119px rgba(146,125,128,.1)}
.hero-waves{position:absolute;inset:auto -10% 7% 45%;height:42%;border:1px solid rgba(146,125,128,.12);border-radius:50%;transform:rotate(-12deg);box-shadow:0 17px 0 -16px rgba(146,125,128,.18),0 34px 0 -33px rgba(146,125,128,.18),0 51px 0 -50px rgba(146,125,128,.16),0 68px 0 -67px rgba(146,125,128,.14),0 85px 0 -84px rgba(146,125,128,.12),0 102px 0 -101px rgba(146,125,128,.1)}
.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:.95fr 1.05fr;align-items:center;gap:52px}
.eyebrow{display:inline-block;margin:0 0 18px;font-size:18px;color:#76696c;letter-spacing:.02em;transform:rotate(-1.2deg)}
.hero h1,.section-heading h2{margin:0;letter-spacing:0;line-height:1.08;font-family:var(--hand);font-weight:400}
.hero h1{font-size:clamp(48px,6.5vw,88px);max-width:780px}
.hero h1 span{position:relative;display:inline-block}
.hero h1 span::after{content:"";position:absolute;left:-1%;right:-1%;bottom:-6px;height:13px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 300 16'%3E%3Cpath d='M4 10 C55 2 103 14 153 8 S253 4 296 10' fill='none' stroke='%23EA6801' stroke-width='5' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat;z-index:-1;opacity:.85}
.hero-lead{font-size:20px;max-width:720px;color:#4e4849;margin:30px 0 30px}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 21px;border-radius:999px;font-weight:400;font-size:17px;border:1.5px solid var(--ink);cursor:pointer;transition:.2s ease;font-family:var(--hand)}
.btn-dark{background:var(--ink);color:#fff;box-shadow:4px 4px 0 var(--magenta)}
.btn-dark:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--magenta)}
.btn-sketch{background:#fff;box-shadow:4px 4px 0 var(--teal)}
.btn-sketch:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--teal)}
.hero-notes{display:flex;flex-wrap:wrap;gap:11px;margin-top:34px}
.hero-notes span{font-family:var(--hand);font-size:16px;padding:8px 12px;background:#fff;border:1px solid rgba(146,125,128,.23);border-radius:10px;box-shadow:2px 3px 0 rgba(146,125,128,.15)}
.hero-notes span:nth-child(1){transform:rotate(-1.5deg)}.hero-notes span:nth-child(2){transform:rotate(1deg)}.hero-notes span:nth-child(3){transform:rotate(-.6deg)}
.hero-art{position:relative;min-height:720px;display:grid;place-items:center;overflow:visible}
.logo-card{width:min(760px,100%);aspect-ratio:16 / 9;background:#fff;border:1px solid rgba(146,125,128,.2);border-radius:30px;box-shadow:var(--shadow);display:grid;place-items:center;transform:rotate(1deg);overflow:hidden;position:relative;padding:18px}
.logo-card::before{content:"";position:absolute;inset:14px;border:2px dashed rgba(146,125,128,.24);border-radius:22px}
.logo-card img{width:100%;height:100%;object-fit:contain;position:relative;z-index:2}
.sketch-label{position:absolute;top:8px;right:22px;font-size:24px;transform:rotate(5deg)}
.annotation{position:absolute;padding:9px 14px;background:#fff;border:1px solid rgba(23,21,21,.14);border-radius:10px;box-shadow:2px 3px 0 rgba(23,21,21,.08);font-size:17px;line-height:1.25;z-index:3;max-width:230px}
.annotation-one{left:-26px;top:150px;transform:rotate(-8deg)}
.annotation-two{right:-42px;top:176px;transform:rotate(7deg)}
.annotation-three{left:-10px;bottom:72px;transform:rotate(4deg)}
.annotation-four{right:-18px;bottom:34px;transform:rotate(-7deg)}
.hero-hex{position:absolute;width:150px;height:130px;background:rgba(220,209,208,.25);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.hero-hex-a{right:3%;top:13%;transform:rotate(10deg)}
.hero-hex-b{left:2%;bottom:13%;width:95px;height:82px;background:rgba(95,11,151,.055);transform:rotate(-11deg)}
.spectrum-strip{position:absolute;left:0;right:0;bottom:0;height:10px;display:grid;grid-template-columns:repeat(8,1fr);overflow:hidden}
.spectrum-strip span:nth-child(1){background:var(--purple)}.spectrum-strip span:nth-child(2){background:var(--magenta)}.spectrum-strip span:nth-child(3){background:var(--orange)}.spectrum-strip span:nth-child(4){background:var(--gold)}.spectrum-strip span:nth-child(5){background:var(--green)}.spectrum-strip span:nth-child(6){background:var(--blue)}.spectrum-strip span:nth-child(7){background:var(--indigo)}.spectrum-strip span:nth-child(8){background:var(--teal)}

.section{padding:112px 0;position:relative}
.section-heading{max-width:760px}
.section-heading h2{font-size:clamp(38px,5vw,62px)}
.section-heading>p:last-child{font-size:18px;color:#5d5557;max-width:720px}
.about{background:#fff}
.about-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:60px}
.principle-card{padding:30px;border:1px solid rgba(146,125,128,.22);border-radius:22px;background:var(--warm-white);min-height:260px;position:relative;overflow:hidden}
.principle-card::after{content:"";position:absolute;right:-40px;bottom:-65px;width:145px;height:145px;border:2px dashed rgba(146,125,128,.13);border-radius:50%}
.principle-card:nth-child(1){border-top:7px solid var(--purple)}
.principle-card:nth-child(2){border-top:7px solid var(--orange)}
.principle-card:nth-child(3){border-top:7px solid var(--green)}
.principle-card h3{font-size:26px;margin:18px 0 8px;font-family:var(--hand);font-weight:400}.principle-card p{margin:0;color:#5c5557;font-size:17px}
.scribble-no{font-family:var(--hand);font-size:23px}
.dark-card{background:var(--ink);color:#fff}.dark-card p{color:#ddd3d4}.dark-card::after{border-color:rgba(255,255,255,.12)}
.positioning-note{margin-top:28px;background:#f3efee;border-radius:24px;padding:28px 32px;position:relative;min-height:125px;display:flex;flex-direction:column;justify-content:center}
.positioning-note>span{position:absolute;left:32px;top:27px;font-size:18px;color:var(--magenta);transform:rotate(-5deg)}
.positioning-note>span::after{content:"↘";font-size:30px;display:inline-block;margin-left:7px}
.positioning-note strong{font-size:28px;display:block;margin-bottom:6px;font-family:var(--hand);font-weight:400}.positioning-note p{margin:0;color:#625a5c;font-size:17px}

.services{background-color:#fbfaf9;overflow:hidden;padding-top:88px;padding-bottom:88px}
.services::before{content:"";position:absolute;right:-130px;top:230px;width:360px;height:315px;background:linear-gradient(145deg,rgba(220,209,208,.18),rgba(146,125,128,.04));clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.service-heading{position:relative;max-width:860px}.hand-arrow{position:absolute;right:-170px;bottom:6px;font-size:19px;transform:rotate(0deg);white-space:nowrap;color:#6c6264}
.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}
.service-card{--accent:#000;--tilt:0deg;background:#fff;border:1px solid rgba(146,125,128,.2);border-radius:22px;padding:18px 16px 16px;min-height:320px;position:relative;box-shadow:0 10px 30px rgba(23,21,21,.04);transform:rotate(var(--tilt));transition:.24s ease}
.service-card::before{content:"";position:absolute;left:0;right:0;top:0;height:6px;background:var(--accent);border-radius:22px 22px 0 0}
.service-card:hover{transform:rotate(0deg) translateY(-8px);box-shadow:0 22px 50px rgba(23,21,21,.1)}
.service-number{position:absolute;top:14px;right:14px;font-family:var(--hand);font-size:17px;color:var(--accent)}
.service-icon{width:48px;height:44px;background:var(--accent);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%);display:grid;place-items:center;margin:8px 0 14px}
.service-icon svg{width:24px;height:24px;stroke:#fff;fill:none;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.service-card h3{font-size:20px;line-height:1.1;margin:0 0 8px;font-family:var(--hand);font-weight:400}.service-card>p{font-size:13px;line-height:1.4;color:#625a5c;min-height:48px;margin:0 0 8px}
.service-card ul{margin:10px 0 0;padding:0;list-style:none;display:grid;gap:4px;font-size:12px;line-height:1.35;color:#4f484a}
.service-card li{position:relative;padding-left:14px}.service-card li::before{content:"";position:absolute;left:0;top:.58em;width:5px;height:5px;border-radius:50%;background:var(--accent)}
.advisory-page{min-height:100vh;padding:86px 0;display:grid;align-items:center;position:relative}.advisory-page-shell{min-height:calc(100vh - 172px);display:grid;align-items:center}.advisory-block{margin-top:0;background:var(--ink);color:#fff;border-radius:34px;padding:64px;display:grid;grid-template-columns:.82fr 1.18fr;gap:64px;position:relative;overflow:hidden;min-height:calc(100vh - 172px);align-items:center}
.advisory-block::after{content:"";position:absolute;right:-70px;top:-80px;width:260px;height:230px;border:2px dashed rgba(255,255,255,.12);clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.advisory-intro h3{font-size:clamp(42px,4.5vw,64px);line-height:1.08;margin:14px 0 24px;font-family:var(--hand);font-weight:400;max-width:560px}.advisory-intro p{color:#d6cecf;font-size:18px;max-width:560px}.advisory-intro .eyebrow{color:#f6c4d5}
.advisory-list{display:grid;gap:2px;position:relative;z-index:2}
.advisory-list article{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.13)}.advisory-list article:last-child{border-bottom:0}
.advisory-list span{font-family:var(--hand);font-size:23px;color:#f4c141}.advisory-list h4{font-size:24px;margin:0 0 6px;font-family:var(--hand);font-weight:400}.advisory-list p{font-size:16px;line-height:1.5;color:#c8bfc1;margin:0}

.approach{background:#fff}
.approach-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}
.approach-quote{font-size:19px;color:var(--teal);margin-top:72px;transform:rotate(0deg)}
.steps{list-style:none;margin:0;padding:0;display:grid;gap:10px;position:relative}
.steps::before{content:"";position:absolute;left:34px;top:38px;bottom:38px;border-left:2px dashed rgba(146,125,128,.35)}
.steps li{display:grid;grid-template-columns:70px 1fr;gap:18px;align-items:center;padding:18px 20px;border:1px solid rgba(146,125,128,.17);border-radius:20px;background:#fff;position:relative}
.steps li>span{width:48px;height:48px;display:grid;place-items:center;background:#f6f1f1;border-radius:50%;font-family:var(--hand);font-size:18px;z-index:2}
.steps li:nth-child(1)>span{background:#efe3f6;color:var(--purple)}.steps li:nth-child(2)>span{background:#fde7ef;color:var(--magenta)}.steps li:nth-child(3)>span{background:#ffeadb;color:var(--orange)}.steps li:nth-child(4)>span{background:#fff0bc;color:#a77000}.steps li:nth-child(5)>span{background:#e2f1dc;color:var(--green)}
.steps h3{margin:0 0 3px;font-size:23px;font-family:var(--hand);font-weight:400}.steps p{margin:0;color:#625a5c;font-size:16px}

.why{overflow:hidden}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:54px}
.why-card{background:#fff;border:1px solid rgba(146,125,128,.19);border-radius:22px;padding:26px;min-height:220px;box-shadow:0 8px 24px rgba(23,21,21,.03)}
.why-card>span{font-family:var(--hand);font-size:35px;line-height:1}.why-card:nth-child(1)>span{color:var(--purple)}.why-card:nth-child(2)>span{color:var(--magenta)}.why-card:nth-child(3)>span{color:var(--orange)}.why-card:nth-child(4)>span{color:var(--gold)}.why-card:nth-child(5)>span{color:var(--green)}.why-card:nth-child(6)>span{color:var(--blue)}
.why-card h3{font-size:22px;margin:14px 0 8px;font-family:var(--hand);font-weight:400}.why-card p{font-size:16px;color:#625a5c;margin:0}
.promise-banner{margin-top:26px;background:var(--ink);color:#fff;border-radius:24px;padding:27px 30px;display:flex;align-items:center;justify-content:space-between;gap:32px;box-shadow:6px 6px 0 var(--gold)}
.promise-banner span{font-size:19px;color:#e5d8db}.promise-banner strong{font-size:28px;text-align:right;font-family:var(--hand);font-weight:400}

.contact{background:#fff;padding-bottom:150px;position:relative}
.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}
.contact-copy h2{font-size:clamp(40px,5vw,62px);line-height:1.08;letter-spacing:0;margin:0 0 25px;font-family:var(--hand);font-weight:400}.contact-copy>p:not(.eyebrow){font-size:18px;color:#5d5557;max-width:580px}
.contact-details{display:grid;gap:12px;margin-top:38px}.contact-details>a,.contact-details>div{display:flex;align-items:center;gap:15px;padding:14px 0;border-bottom:1px solid rgba(146,125,128,.18)}
.contact-details span{width:44px;height:44px;border-radius:50%;background:#f0ebea;display:grid;place-items:center;font-family:var(--hand);font-size:21px}.contact-details small{display:block;color:var(--taupe);font-size:13px;font-weight:400;text-transform:none;letter-spacing:0;font-family:var(--hand)}.contact-details strong{font-size:18px;font-family:var(--hand);font-weight:400}.contact-note{margin-top:32px;font-size:18px;color:var(--magenta);transform:rotate(0deg)}
.contact-form{background:var(--warm-white);padding:36px;border:1px solid rgba(146,125,128,.2);border-radius:28px;box-shadow:var(--shadow);position:relative}.contact-form::after{content:"";position:absolute;right:-14px;bottom:-16px;width:105px;height:90px;border:3px solid var(--green);opacity:.17;clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}
.form-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.form-head span{font-size:17px;color:var(--teal);transform:rotate(5deg)}.form-head h3{font-size:32px;margin:0;font-family:var(--hand);font-weight:400}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-form label{display:grid;gap:8px;font-size:16px;font-weight:400;letter-spacing:0;margin-bottom:17px;font-family:var(--hand)}
.contact-company{position:absolute;right:22px;bottom:20px;width:auto;margin:0;text-align:right;font-family:var(--hand);line-height:1.35;color:var(--ink)}.contact-company strong{display:block;font-size:18px;font-weight:400;letter-spacing:.02em}.contact-company span{display:block;font-size:16px;color:#625a5c;margin-top:3px}
.contact-form input,.contact-form textarea{width:100%;border:1.5px solid #d6cdcc;background:#fff;border-radius:14px;padding:14px 15px;color:var(--ink);outline:none;transition:.2s ease;resize:vertical}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--ink);box-shadow:0 0 0 4px rgba(23,21,21,.05)}.contact-form .invalid{border-color:#c30255;box-shadow:0 0 0 4px rgba(195,2,85,.08)}
.form-submit{border:none;margin-top:4px}.form-status{min-height:23px;margin:12px 0 0;font-size:13px;color:#5d5557}

.site-footer{background:var(--ink);color:#fff;position:relative;padding:44px 0 40px}.site-footer .spectrum-strip{top:0;bottom:auto}.footer-grid{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:28px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:48px;height:48px;object-fit:contain}.footer-brand div{display:flex;flex-direction:column;line-height:1.1}.footer-brand small{font-family:var(--hand);color:#bdb3b5;margin-top:5px}.footer-grid p{margin:0;color:#c9c0c1;font-size:15px;font-family:var(--hand)}.footer-grid span{color:#756b6d;margin:0 6px}.footer-grid a:hover{color:#fff}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:translateY(0)}

@media (max-width:1080px){
  .hero-layout{gap:35px}.hero-art{min-height:620px}.logo-card{width:min(720px,100%)}.annotation-one{left:-8px}.annotation-two{right:-12px}.annotation-three{left:0}.annotation-four{right:-4px}.service-grid{grid-template-columns:repeat(2,1fr);gap:14px}.service-card{min-height:300px}.hand-arrow{right:0;bottom:-45px}.advisory-page{min-height:auto;padding:72px 0}.advisory-page-shell{min-height:auto}.advisory-block{grid-template-columns:1fr;gap:28px;min-height:auto;padding:46px 36px}.approach-layout{grid-template-columns:1fr;gap:50px}.why-grid{grid-template-columns:repeat(2,1fr)}.contact-layout{gap:45px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid p:last-child{text-align:right}
}
@media (max-width:800px){
  :root{--shell:min(100% - 28px,1180px)}
  .site-header{top:4px}.nav-wrap{min-height:72px}.brand-mark img{width:44px;height:44px}.brand-mark-copy strong{font-size:16px}.brand-mark-copy small{font-size:13px}
  .nav-toggle{display:flex;position:relative;z-index:12}.main-nav{position:fixed;inset:4px 0 auto 0;background:rgba(251,250,249,.98);backdrop-filter:blur(18px);padding:96px 24px 30px;display:grid;gap:2px;transform:translateY(-115%);transition:.28s ease;box-shadow:0 20px 50px rgba(23,21,21,.12)}.main-nav.open{transform:translateY(0)}.main-nav a{padding:13px 0;font-size:17px}.main-nav .nav-cta{margin-top:8px;text-align:center}
  .hero{padding-top:110px;min-height:auto}.hero-layout{grid-template-columns:1fr}.hero-art{min-height:620px}.logo-card{width:min(100%,760px)}.hero h1{font-size:clamp(50px,13vw,82px)}.annotation-one{left:2%;top:130px}.annotation-two{right:2%;top:165px}
  .section{padding:88px 0}.about-grid{grid-template-columns:1fr}.principle-card{min-height:auto}.positioning-note{padding:26px}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto;transform:none}.hand-arrow{display:none}.why-grid{grid-template-columns:1fr}.promise-banner{align-items:flex-start;flex-direction:column}.promise-banner strong{text-align:left}.contact-layout{grid-template-columns:1fr}.contact-company{right:16px;bottom:16px}.footer-grid{grid-template-columns:1fr}.footer-grid p:last-child{text-align:left}.footer-grid{gap:14px}
}
@media (max-width:560px){
  .hero-art{min-height:520px}.logo-card{padding:12px}.sketch-label{top:0;right:8px}.annotation{font-size:13px;max-width:170px;padding:7px 10px}.annotation-one{left:0;top:108px}.annotation-two{right:0;top:138px}.annotation-three{left:0;bottom:64px}.annotation-four{right:0;bottom:36px}.hero-notes{display:grid}.section-heading h2{font-size:42px}.advisory-page{padding:56px 0}.advisory-block{padding:32px 24px}.advisory-intro h3{font-size:36px}.advisory-list article{grid-template-columns:42px 1fr}.form-row{grid-template-columns:1fr}.contact-form{padding:26px 20px}.form-head{align-items:flex-end}.steps li{grid-template-columns:58px 1fr;padding:16px 12px}.steps::before{left:28px}.site-footer{padding-bottom:34px}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.service-card,.btn,.site-header,.main-nav{transition:none}}

.diagram-card{border-radius:26px;background:#f7f4f4;}


/* Legal footer links and modal policies */
.legal-links{margin-top:24px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);display:flex;align-items:center;justify-content:flex-end;gap:10px;color:#a99fa1;font-size:14px;flex-wrap:wrap}
.legal-links button{appearance:none;border:0;background:transparent;color:#c9c0c1;padding:2px 0;font:inherit;cursor:pointer;transition:color .18s ease}
.legal-links button:hover,.legal-links button:focus-visible{color:#fff;outline:none}
.legal-links>span{color:#665d5f;margin:0 2px}
.legal-dialog{width:min(780px,calc(100% - 28px));max-height:min(84vh,900px);padding:0;border:0;border-radius:26px;background:var(--warm-white);color:var(--ink);box-shadow:0 30px 90px rgba(0,0,0,.28);font-family:var(--hand);overflow:auto}
.legal-dialog::backdrop{background:rgba(23,21,21,.64);backdrop-filter:blur(4px)}
.legal-dialog-inner{position:relative;padding:42px 46px 44px}
.legal-dialog .legal-close{position:sticky;float:right;top:14px;margin:-20px -22px 0 14px;width:42px;height:42px;border:1px solid rgba(23,21,21,.14);border-radius:50%;background:#fff;color:var(--ink);font-family:var(--hand);font-size:28px;line-height:1;cursor:pointer;display:grid;place-items:center;z-index:2}
.legal-dialog .legal-close:hover{background:#f2eceb}
.legal-dialog .eyebrow{margin-bottom:8px;color:var(--magenta);transform:none}
.legal-dialog h2{font-family:var(--hand);font-size:42px;font-weight:400;line-height:1.1;margin:0 0 24px}
.legal-dialog h3{font-family:var(--hand);font-size:23px;font-weight:400;line-height:1.2;margin:28px 0 8px}
.legal-dialog p{font-family:var(--hand);font-size:16px;line-height:1.65;color:#514a4c;margin:0 0 16px}
.legal-dialog a{color:var(--blue);text-decoration:underline;text-underline-offset:3px}
body.legal-open{overflow:hidden}

@media (max-width:800px){
  .legal-links{justify-content:flex-start;margin-top:20px;padding-top:18px}
}
@media (max-width:560px){
  .legal-links{gap:7px;font-size:13px}
  .legal-dialog-inner{padding:34px 24px 32px}
  .legal-dialog .legal-close{margin:-14px -8px 0 10px}
  .legal-dialog h2{font-size:34px}
  .legal-dialog p{font-size:15px}
}
