@font-face{font-family:Cormorant;src:url('assets/fonts/cormorant-400.woff2') format('woff2');font-style:normal;font-weight:400;font-display:block}
@font-face{font-family:Inter;src:url('assets/fonts/inter-400.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:block}
/* Match local fallback metrics while the unchanged webfonts load. */
@font-face{font-family:"Cormorant fallback";src:local("Times New Roman");size-adjust:96.07%;ascent-override:95.76%;descent-override:30.19%;line-gap-override:0%}
@font-face{font-family:"Inter fallback";src:local("Arial");size-adjust:106.86%;ascent-override:90.78%;descent-override:22.46%;line-gap-override:0%}
:root{color-scheme:dark;--navy:#091725;--surface:#0c1d2c;--white:#f5f7fb;--muted:#c8d3df;--line:#263847;--blue:#2494ff;--serif:Cormorant,"Cormorant fallback","Times New Roman",Times,serif;--sans:Inter,"Inter fallback",Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--navy);color:var(--white);font-family:var(--sans);container-type:inline-size}a{color:inherit;text-decoration:none}button{font-family:var(--sans);color:inherit}button,a{-webkit-tap-highlight-color:#309dff42}button{cursor:pointer}img{display:block;max-width:100%}h1,h2,h3,p,ul,ol,figure,blockquote{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400}ul,ol{list-style:none;padding:0}button[hidden],[hidden]{display:none!important}.icon-definitions{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip-link{position:fixed;top:8px;left:8px;z-index:20;background:var(--white);color:var(--navy);padding:12px;transform:translateY(-150%)}.skip-link:focus{transform:none}a:focus-visible,button:focus-visible{outline:2px solid #a0deff;outline-offset:4px}
.study{--u:min(calc(100cqw / 1122),1.5px);position:relative;max-width:1683px;margin-inline:auto;font-size:calc(12 * var(--u));line-height:1.45}.icon{width:calc(24 * var(--u));height:calc(24 * var(--u));flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.2;stroke-linecap:round;stroke-linejoin:round}.eyebrow{font-family:var(--sans);font-size:calc(7.5 * var(--u));line-height:1.3;letter-spacing:calc(2.55 * var(--u));font-weight:400;color:#d0dded}.button{display:inline-flex;align-items:center;justify-content:center;gap:calc(9 * var(--u));border:1px solid transparent;border-radius:999px;height:calc(40 * var(--u));padding:0 calc(23 * var(--u));font-family:var(--sans);font-size:calc(11 * var(--u));font-weight:500;line-height:1;white-space:nowrap;transition:box-shadow .18s ease,filter .18s ease,transform .12s ease,border-color .18s ease}.button .icon{width:calc(16 * var(--u));height:calc(16 * var(--u));stroke-width:1.3}.primary{background:linear-gradient(180deg,#43b0ff 0%,#126fc5 25%,#0964be 75%,#1176f4 100%);color:#f6fbff;border-color:#83cdff75;box-shadow:inset 0 1px 3px #b3e4ff48,0 0 calc(13 * var(--u)) #0570ff8a,0 calc(6 * var(--u)) calc(20 * var(--u)) #0066ef3d}.outline{border-color:#83b8fb;color:#e9f1fb;background:#0815214d;box-shadow:0 0 calc(8 * var(--u)) #176ed021,inset 0 0 calc(4 * var(--u)) #24599210}.button:active{transform:scale(.98)}.button:focus-visible{box-shadow:0 0 20px #228eff80;outline-offset:3px}
.header{position:absolute;z-index:4;inset:0 0 auto;display:flex;align-items:center;height:calc(49 * var(--u));padding:0 calc(51 * var(--u)) 0 calc(52 * var(--u));gap:calc(53 * var(--u))}.brand{flex:none;width:calc(180 * var(--u))}.brand img{width:100%;height:auto}.navigation{display:flex;align-items:center;gap:calc(27 * var(--u));white-space:nowrap;font-size:calc(10 * var(--u));height:100%}.navigation a{position:relative;display:inline-flex;align-items:center;height:100%;color:#dbe4f5}.navigation .active:after{content:"";position:absolute;bottom:calc(14 * var(--u));left:calc(-4 * var(--u));right:calc(-4 * var(--u));height:1px;background:#8bc2ff;box-shadow:0 0 6px #70abff4d}.header-actions{margin-left:auto;display:flex;align-items:center;gap:calc(28 * var(--u));white-space:nowrap}.sign-in{font-size:calc(10 * var(--u))}.header-pickup{height:calc(32 * var(--u));min-width:calc(139 * var(--u));font-size:calc(10 * var(--u));color:#071426;font-weight:600;padding-inline:calc(17 * var(--u))}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:9px 12px;border-radius:7px;align-items:center;gap:8px;font-size:13px}
.hero{position:relative;isolation:isolate;height:calc(384 * var(--u));overflow:hidden;background:#081623}.hero-image{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover}.hero-copy{position:absolute;left:calc(53 * var(--u));top:calc(77 * var(--u));z-index:1}.hero h1{font-size:calc(48 * var(--u));line-height:1;letter-spacing:calc(-1.25 * var(--u));margin-top:calc(8 * var(--u));white-space:nowrap}.hero h1 span{color:#69aefb}.hero-description{font-size:calc(12 * var(--u));line-height:calc(18 * var(--u));color:#cdd8e5;margin-top:calc(13 * var(--u))}.hero-actions{display:flex;gap:calc(14 * var(--u));margin-top:calc(18 * var(--u))}.hero-actions .primary{width:calc(163 * var(--u));font-weight:600;padding-inline:calc(15 * var(--u))}.hero-actions .outline{width:calc(125 * var(--u));padding-inline:calc(16 * var(--u))}.hero-slogan{position:absolute;right:calc(51 * var(--u));top:calc(76 * var(--u));font-size:calc(6.8 * var(--u));line-height:calc(14 * var(--u));letter-spacing:calc(1.8 * var(--u));text-align:center;color:#d1d8e4;width:calc(74 * var(--u));padding-bottom:calc(14 * var(--u));border-bottom:1px solid #d0daee5c}.flow-light{position:absolute;pointer-events:none;inset:0;width:100%;height:100%;fill:none;stroke:#56b5ff;stroke-width:.6;opacity:0}.flow-light path{stroke-dasharray:90 630}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);height:calc(133 * var(--u));border-top:1px solid #2b3b4a;border-bottom:1px solid #2b3b4a;background:linear-gradient(115deg,#0a1a27,#0b1b2a 60%,#081725)}.benefits article{position:relative;padding:calc(23 * var(--u)) calc(15 * var(--u)) 0 calc(57 * var(--u))}.benefits article:nth-child(2){padding-left:calc(47 * var(--u))}.benefits article:nth-child(3){padding-left:calc(44 * var(--u))}.benefits article:nth-child(4){padding-left:calc(51 * var(--u))}.benefits article:not(:last-child):after{content:"";position:absolute;right:calc(12 * var(--u));top:calc(27 * var(--u));height:calc(78 * var(--u));width:1px;background:#26374780}.benefit-icon{display:block;width:calc(30 * var(--u));height:calc(30 * var(--u));margin-bottom:calc(7 * var(--u));filter:drop-shadow(0 0 4px #7dbff75c)}.benefits h2{font-size:calc(16.5 * var(--u));line-height:calc(20 * var(--u));white-space:nowrap}.benefits p{font-size:calc(11.5 * var(--u));line-height:calc(16 * var(--u));color:var(--muted);margin-top:calc(3 * var(--u))}
.process{height:calc(231 * var(--u));padding:calc(17 * var(--u)) calc(52 * var(--u)) calc(19 * var(--u));background:radial-gradient(ellipse at 78% 4%,#10263d70,transparent 50%),#091725;border-bottom:1px solid #293a4a}.section-heading{height:calc(50 * var(--u));display:flex;align-items:flex-start;justify-content:space-between}.section-heading h2{font-size:calc(30 * var(--u));line-height:calc(33 * var(--u));margin-top:calc(2 * var(--u));letter-spacing:calc(-.7 * var(--u))}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(30 * var(--u));height:calc(144 * var(--u))}.process-card{position:relative;isolation:isolate;border:1px solid #2c3c4b;border-radius:calc(7 * var(--u));background:#102333;box-shadow:inset 0 0 0 2px #0c1d2c80}.process-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:inherit;z-index:-1}.schedule-card .process-photo{clip-path:inset(0 36% 0 0)}.raised-phone{position:absolute;right:calc(5 * var(--u));top:calc(-35 * var(--u));width:calc(110 * var(--u));height:calc(179 * var(--u));object-fit:fill;z-index:0;pointer-events:none}.process-copy{position:relative;z-index:1;padding:calc(11 * var(--u)) 0 0 calc(19 * var(--u))}.step-number{display:inline-flex;width:calc(30 * var(--u));height:calc(30 * var(--u));align-items:center;justify-content:center;border:1px solid #8bc7ff;border-radius:50%;font-family:var(--serif);font-size:calc(13 * var(--u));box-shadow:0 0 calc(10 * var(--u)) #1987ee3d;background:#06152466}.process-copy h3{font-size:calc(16.5 * var(--u));line-height:calc(21 * var(--u));margin-top:calc(6 * var(--u));letter-spacing:calc(-.2 * var(--u))}.process-copy p{color:#d0dae8;font-size:calc(11.5 * var(--u));line-height:calc(16 * var(--u));margin-top:calc(3 * var(--u))}
.pricing-app{height:calc(332 * var(--u));display:grid;grid-template-columns:667fr 455fr;background:#091725;border-bottom:1px solid #293b4e}.pricing{position:relative;padding:calc(16 * var(--u)) calc(16 * var(--u)) calc(14 * var(--u)) calc(48 * var(--u))}.pricing-heading{height:calc(56 * var(--u))}.pricing-heading h2{font-size:calc(29 * var(--u));line-height:calc(33 * var(--u));margin-top:calc(2 * var(--u));letter-spacing:calc(-.6 * var(--u))}.plan-grid{display:grid;grid-template-columns:191fr 200fr 191fr;gap:calc(11 * var(--u));height:calc(246 * var(--u))}.plan{position:relative;border:1px solid #2c3e4d;border-radius:calc(12 * var(--u));padding:calc(15 * var(--u)) calc(19 * var(--u));background:linear-gradient(135deg,#0d1c2a88,#07131f44);box-shadow:inset 0 0 0 2px #182b3b2b}.plan h3{font-size:calc(14.5 * var(--u));line-height:calc(19 * var(--u))}.plan-description{font-size:calc(10.5 * var(--u));line-height:calc(16 * var(--u));color:#d3dce8}.price{display:flex;gap:calc(5 * var(--u));align-items:baseline;margin-top:calc(5 * var(--u));margin-bottom:calc(11 * var(--u));line-height:1.1}.price>span{font-family:var(--serif);font-size:calc(32 * var(--u))}.price small{font-size:calc(10 * var(--u));color:#bfcbd9}.plan ul{display:grid;gap:calc(6 * var(--u));font-family:var(--serif);font-size:calc(10.7 * var(--u));line-height:calc(13 * var(--u));color:#cbd6e4}.plan li{display:flex;align-items:flex-start;gap:calc(7 * var(--u));white-space:nowrap}.plan li .icon{height:calc(12 * var(--u));width:calc(12 * var(--u));stroke-width:1.1}.plan-button{position:absolute;bottom:calc(13 * var(--u));left:calc(12 * var(--u));right:calc(12 * var(--u));height:calc(32 * var(--u));font-size:calc(10 * var(--u));padding:0;border-color:#60798c8c}
.app-panel{position:relative;isolation:isolate;overflow:hidden;background:#0a1827}.app-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.app-copy{position:relative;margin-left:calc(24 * var(--u));padding-top:calc(73 * var(--u))}.app-copy .eyebrow{font-size:calc(8 * var(--u))}.app-copy h2{font-size:calc(28 * var(--u));line-height:calc(30 * var(--u));letter-spacing:calc(-.35 * var(--u));margin-top:calc(8 * var(--u));margin-bottom:calc(11 * var(--u))}.app-copy>p:not(.eyebrow){font-size:calc(11 * var(--u));line-height:calc(16 * var(--u));color:#d0d9e5}.store-links{display:flex;flex-direction:column;gap:calc(7 * var(--u));margin-top:calc(13 * var(--u))}.store-badge{display:flex;align-items:center;gap:calc(5 * var(--u));height:calc(35 * var(--u));width:calc(108 * var(--u));padding:calc(3 * var(--u)) calc(6 * var(--u));border:1px solid #8da4bd;border-radius:calc(5 * var(--u));background:#020609;color:#fff;box-shadow:0 0 calc(4 * var(--u)) #3888d54a}.store-badge svg{flex-shrink:0;width:calc(20 * var(--u));height:calc(25 * var(--u))}.apple{fill:#fff;stroke:none}.store-badge span{display:block;line-height:1}.store-badge small{display:block;font-size:calc(6.5 * var(--u));line-height:calc(9 * var(--u));white-space:nowrap}.store-badge strong{display:block;font-size:calc(14 * var(--u));line-height:calc(17 * var(--u));letter-spacing:calc(-.4 * var(--u));font-weight:500;white-space:nowrap}.store-badge:last-child strong{font-size:calc(12 * var(--u));letter-spacing:calc(-.3 * var(--u))}
.community-reviews{height:calc(195 * var(--u));display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #2e4255}.community{position:relative;isolation:isolate;overflow:hidden;background:#0c2136}.city-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-1}.community-copy{position:relative;padding:calc(17 * var(--u)) 0 0 calc(54 * var(--u))}.community-copy .eyebrow{font-size:calc(7 * var(--u));letter-spacing:calc(2.1 * var(--u))}.community h2{font-size:calc(28 * var(--u));line-height:calc(28 * var(--u));letter-spacing:calc(-.35 * var(--u));margin-top:calc(4 * var(--u))}.community-copy>p:not(.eyebrow){font-size:calc(11 * var(--u));line-height:calc(16 * var(--u));margin-top:calc(9 * var(--u));color:#d0dae7}.area-button{height:calc(33 * var(--u));font-size:calc(9.5 * var(--u));margin-top:calc(15 * var(--u));padding-inline:calc(22 * var(--u));gap:calc(9 * var(--u));color:#9dccff;background:#0713216b}.area-button .icon{width:calc(14 * var(--u));height:calc(14 * var(--u))}.reviews{padding:calc(17 * var(--u)) calc(20 * var(--u)) 0 calc(25 * var(--u));background:linear-gradient(120deg,#0c1e2c,#0b1b29)}.reviews>.eyebrow{font-size:calc(7 * var(--u));letter-spacing:calc(2.1 * var(--u));margin-left:calc(9 * var(--u))}.reviews>h2{font-size:calc(22 * var(--u));line-height:calc(26 * var(--u));letter-spacing:calc(-.45 * var(--u));margin-top:calc(3 * var(--u));margin-left:calc(9 * var(--u));white-space:nowrap}.rating{display:flex;align-items:center;gap:calc(7 * var(--u));margin:calc(3 * var(--u)) 0 calc(8 * var(--u)) calc(9 * var(--u));font-size:calc(10.5 * var(--u));line-height:calc(16 * var(--u));color:#c4d1e1}.stars{display:flex;color:#ffdb76;gap:calc(1 * var(--u))}.stars .icon{width:calc(12 * var(--u));height:calc(12 * var(--u));fill:currentColor;stroke:none}.quote-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(8 * var(--u));height:calc(103 * var(--u))}.quote{position:relative;padding:calc(9 * var(--u)) calc(10 * var(--u));border:1px solid #2e4250;border-radius:calc(7 * var(--u));background:#0a172285;box-shadow:inset 0 0 0 2px #16364b1c}.quote blockquote{font-family:var(--serif);font-size:calc(10.5 * var(--u));line-height:calc(13 * var(--u));color:#d3dce8}.quote figcaption{position:absolute;bottom:calc(8 * var(--u));left:calc(10 * var(--u));display:flex;align-items:center;gap:calc(6 * var(--u));font-size:calc(9 * var(--u));line-height:calc(13 * var(--u));color:#d2dcea}.quote figcaption small{display:block;font-size:calc(8 * var(--u));color:#aebccd}.avatar{display:block;width:calc(28 * var(--u));height:calc(28 * var(--u));border-radius:50%;border:1px solid #c8d0d744;background-image:url('assets/portraits.jpg');background-size:300% 100%;background-repeat:no-repeat;flex:none}.sarah{background-position:left center}.james{background-position:center}.emily{background-position:right center}
.closing{position:relative;isolation:isolate;height:calc(127 * var(--u));overflow:hidden;background:#08172a}.fabric-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 69%;z-index:-1}.closing-copy{position:absolute;top:calc(16 * var(--u));left:50%;transform:translateX(-50%);text-align:center;white-space:nowrap}.closing h2{font-size:calc(23 * var(--u));line-height:calc(27 * var(--u));letter-spacing:calc(-.5 * var(--u))}.closing-copy p{font-size:calc(9 * var(--u));line-height:calc(14 * var(--u));margin-top:calc(2 * var(--u))}.closing-button{height:calc(33 * var(--u));font-size:calc(10 * var(--u));width:calc(177 * var(--u));padding:0;margin-top:calc(9 * var(--u))}.closing-light{stroke:#389aff;stroke-width:.8}
.motion-control{position:fixed;z-index:7;bottom:12px;left:12px;display:flex;align-items:center;gap:5px;border:1px solid #6b91b464;border-radius:999px;padding:7px 10px;background:#091725dc;color:#cfe1f6;font-size:10px;line-height:1.1;backdrop-filter:blur(8px)}.motion-control .icon{width:13px;height:13px;stroke-width:1.4}.study-dialog{width:min(460px,calc(100vw - 36px));padding:36px 28px 28px;border:1px solid #597fa7;border-radius:14px;background:#0c1d2c;color:var(--white);box-shadow:0 0 48px #075bbf55}.study-dialog::backdrop{background:#020914bd;backdrop-filter:blur(3px)}.study-dialog .eyebrow{font-size:9px;letter-spacing:2px;line-height:1.5;color:#a5d2ff}.study-dialog h2{font-size:28px;line-height:1.1;margin:13px 0}.study-dialog>p:not(.eyebrow){font-size:15px;line-height:1.6;color:#cbd9e9}.dialog-close{position:absolute;right:9px;top:7px;background:transparent;border:0;font-family:var(--sans);font-size:25px;min-width:36px;min-height:36px}.dialog-dismiss{height:42px;font-size:13px;padding-inline:20px;margin-top:22px}
@media(hover:hover) and (pointer:fine){.primary:hover{filter:brightness(1.08);box-shadow:inset 0 1px 3px #c5ebff66,0 0 22px #168bff98,0 6px 23px #0066ef4d}.outline:hover{border-color:#d1eaff;box-shadow:0 0 14px #2797ff45}.navigation a:hover,.sign-in:hover{color:#8ed1ff}.store-badge:hover{border-color:#bce5ff;box-shadow:0 0 12px #168bff70}}
@media(max-width:960px){
  .study{--u:1px;max-width:none;font-size:14px}.header{position:relative;flex-wrap:wrap;gap:16px;padding:18px 24px;height:auto;min-height:76px;background:#091725}.brand{width:180px}.header-actions{gap:12px}.header-pickup{height:38px;font-size:11px;min-width:132px}.navigation{gap:22px;font-size:13px;height:auto;order:3;width:100%;padding-block:8px;flex-wrap:wrap}.navigation a{min-height:36px}.navigation .active:after{bottom:0}.menu-toggle{display:flex;margin-left:auto;min-height:40px}.js .navigation{display:none}.js .navigation.open{display:flex}.hero{height:690px}.hero-image{top:auto;bottom:0;height:380px;width:100%;object-position:69% center}.hero-copy{left:24px;right:24px;top:27px}.hero .eyebrow{font-size:8px;letter-spacing:2px}.hero h1{font-size:43px;line-height:1.03;letter-spacing:-1px;white-space:normal}.hero-description{font-size:14px;line-height:21px;max-width:440px;margin-top:15px}.hero-actions{margin-top:21px}.hero-actions .primary,.hero-actions .outline{height:44px;font-size:12px}.hero-slogan{top:auto;bottom:18px;right:24px;background:#09172570}.benefits{height:auto;grid-template-columns:repeat(2,minmax(0,1fr));padding:28px 24px;gap:28px 24px}.benefits article,.benefits article:nth-child(n){padding:0}.benefits article:not(:last-child):after{display:none}.benefits h2{font-size:20px;line-height:24px;white-space:normal}.benefits p{font-size:14px;line-height:21px;margin-top:7px}.benefit-icon{width:32px;height:32px;margin-bottom:10px}.process{height:auto;padding:28px 24px 32px}.section-heading{height:auto;align-items:flex-end;margin-bottom:20px;gap:15px}.eyebrow{font-size:8px;letter-spacing:2px}.section-heading h2{font-size:32px;line-height:35px;margin-top:6px}.process-grid{height:auto;gap:18px;grid-template-columns:1fr}.process-card{height:210px;border-radius:8px;max-width:700px}.process-copy{padding:20px 0 0 20px}.step-number{width:33px;height:33px;font-size:14px}.process-copy h3{font-size:22px;line-height:26px;margin-top:14px}.process-copy p{font-size:14px;line-height:21px;margin-top:8px}.raised-phone{top:0;height:100%;width:118px;object-fit:contain;right:8px}.pricing-app{height:auto;grid-template-columns:1fr}.pricing{padding:32px 24px}.pricing-heading{height:auto;padding-bottom:24px}.pricing-heading h2{font-size:31px;line-height:34px;margin-top:6px;max-width:480px}.plan-grid{height:auto;gap:18px;grid-template-columns:repeat(3,minmax(0,1fr))}.plan{height:285px;padding:23px 15px}.plan h3{font-size:20px;line-height:24px}.plan-description{font-size:12px;line-height:18px}.price{margin-top:10px;margin-bottom:15px}.price>span{font-size:38px}.price small{font-size:12px}.plan ul{font-family:var(--serif);font-size:12px;line-height:16px;gap:9px}.plan li{white-space:normal}.plan li .icon{width:14px;height:14px}.plan-button{height:38px;font-size:12px;bottom:15px}.app-panel{height:420px}.app-copy{margin-left:32px;padding-top:55px}.app-copy .eyebrow{font-size:9px}.app-copy h2{font-size:36px;line-height:38px;margin-top:11px;margin-bottom:18px}.app-copy>p:not(.eyebrow){font-size:14px;line-height:21px}.store-links{gap:10px;margin-top:22px}.store-badge{width:132px;height:43px;padding:5px 8px;gap:8px}.store-badge svg{width:22px;height:28px}.store-badge small{font-size:8px;line-height:11px}.store-badge strong{font-size:17px;line-height:20px}.store-badge:last-child strong{font-size:15px}.app-image{object-position:right center}.community-reviews{height:auto;grid-template-columns:1fr}.community{height:285px}.community-copy{padding:30px 0 0 24px}.community h2{font-size:33px;line-height:35px;margin-top:7px}.community-copy>p:not(.eyebrow){font-size:14px;line-height:21px;margin-top:14px}.area-button{height:42px;font-size:12px;margin-top:20px}.reviews{padding:30px 24px 34px}.reviews>.eyebrow{font-size:8px;margin:0}.reviews>h2{font-size:30px;line-height:33px;white-space:normal;margin:7px 0}.rating{font-size:13px;line-height:20px;margin:9px 0 16px;gap:8px;flex-wrap:wrap}.stars .icon{width:14px;height:14px}.quote-grid{height:160px;gap:12px}.quote{padding:13px}.quote blockquote{font-size:14px;line-height:19px}.quote figcaption{left:13px;bottom:12px;font-size:11px;line-height:16px;gap:8px}.quote figcaption small{font-size:10px}.avatar{width:32px;height:32px}.closing{height:200px}.closing-copy{top:30px}.closing h2{font-size:28px;line-height:33px}.closing-copy p{font-size:12px;line-height:18px;margin-top:6px}.closing-button{width:200px;height:42px;font-size:12px;margin-top:16px}.flow-light{display:none}
}
@media(max-width:600px){
  .header{padding:17px 22px;gap:12px}.brand{width:176px}.menu-toggle{margin-left:auto;font-size:12px;padding:8px 9px;min-height:42px}.header-actions{order:4;width:100%;justify-content:space-between;border-top:1px solid #253c5066;padding-top:12px}.js .header-actions{display:none}.js .header:has(.navigation.open) .header-actions{display:flex}.sign-in{font-size:13px;display:inline-flex;align-items:center;min-height:42px}.header-pickup{height:42px;font-size:12px;min-width:152px}.navigation{gap:15px 22px;font-size:14px}.navigation a{min-height:40px}.hero{height:720px}.hero-copy{left:22px;right:22px;top:20px}.hero .eyebrow{font-size:7px;letter-spacing:1.7px}.hero h1{font-size:36px;line-height:1.02;margin-top:11px;letter-spacing:-.9px}.hero-description{font-size:14px;line-height:21px;margin-top:17px}.hero-description br,.benefits p br{display:none}.hero-actions{gap:11px;margin-top:20px}.hero-actions .primary{width:163px}.hero-actions .outline{width:125px}.hero-image{height:355px;object-position:65% center}.hero-slogan{font-size:6px;line-height:12px;bottom:12px;right:15px}.benefits{padding:29px 22px;gap:28px 22px}.benefits h2{font-size:19px;line-height:21px}.benefits p{font-size:13px;line-height:20px;margin-top:8px}.benefit-icon{width:29px;height:29px}.process{padding:30px 22px}.section-heading{display:block;margin-bottom:22px}.section-heading h2{font-size:31px;line-height:35px}.process-card{height:194px}.process-copy{padding:15px 0 0 17px}.process-copy h3{font-size:21px;margin-top:12px}.process-copy p{font-size:13px;line-height:20px;max-width:190px}.process-photo{object-position:70% center}.process-grid{gap:16px}.raised-phone{width:108px;right:8px;object-fit:contain}.pricing{padding:32px 22px 28px}.pricing-heading h2{font-size:30px;line-height:32px;letter-spacing:-.5px}.pricing .eyebrow{font-size:7px;line-height:13px;letter-spacing:1.6px}.pricing-heading{padding-bottom:27px}.plan-grid{grid-template-columns:1fr;gap:22px}.plan{height:auto;min-height:286px;padding:25px 24px 78px}.plan h3{font-size:24px;line-height:28px}.plan-description{font-size:14px;line-height:22px}.price{margin-top:8px;margin-bottom:17px}.price>span{font-size:42px}.price small{font-size:13px}.plan ul{font-size:15px;line-height:19px;gap:9px}.plan li{white-space:normal}.plan li .icon{width:16px;height:16px;margin-top:1px}.plan-button{height:43px;font-size:13px;left:19px;right:19px;bottom:18px}.app-panel{height:430px}.app-copy{margin-left:22px;padding-top:39px}.app-copy h2{font-size:30px;line-height:33px;letter-spacing:-.5px}.app-copy>p:not(.eyebrow){font-size:12px;line-height:19px;width:190px}.app-copy>p:not(.eyebrow) br{display:none}.app-image{object-fit:cover;object-position:63% center;width:100%;height:100%}.app-copy .eyebrow{font-size:8px;letter-spacing:2px}.store-links{margin-top:22px;gap:12px}.store-badge{width:122px;height:42px}.store-badge strong{font-size:16px}.store-badge:last-child strong{font-size:14px}.community{height:325px}.city-image{object-position:65% center}.community-copy{padding:26px 22px 0}.community h2{font-size:32px;line-height:34px}.community-copy>p:not(.eyebrow){font-size:13px;line-height:20px;max-width:290px}.community-copy>p:not(.eyebrow) br{display:none}.area-button{margin-top:18px}.reviews{padding:29px 22px 33px}.reviews>h2{font-size:29px;line-height:31px;margin-top:9px}.rating{font-size:12px;line-height:18px;margin-top:12px}.quote-grid{grid-template-columns:1fr;height:auto;gap:13px}.quote{padding:18px 18px 72px;min-height:166px}.quote blockquote{font-size:17px;line-height:23px}.quote figcaption{font-size:13px;line-height:18px;bottom:17px;left:18px;gap:10px}.quote figcaption small{font-size:12px}.avatar{width:36px;height:36px}.closing{height:268px}.closing-copy{top:27px}.closing h2{font-size:27px;line-height:32px}.closing-copy p{font-size:11px;line-height:17px}.closing-button{width:200px;height:43px;margin-top:14px}.fabric-image{object-position:center 72%}.motion-control{bottom:9px;left:9px;padding:7px 8px;font-size:9px}.motion-control .icon{width:12px;height:12px}
}
@media(max-width:360px){.brand{width:155px}.hero h1{font-size:32px}.hero .eyebrow{font-size:6.2px;letter-spacing:1.5px}.hero-actions{gap:9px}.hero-actions .primary{width:151px;font-size:11px}.hero-actions .outline{width:114px;font-size:11px}.benefits{gap:25px 18px}.benefits h2{font-size:18px}.app-copy h2{font-size:27px;line-height:30px}.app-copy>p:not(.eyebrow){width:174px;font-size:11.5px}.hero{height:735px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.flow-light{opacity:0!important}}
.motion-paused{scroll-behavior:auto}.motion-paused *{animation-play-state:paused!important}.motion-paused .flow-light{opacity:0}

/* Native reference geometry stays fixed; mobile keeps the complete phone visible. */
.raised-phone{object-fit:contain}
.schedule-scene{position:absolute;inset:0;overflow:hidden;border-radius:inherit;z-index:-1}
.schedule-card .process-photo{width:200%;max-width:none;object-position:left center;clip-path:none}
.motion-control{left:auto;right:12px}
.motion-control{width:36px;height:36px;justify-content:center;padding:0}
.motion-control .icon{width:16px;height:16px}
.motion-control span{position:absolute;right:0;bottom:43px;width:max-content;padding:7px 10px;border:1px solid #6b91b464;border-radius:6px;background:#091725;opacity:0;pointer-events:none}
.motion-control:focus-visible span{opacity:1}
@media(hover:hover) and (pointer:fine){.motion-control:hover span{opacity:1}}
@media(min-width:961px){
  .hero h1{font-size:calc(49 * var(--u));letter-spacing:calc(-1.05 * var(--u))}
  .hero-description{font-size:calc(12.3 * var(--u))}
  .button{font-size:calc(11.3 * var(--u))}
  .header-pickup{font-size:calc(10 * var(--u))}
  .plan-button,.closing-button{font-size:calc(10 * var(--u))}
  .area-button{font-size:calc(9.5 * var(--u))}
  .benefits h2{font-size:calc(18 * var(--u))}
  .process-copy h3{font-size:calc(18 * var(--u))}
  .plan h3{font-size:calc(16 * var(--u))}
  .plan ul{font-size:calc(12 * var(--u))}
  .quote blockquote{font-size:calc(11.5 * var(--u))}
  .hero-actions{margin-top:calc(15 * var(--u))}
  .raised-phone{width:calc(125 * var(--u));height:calc(182 * var(--u));transform:translateX(calc(-8 * var(--u))) rotate(6deg);transform-origin:center}
  .price>span,.plan ul,.quote blockquote{font-family:"Times New Roman",Times,serif}
}
@media(max-width:600px){
  .hero-image{height:340px}
  .app-panel{height:610px}
  .app-copy{padding-top:28px;margin-inline:22px}
  .app-copy h2{font-size:34px;line-height:35px}
  .app-copy>p:not(.eyebrow){width:auto;max-width:320px;font-size:14px;line-height:21px}
  .store-links{flex-direction:row;gap:12px;margin-top:18px}
  .app-image{top:auto;bottom:0;height:285px;object-fit:contain;object-position:center bottom}
  .community{height:420px}
  .city-image{top:auto;bottom:0;height:195px;object-position:right center}
  .community-copy>p:not(.eyebrow){max-width:310px}
  .motion-control{left:auto;right:8px;width:40px;height:40px}
}

/* Slow blue reflections follow existing photographic edges, behind live copy. */
.js .flow-light{opacity:.4;filter:drop-shadow(0 0 4px #228cff);z-index:0}
.js .flow-light path{animation:blue-current 7.4s linear infinite}
.js .flow-light path:nth-child(2){animation-duration:9.2s;animation-delay:-3s}
.js .closing-light{opacity:.38}
@keyframes blue-current{from{stroke-dashoffset:0}to{stroke-dashoffset:-720}}
.motion-paused .flow-light,.tab-hidden .flow-light{opacity:0!important}
.motion-paused .flow-light path,.tab-hidden .flow-light path{animation-play-state:paused!important}
@media(max-width:960px){.js .flow-light{display:block}.hero-light{top:auto;height:380px;bottom:0}.js .hero-light{opacity:.25}}
@media(prefers-reduced-motion:reduce){.js .flow-light{opacity:0!important}.js .flow-light path{animation:none!important}}

/* Keep the title inside the left photographic negative space. The original
   desktop line-box height preserves the copy, buttons and trust-row positions. */
@media(min-width:961px){
  .hero h1{font-size:calc(42 * var(--u));line-height:calc(49 * var(--u));width:calc(415 * var(--u));max-width:100%;white-space:normal}
}
@media(min-width:361px) and (max-width:600px){
  .hero h1{font-size:34px;line-height:1.08;max-width:100%}
}

/* Cormorant's U+002D glyph rises diagonally. Use a horizontal serif hyphen
   only for this separator; .97em preserves its original .323em advance. */
.hero h1 .headline-hyphen{
  font-family:"Times New Roman",Times,serif;
  font-size:.97em;
  line-height:0;
  color:inherit;
}

/* Give the shorter two-line message presence within the existing hero copy
   column; keep the photography, hero dimensions and controls unchanged. */
.hero-description{text-wrap:balance}
.hero-description .care-phrase{white-space:nowrap}
@media(min-width:961px){
  .hero h1{font-size:calc(54 * var(--u));line-height:calc(56 * var(--u))}
  .hero-description{max-width:calc(410 * var(--u))}
}
@media(max-width:600px){
  .hero h1{font-size:clamp(38px,11vw,44px);line-height:1.06}
}





/* Reserve two heading lines so the benefit descriptions align on phones. */
@media(max-width:600px){
  .benefits h2{min-height:42px}
}

/* Keep the longer process descriptions in the existing left text area. */
@media(min-width:961px){
  .process-copy{max-width:calc(190 * var(--u))}
  .schedule-card .process-copy{max-width:calc(165 * var(--u))}
}
@media(max-width:960px){
  .process-copy{max-width:230px}
}
@media(max-width:600px){
  .process-copy{max-width:210px}
  .schedule-card .process-copy{max-width:calc(100% - 124px)}
}
/* A localized fade supports text over the lighter photos without changing
   their framing. The phone card already has a dark, clear text background. */
.process-card:not(.schedule-card) .process-copy::before{
  content:"";
  position:absolute;
  inset:0 -28px -10px 0;
  z-index:-1;
  border-radius:inherit;
  background:linear-gradient(90deg,#061522cc 0%,#061522b8 88%,#06152200 100%);
  mask-image:linear-gradient(#000 0%,#000 calc(100% - 10px),transparent 100%);
  pointer-events:none;
}

/* Keep the pickup-weighing action in the right side of card 02. */
.weighing-card .process-photo{
  left:auto;
  width:62%;
  object-position:50% 60%;
  filter:saturate(.88) brightness(.94);
  mask-image:linear-gradient(90deg,transparent,#000 18%);
}

/* The edited photographs already carry the matching navy light treatment.
   Keep their printed brand and weighing details beyond the HTML text. */
.weighing-card .process-photo,.return-card .process-photo{
  left:auto;
  width:94%;
  object-position:0% 50%;
  filter:none;
  mask-image:linear-gradient(90deg,transparent,#000 12%);
}
.process-card.weighing-card .process-copy::before,.process-card.return-card .process-copy::before{
  right:0;
  background:linear-gradient(90deg,#061522dd 0%,#061522b8 88%,transparent 100%);
}
@media(max-width:960px){
  .weighing-card .process-photo,.return-card .process-photo{object-position:60% 50%}
}
@media(max-width:360px){
  .weighing-card .process-photo,.return-card .process-photo{object-position:65% 50%}
}
@media(max-width:600px){
  .weighing-card{overflow:hidden}
  .weighing-card .process-photo{top:-26px;height:calc(100% + 26px);object-position:68% 50%}
  .process-card.weighing-card .process-copy::before{top:62px;mask-image:linear-gradient(transparent,#000 14px,#000 calc(100% - 10px),transparent 100%)}
}
@media(max-width:360px){
  .weighing-card .process-photo{object-position:76% 50%}
  /* Shade the description while leaving the upper box print unshaded. */
  .process-card.return-card .process-copy::before{
    mask-image:linear-gradient(90deg,#000 140px,transparent 156px),linear-gradient(#000 73px,transparent 83px,transparent 116px,#000 126px,#000 calc(100% - 10px),transparent 100%);
    mask-composite:add;
  }
}

/* Card 02: reserve separate space for the copy and the weighing subjects. */
.weighing-card .process-copy{max-width:calc(174 * var(--u));padding-top:calc(9 * var(--u))}
.weighing-card .process-photo{width:88%;object-position:0% 50%}
@media(min-width:961px){
  .weighing-card .process-copy h3{max-width:calc(110 * var(--u))}
}
@media(max-width:960px){
  .weighing-card{height:auto;min-height:210px}
  .weighing-card .process-copy{max-width:44%;padding-bottom:18px}
  .weighing-card .process-photo{
    top:50%;width:60%;height:clamp(150px,48vw,190px);
    transform:translateY(-50%);object-fit:cover;object-position:68% 50%;
    mask-image:linear-gradient(90deg,transparent,#000 10%),linear-gradient(transparent,#000 10px,#000 calc(100% - 10px),transparent);
    mask-composite:intersect;
  }
  .process-card.weighing-card .process-copy::before{top:0;mask-image:linear-gradient(#000 calc(100% - 10px),transparent 100%)}
}
@media(max-width:600px){
  .weighing-card .process-copy{max-width:44%;padding-top:15px}
  .weighing-card .process-copy h3{margin-top:9px;max-width:125px}
  .weighing-card .process-copy p{margin-top:7px}
  .weighing-card .process-photo{object-position:78% 50%}
}

/* Compact, aligned pricing cards; the adjacent app layout is unchanged. */
.pricing .plan-grid{height:auto}
.pricing{
  background:linear-gradient(180deg,#06132166,#06132133),url('assets/fabric.jpg') center bottom/cover no-repeat;
}
.pricing .plan{display:flex;flex-direction:column;height:calc(210 * var(--u));min-height:0;padding:calc(16 * var(--u))}
.pricing .box-option,.pricing .welcome-credit{
  background:radial-gradient(ellipse at 35% 50%,#020c1614,transparent 72%),#07152326;
  border-color:#91c7ee55 #759ec533 #567d9f33 #85b4da44;
  box-shadow:inset 0 1px 0 #b0daff0d;
}
.pricing .plan h3,.pricing .plan p{text-shadow:0 1px 5px #020b15cc}
.pricing .plan h3{min-height:calc(38 * var(--u))}
.pricing .plan-description{line-height:calc(16 * var(--u))}
.pricing .price{flex-shrink:0;height:calc(36 * var(--u));margin:calc(12 * var(--u)) 0 calc(8 * var(--u))}
.pricing .offer-description{min-height:calc(28 * var(--u));font-size:calc(10.7 * var(--u));line-height:calc(14 * var(--u));color:#cbd6e4}
.pricing .plan-button{position:static;flex-shrink:0;width:100%;margin-top:auto}
@media(max-width:960px){
  .pricing .plan{height:258px;padding:18px}
  .pricing .plan h3{min-height:48px}
  .pricing .plan-description{line-height:22px}
  .pricing .price{height:46px;margin:10px 0 6px}
  .pricing .offer-description{min-height:40px;font-size:14px;line-height:20px}
}

/* Service-area copy and trust cards stay within the existing split section. */
.community-reviews .community-copy>p:not(.eyebrow){max-width:calc(205 * var(--u));text-shadow:0 1px 5px #020b15}
.community-reviews .trust-section>.eyebrow,.community-reviews .trust-section>h2{margin-left:0}
.reviews.trust-section{background:linear-gradient(rgba(6,19,33,.3),rgba(6,19,33,.3)),url('assets/fabric.jpg') 72% bottom/auto 140% no-repeat;}
.trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:calc(8 * var(--u));margin-top:calc(12 * var(--u))}
.trust-card{padding:calc(10 * var(--u));border:1px solid #2e4250;border-radius:calc(7 * var(--u));background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}
.trust-card>.icon{width:calc(18 * var(--u));height:calc(18 * var(--u));color:#80bfff}
.trust-card h3{font-size:calc(12 * var(--u));line-height:calc(15 * var(--u));margin-top:calc(6 * var(--u))}
.trust-card p{font-size:calc(9.5 * var(--u));line-height:calc(13 * var(--u));color:#d3dce8;margin-top:calc(5 * var(--u))}
@media(max-width:960px){
  .community-reviews .community-copy>p:not(.eyebrow){max-width:290px}
  .trust-grid{gap:12px;margin-top:20px}
  .trust-card{padding:16px;border-radius:8px}
  .trust-card>.icon{width:24px;height:24px}
  .trust-card h3{font-size:20px;line-height:25px;margin-top:10px}
  .trust-card p{font-size:14px;line-height:21px;margin-top:8px}
}
@media(max-width:600px){
  .trust-grid{grid-template-columns:1fr;gap:13px}
  .community-reviews .trust-section>h2{white-space:normal}
}

/* Company footer; aligned to the homepage content grid. */
.site-footer{background:#071321;border-top:1px solid #294154;padding:28px calc(52 * var(--u)) 16px}
.site-footer-top{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(0,1fr));align-items:start;gap:32px}
.site-footer-logo{position:relative;display:block;width:180px;height:32px}
.site-footer-logo>img{position:absolute;left:0;top:0;width:32px;height:32px;object-fit:contain}
.site-footer-logo>svg{display:block;width:180px;height:32px}
.site-footer-tagline{font-family:var(--sans);font-size:11px;line-height:18px;letter-spacing:1.1px;margin-top:10px;color:#c3cfdd}
.site-footer-location{font-size:12px;line-height:20px;color:#a8b9ca;margin-top:2px}
.site-footer-column{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.site-footer-column h2{font-family:var(--sans);font-size:11px;font-weight:500;line-height:20px;letter-spacing:.8px;color:#a8b9ca;margin:0 0 8px}
.site-footer-column a{display:inline-flex;align-items:center;min-height:32px;font-size:13px;line-height:20px;color:#d2deea;padding-block:4px}
.site-footer a:hover{color:#fff}
.site-footer a:focus-visible{outline:2px solid #a0deff;outline-offset:4px}
.site-footer-copyright{text-align:center;font-size:11px;line-height:18px;color:#a8b9ca;margin-top:20px;padding-top:12px;border-top:1px solid #29415480}
@media(max-width:960px){.site-footer{padding:24px 24px 16px}.site-footer-top{grid-template-columns:minmax(180px,1.3fr) repeat(3,minmax(0,1fr));gap:20px}}
@media(max-width:600px){.site-footer{padding:20px 22px 14px}.site-footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 24px}.site-footer-brand,.site-footer-column:last-child{grid-column:1 / -1}.site-footer-column h2{margin-bottom:2px}.site-footer-column a{min-height:36px}.site-footer-copyright{margin-top:14px;padding-top:10px}}

/* Calm the strongest photographic highlights without affecting UI text. */
.weighing-card .process-photo{filter:brightness(.92) saturate(.9)}
.city-image{filter:brightness(.9) saturate(.88)}
.app-image{filter:brightness(.96) saturate(.94)}

/* Keep process copy clear of the returned box and pickup scene. */
.return-card .process-copy{max-width:54%;padding-bottom:16px}
.weighing-card .process-copy{padding-right:8px}
@media(min-width:961px){.process{height:calc(247 * var(--u))}.process-grid{height:calc(160 * var(--u))}.weighing-card .process-photo,.return-card .process-photo{height:calc(144 * var(--u));top:50%;transform:translateY(-50%)}}
@media(max-width:960px){.return-card{height:auto;min-height:210px}}
/* Tablet groups need more room for the full legal link labels. */
@media(min-width:601px) and (max-width:960px){.site-footer-top{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px}}

/* Keep medium-width navigation and trust copy readable without enlarging desktop text. */
@media(min-width:961px) and (max-width:1346px){
  .navigation{font-size:max(12px,calc(10 * var(--u)))}
  .trust-card h3{font-size:max(14px,calc(12 * var(--u)));line-height:max(18px,calc(15 * var(--u)))}
  .trust-card p{font-size:max(12px,calc(9.5 * var(--u)));line-height:max(16px,calc(13 * var(--u)))}
  .community-reviews{height:auto;min-height:calc(195 * var(--u))}
  .reviews.trust-section{padding-bottom:16px}
}

/* Welcome offer: a restrained badge and border distinguish it from box sizes. */
.pricing .welcome-credit{border-color:#9bcfff80;box-shadow:inset 0 1px 0 #c6e5ff1a}
.pricing .welcome-credit .welcome-badge{align-self:flex-start;flex-shrink:0;min-height:0;padding:4px 8px;border:1px solid #8dc6ff50;border-radius:4px;background:#83c4ff0d;font-family:var(--sans);font-size:10px;line-height:16px;letter-spacing:1.1px;color:#c6e4ff}
.pricing .welcome-credit .price{margin-top:14px;margin-bottom:8px}
.pricing .welcome-credit .plan-description{margin-bottom:4px}

/* One light follows the rounded border; its short tail shares the same path. */
.pricing .welcome-credit{isolation:isolate;overflow:hidden;transition:transform .3s ease}
.pricing .welcome-credit::before,.pricing .welcome-credit::after{content:"";position:absolute;top:0;left:0;pointer-events:none;z-index:1;opacity:0;offset-path:inset(1px round calc(12 * var(--u))) border-box;offset-distance:0%;offset-rotate:auto}
.pricing .welcome-credit::before{width:4px;height:4px;border-radius:50%;background:#b8efff;box-shadow:0 0 4px 1px #36baff99,0 0 8px #218dff55;offset-anchor:center}
.pricing .welcome-credit::after{width:12px;height:2px;border-radius:50%;background:linear-gradient(90deg,transparent,#249fff30,#70d5ff88);offset-anchor:right center}
.pricing .welcome-credit .welcome-badge{box-shadow:inset 0 0 10px #69baff12,0 0 8px #469fff0d;border-color:#96d0ff70}
.js .welcome-credit.welcome-revealed::before,.js .welcome-credit.welcome-revealed::after{opacity:1;animation:welcome-perimeter 14s linear infinite}
@keyframes welcome-perimeter{from{offset-distance:0%}to{offset-distance:100%}}
@media(hover:hover) and (pointer:fine){.pricing .welcome-credit:hover{transform:translateY(-2px)}}
.motion-paused .pricing .welcome-credit,.tab-hidden .pricing .welcome-credit{transform:none;transition:none}
.motion-paused .welcome-credit::before,.motion-paused .welcome-credit::after,.tab-hidden .welcome-credit::before,.tab-hidden .welcome-credit::after{animation-play-state:paused!important;opacity:0!important}
@media(prefers-reduced-motion:reduce){
  .pricing .welcome-credit{transform:none!important;transition:none!important}
  .pricing .welcome-credit::before,.pricing .welcome-credit::after{animation:none!important;opacity:0!important}
}

/* Shared public shell: sticky in normal flow; homepage retains its original hero framing. */
html{scroll-padding-top:calc(var(--public-header-height,80px) + 12px)}
.public-header{--u:min(calc(100cqw / 1122),1.5px);position:sticky;top:0;bottom:auto;z-index:10;background:#091725f5;backdrop-filter:blur(12px)}
.public-header .navigation a{min-height:40px}.public-menu-icon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round}
.site-footer{--u:min(calc(100cqw / 1122),1.5px);position:static;margin-top:auto}
@media(min-width:961px){body:not(.service-page):not(.boxes-page) .public-header+main{margin-top:calc(-1 * var(--public-header-height,calc(49 * var(--u))))}}
@media(max-width:960px){.public-header{--u:1px;flex-wrap:wrap;height:auto;min-height:76px;padding:18px 24px;gap:16px}.public-header .brand{width:180px}.public-header .navigation{order:3;width:100%;height:auto}.public-header .header-actions{margin-left:0}.public-header .header-login{display:inline-flex}}
@media(max-width:600px){.public-header{padding:14px 16px;gap:10px;min-height:72px}.public-header .brand{width:145px}.public-header .menu-toggle{padding:10px;min-width:44px;min-height:44px}.public-header .menu-label{display:none}.public-header .header-login{padding-inline:12px;font-size:12px;height:40px;min-width:62px}.public-header .header-actions{display:flex;gap:0}.public-header .navigation{gap:20px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.study .public-header .brand{width:calc(180 * var(--u))}@media(max-width:600px){.study .public-header .brand{width:145px}}

@media(max-width:600px){.study .public-header .header-actions{display:flex;order:0;width:auto;border:0;padding:0;gap:0}.study .public-header .header-login{width:62px;min-width:62px;height:44px}}

.study{min-height:100vh;display:flex;flex-direction:column}.study>main{flex:1 0 auto;min-width:0}.public-header{flex-shrink:0}@media(max-width:960px){html:not(.js){scroll-padding-top:160px}}

/* Footer owns the homepage shell geometry and typography, independent of page content. */
.site-footer{width:min(100cqw,1683px);align-self:center;flex-shrink:0;font-size:calc(12 * var(--u));line-height:1.45}
@media(max-width:960px){.site-footer{font-size:14px}}
