@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-0.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-1.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-2.ttf) format('truetype');
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/font-3.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(assets/font-4.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(assets/font-5.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(assets/font-6.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(assets/font-7.ttf) format('truetype');
}
@font-face {
  font-family: 'Manrope';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(assets/font-8.ttf) format('truetype');
}

:root{--blue:#2455dc;--blue-dark:#1840b4;--ink:#15202e;--muted:#606b79;--line:#dfe4eb;--soft:#f4f6f9;--paper:#fff;--navy:#101d32;--font:'DM Sans',Arial,sans-serif;--heading:'Manrope',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:125px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.55}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button{color:inherit}img{max-width:100%;display:block}svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--heading);letter-spacing:-.045em;line-height:1.13}h1{font-size:clamp(40px,4.6vw,68px);font-weight:750;margin-bottom:22px}h2{font-size:clamp(29px,3vw,42px);font-weight:700;margin-bottom:17px}h3{font-size:22px;font-weight:700;margin-bottom:12px}p{margin-bottom:20px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #91aaff;outline-offset:4px}.skip{position:fixed;left:20px;top:-80px;background:#fff;padding:12px;z-index:99}.skip:focus{top:12px}.preview-bar{padding:7px max(24px,calc((100vw - 1240px)/2));background:#101d32;color:#c6d1e5;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.05em;gap:14px;line-height:1.4}.preview-bar>span:first-child{white-space:nowrap;font-weight:700;letter-spacing:.13em}.preview-bar i{display:inline-block;width:6px;height:6px;background:#a0bcff;border-radius:50%;margin-right:7px}.preview-bar button{border:0;background:none;color:white;font-size:10px;padding:0 0 0 14px;text-decoration:underline;text-underline-offset:3px}.header{background:#ffffffed;backdrop-filter:blur(12px);position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.nav-wrap{max-width:1288px;margin:auto;display:flex;align-items:center;padding:18px 24px;gap:38px}.brand{margin-right:auto;flex-shrink:0}.brand img{object-fit:contain;width:136px;height:45px}nav{display:flex;gap:28px;align-items:center}nav a{font-size:14px;font-weight:550;position:relative;white-space:nowrap}nav a:hover,nav a.active{color:var(--blue)}nav a.active:after{position:absolute;content:'';bottom:-29px;height:3px;left:0;right:0;background:var(--blue)}.nav-actions{display:flex;align-items:center;gap:15px}.button{border:1px solid var(--blue);background:var(--blue);color:white;border-radius:5px;display:inline-flex;justify-content:center;align-items:center;gap:22px;min-height:50px;padding:12px 23px;font-weight:650;font-size:14px;transition:background .15s,transform .15s}.button:hover{background:var(--blue-dark);border-color:var(--blue-dark);transform:translateY(-1px)}.button.secondary{color:var(--ink);background:white;border-color:#cbd2dc}.button.secondary:hover{background:var(--soft)}.button.white{background:#fff;color:var(--ink);border-color:#fff}.button.small{min-height:42px;padding:10px 17px;font-size:13px;gap:22px}.button.full{width:100%}.icon-button{background:none;border:0;width:34px;height:38px;display:grid;place-items:center;padding:6px}.menu-button{display:none}.text-button{background:none;padding:0;border:0;color:var(--blue);font-weight:650;font-size:14px;display:inline-flex;gap:12px;align-items:center}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.text-button.light{color:#fff}.eyebrow{font-size:11px;font-weight:750;letter-spacing:.16em;color:var(--blue);text-transform:uppercase;margin-bottom:18px}.eyebrow.light{color:#b8cdff}.lede{color:var(--muted);font-size:18px;line-height:1.65;max-width:600px}.container{max-width:1240px;margin:0 auto;padding:0 24px}.section{padding:70px 0}.section.soft{background:var(--soft)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:28px}.section-top h2{margin-bottom:0}.section-top p{margin:0;max-width:400px;color:var(--muted);font-size:15px}.home-hero{display:grid;grid-template-columns:1fr 1.05fr;max-width:1440px;margin:auto;min-height:530px}.hero-copy{padding:65px 50px 50px max(24px,calc((100vw - 1192px)/2));align-self:center}.hero-copy .lede{font-size:17px;max-width:440px}.hero-copy h1 span{color:var(--blue)}.hero-actions{display:flex;gap:15px;flex-wrap:wrap;align-items:center}.hero-meta{margin:16px 0 0;font-size:12px;color:var(--muted);display:flex;align-items:center;gap:9px}.hero-meta .dot{height:4px;width:4px;background:#a1adbf;border-radius:50%}.hero-photo{position:relative;overflow:hidden;background:#132440;min-height:530px}.hero-photo>img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:50% 50%}.hero-photo:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#071426c9)}.image-caption{position:absolute;z-index:1;bottom:32px;left:34px;color:#fff;border-left:2px solid #82a5ff;padding-left:16px;font-size:14px;line-height:1.55}.image-caption b{display:block;font-size:18px;font-family:var(--heading);margin-bottom:5px}.path-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.path{padding:27px 27px 23px;border:1px solid var(--line);border-radius:7px;display:flex;flex-direction:column;align-items:start;position:relative;transition:box-shadow .2s,transform .2s}.path:hover{transform:translateY(-3px);box-shadow:0 10px 30px #13213c0b;border-color:#b5c6f5}.path .number{font-size:11px;letter-spacing:.1em;color:var(--blue);margin-bottom:22px;font-weight:700}.path p{color:var(--muted);font-size:14px;max-width:290px;margin-bottom:22px}.path .text-button{margin-top:auto}.case-strip{display:grid;grid-template-columns:1.08fr 1fr;gap:0;background:var(--navy);border-radius:8px;overflow:hidden;color:#fff}.case-strip img{width:100%;height:350px;object-fit:cover;object-position:50% 60%}.case-copy{padding:42px;align-self:center}.case-copy h2{font-size:34px}.case-copy p{color:#c2cddb;font-size:15px}.case-copy .text-button{color:white}.compact-cta{display:flex;justify-content:space-between;align-items:center;gap:30px;border-top:1px solid var(--line);padding:35px 0;margin-top:35px}.compact-cta h3{margin:0 0 6px;font-size:24px}.compact-cta p{color:var(--muted);font-size:14px;margin:0}footer{background:var(--navy);color:#d4dce8;padding:44px max(24px,calc((100vw - 1192px)/2)) 0}.footer-top{display:grid;grid-template-columns:1fr 1.1fr 1fr 1fr 1.3fr;gap:26px;align-items:start;padding-bottom:35px}.footer-top img{width:122px;height:45px;object-fit:contain;object-position:left}.footer-top p{font-size:13px;line-height:1.7;margin:0;color:#aab8cc}.footer-top>div{display:flex;flex-direction:column;gap:9px;font-size:12px}.footer-top span{color:#aab8cc;font-size:11px}.footer-top .text-button{font-size:12px;margin-top:4px}.footer-top a:hover{color:white;text-decoration:underline;text-underline-offset:4px}.footer-bottom{border-top:1px solid #ffffff1f;display:flex;justify-content:space-between;gap:20px;padding:18px 0;font-size:10px;color:#9caec7}.footer-bottom>div{display:flex;gap:20px}.page-intro{padding:53px 0 36px}.page-intro h1{font-size:49px;max-width:790px}.page-intro .lede{font-size:17px;max-width:740px;margin-bottom:0}.breadcrumb{font-size:11px;color:var(--muted);margin:0 0 24px;display:flex;gap:10px}.breadcrumb a:hover{color:var(--blue)}.split-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:70px;align-items:center}.split-intro img{width:100%;height:350px;border-radius:8px;object-fit:cover}.split-intro h1{font-size:49px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:34px}.step{border-top:2px solid #a1b7ef;padding-top:20px}.step .step-num{font-size:12px;color:var(--blue);font-weight:700;margin-bottom:16px}.step h3{font-size:21px}.step p{font-size:14px;color:var(--muted);margin:0}.process-note{margin-top:28px;border-left:3px solid var(--blue);padding:12px 18px;background:#ebf0fe;font-size:13px;max-width:940px}.process-note b{color:var(--blue)}.plan-bottom{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:start}.plan-bottom p{color:var(--muted);font-size:15px}.list-check{list-style:none;padding:0;margin:22px 0;font-size:14px}.list-check li{position:relative;padding:0 0 13px 26px}.list-check li:before{position:absolute;content:'✓';left:0;color:var(--blue);font-weight:700}.route-link{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:19px 0}.route-link:first-child{padding-top:0}.route-link .badge{font-size:10px;color:var(--blue);background:#ebf0fe;min-width:72px;padding:5px 8px;text-align:center;border-radius:3px;font-weight:700}.route-link b{font-family:var(--heading);font-size:17px;display:block;margin-bottom:4px}.route-link p{margin:0;font-size:13px;color:var(--muted)}.route-link .arrow{margin-left:auto;font-size:22px}.route-link:hover b{color:var(--blue)}.tabs{display:flex;gap:7px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:13px}.tab{background:transparent;border:1px solid transparent;padding:12px 23px;font-size:14px;border-radius:5px;font-weight:600}.tab[aria-selected=true]{background:var(--blue);color:white;border-color:var(--blue)}.tab:hover:not([aria-selected=true]){background:var(--soft)}.route-panel{display:grid;grid-template-columns:.9fr 1.3fr;gap:70px;padding:37px 0 38px}.route-panel h2{font-size:36px}.route-panel p{color:var(--muted);font-size:15px}.route-cost{font-size:12px;color:var(--ink);padding:12px 16px;border-left:2px solid var(--blue);background:var(--soft);margin:24px 0}.route-detail{display:grid;grid-template-columns:1fr 1fr;gap:35px}.route-detail h3{font-size:16px;letter-spacing:-.02em;margin-top:0}.route-detail ul{padding-left:18px;margin:0;color:var(--muted);font-size:14px}.route-detail li{padding-bottom:11px}.route-detail ul li::marker{color:var(--blue)}.note{font-size:12px;color:var(--muted);border-radius:5px;background:var(--soft);padding:17px 20px;line-height:1.7}.note b{color:var(--ink)}details{border-top:1px solid var(--line);padding:18px 0}details:last-child{border-bottom:1px solid var(--line)}summary{font-size:15px;cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:20px}summary:after{content:'+';font-size:20px;font-weight:400;line-height:1}details[open] summary:after{content:'−'}details p{margin:15px 25px 0 0;color:var(--muted);font-size:14px}.compare-table{width:100%;font-size:13px;border-collapse:collapse;margin-top:25px}.compare-table th,.compare-table td{text-align:left;padding:14px 12px;border-bottom:1px solid var(--line);vertical-align:top}.compare-table th{background:var(--soft);font-weight:650}.compare-scroll{overflow-x:auto}.shop-toolbar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 28px}.filter-tabs{display:flex;gap:8px;flex-wrap:wrap}.filter{background:white;border:1px solid var(--line);border-radius:25px;padding:8px 16px;font-size:12px}.filter.active{background:var(--ink);color:white;border-color:var(--ink)}.shop-toolbar select{border:1px solid var(--line);padding:9px 12px;border-radius:5px;background:#fff;font-size:12px;min-width:150px}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.product-card{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:7px;overflow:hidden}.product-image{background:#fafbfc;border:0;padding:0;overflow:hidden}.product-image img{width:100%;aspect-ratio:1.45;object-fit:contain;transition:transform .3s}.product-image:hover img{transform:scale(1.045)}.product-info{padding:20px}.product-info .category{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin-bottom:8px}.product-info h3{font-size:19px;margin-bottom:6px}.product-info p{font-size:13px;color:var(--muted);margin-bottom:17px}.product-info .price-row{display:flex;align-items:center;justify-content:space-between;font-size:14px;font-weight:650}.store-handoff{display:flex;justify-content:space-between;align-items:center;gap:25px;margin:30px 0 0;border:1px solid var(--line);border-radius:6px;padding:22px}.store-handoff p{font-size:13px;color:var(--muted);margin:0}.store-handoff b{display:block;color:var(--ink);margin-bottom:3px}.compare-work{display:grid;grid-template-columns:1.25fr 1fr;gap:45px;align-items:center}.case-image{position:relative;aspect-ratio:1.25;overflow:hidden;border-radius:8px;background:#16233a}.case-image img{width:100%;height:100%;object-fit:contain}.case-switch{display:flex;background:#f0f3f8;border-radius:5px;padding:4px;gap:4px;width:max-content;margin:20px 0}.case-switch button{border:0;background:transparent;padding:8px 22px;font-size:13px;border-radius:3px}.case-switch button[aria-pressed=true]{color:white;background:var(--ink)}.case-points{display:grid;gap:17px;margin:25px 0}.case-points>div{border-bottom:1px solid var(--line);padding-bottom:15px}.case-points small{display:block;font-size:10px;color:var(--blue);letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px;font-weight:700}.case-points p{font-size:14px;margin:0;color:var(--muted)}.quote{margin:0;padding:0 0 0 24px;border-left:3px solid var(--blue);font-family:var(--heading);font-size:23px;line-height:1.5;font-weight:600;letter-spacing:-.025em}.quote cite{display:block;font-family:var(--font);font-style:normal;letter-spacing:0;font-size:12px;font-weight:400;color:var(--muted);margin-top:20px}.support-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.support-card{padding:26px;border:1px solid var(--line);border-radius:6px}.support-card .support-symbol{font-size:27px;color:var(--blue);margin-bottom:18px}.support-card h3{font-size:19px}.support-card p{font-size:14px;color:var(--muted);min-height:44px}.support-contact{display:flex;justify-content:space-between;gap:40px;background:var(--navy);color:white;padding:35px;border-radius:7px;margin-top:30px}.support-contact h3{font-size:24px}.support-contact p{font-size:14px;color:#c2cddd;margin-bottom:0}.contact-choices{display:flex;align-items:center;gap:28px}.contact-choices a{font-size:14px;font-weight:600}.resource-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}.resource-list a{display:flex;align-items:center;justify-content:space-between;padding:17px 0;border-bottom:1px solid var(--line);font-size:14px}.resource-list a:hover{color:var(--blue)}
dialog{border:0;padding:0;border-radius:12px;max-height:92vh;width:min(900px,calc(100% - 36px));overflow-y:auto;box-shadow:0 30px 100px #101d3240;color:var(--ink)}dialog::backdrop{background:#071327a8;backdrop-filter:blur(5px)}.dialog-close{position:absolute;z-index:5;right:16px;top:13px;background:#eef1f5;border:0;border-radius:50%;width:32px;height:32px;font-size:24px;line-height:1;display:grid;place-items:center;color:var(--ink)}.dialog-pad{padding:44px}.dialog-pad h2{font-size:32px;max-width:650px}.dialog-pad>p{color:var(--muted)}#walkthrough{max-width:750px}.walk-list{padding:0;list-style:none;counter-reset:walk;margin:28px 0}.walk-list li{counter-increment:walk;position:relative;padding:0 0 21px 43px;font-size:14px}.walk-list li:before{content:counter(walk);position:absolute;left:0;top:0;color:var(--blue);background:#ebf0fe;border-radius:50%;width:27px;height:27px;display:grid;place-items:center;font-size:12px;font-weight:700}.walk-list b,.walk-list span{display:block}.walk-list span{color:var(--muted);font-size:13px;margin-top:5px}#walkthrough .button{margin-top:23px}.booking-layout{display:grid;grid-template-columns:285px 1fr;min-height:540px}.booking-aside{background:var(--navy);color:white;padding:36px 28px;display:flex;flex-direction:column}.booking-aside img{width:115px;height:42px;object-fit:contain;object-position:left;margin-bottom:35px}.booking-aside h2{font-size:27px;line-height:1.2;margin-bottom:18px}.booking-aside p{color:#c1cee2;font-size:13px}.booking-aside .aside-meta{margin-top:auto;padding-top:45px;font-size:11px;color:#9fb2cc}.booking-aside .aside-meta b{color:#fff;font-size:12px;display:block;margin-bottom:7px}.booking-main{padding:40px 38px;align-self:center;min-width:0}.booking-progress{display:flex;gap:8px;align-items:center;color:var(--muted);font-size:10px;margin-bottom:30px;text-transform:uppercase;letter-spacing:.08em}.booking-progress span.current{color:var(--blue);font-weight:750}.booking-progress i{width:20px;height:1px;background:var(--line)}.booking-main h3{font-size:25px;margin-bottom:10px}.booking-main .intro{color:var(--muted);font-size:13px;margin-bottom:24px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:19px}.field label,.field legend{font-size:12px;font-weight:600}.field label span{font-weight:400;color:var(--muted)}input,select,textarea{width:100%;border:1px solid #cbd3df;border-radius:5px;background:white;color:var(--ink);padding:11px 12px;font-size:13px}input::placeholder,textarea::placeholder{color:#8390a1}textarea{min-height:83px;resize:vertical}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}.field-grid .wide{grid-column:1/-1}.booking-foot{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:26px}.booking-foot .text-button{font-size:12px}.booking-foot .button{min-height:44px;padding:10px 18px;font-size:13px;gap:15px}.form-note{font-size:10px;color:var(--muted);margin:15px 0 0}.date-list{display:flex;gap:8px;margin:18px 0}.date-choice{flex:1;border:1px solid var(--line);padding:11px 4px;border-radius:5px;background:white;font-size:11px}.date-choice b{display:block;font-size:20px;margin:3px 0}.date-choice[aria-pressed=true]{border-color:var(--blue);background:#edf2ff;color:var(--blue)}.time-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.time-choice{border:1px solid var(--line);border-radius:4px;background:white;padding:10px 5px;font-size:12px}.time-choice[aria-pressed=true]{border-color:var(--blue);color:var(--blue);background:#edf2ff}.calendar-label{font-size:11px;font-weight:600;color:var(--muted);display:flex;justify-content:space-between;align-items:center}.calendar-label select{font-size:11px;width:auto;padding:5px}.booked-icon{display:grid;place-items:center;background:#eaf3ef;color:#258052;font-size:27px;border-radius:50%;width:52px;height:52px;margin-bottom:23px}.booking-summary{background:var(--soft);border-radius:6px;padding:18px;margin:23px 0;font-size:13px}.booking-summary p{margin:0 0 7px;color:var(--muted)}.booking-summary p:last-child{margin-bottom:0}.booking-summary b{color:var(--ink)}.booking-summary .button{margin-top:12px}.product-modal{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding:50px 38px 38px}.product-modal>img{width:100%;object-fit:contain;align-self:center}.product-modal h2{font-size:32px}.product-modal .product-price{font-size:23px;margin:15px 0}.product-modal p{font-size:14px;color:var(--muted)}.product-modal .button{margin:15px 0}.product-modal ul{font-size:13px;color:var(--muted);padding-left:18px}#search-dialog{max-width:700px}.search-label{display:block;font-size:12px;color:var(--muted);margin-bottom:8px}#search-results{margin-top:20px;min-height:70px}.search-result{display:flex;justify-content:space-between;padding:15px 0;border-bottom:1px solid var(--line);gap:20px;align-items:center}.search-result b{font-size:14px}.search-result small{font-size:11px;color:var(--muted);display:block;margin-top:3px}.search-result:hover b{color:var(--blue)}.empty-state{font-size:13px;color:var(--muted);padding:20px 0}.faq-column{max-width:850px}.route-panel[hidden],[hidden]{display:none!important}.mini-label{font-size:11px;color:var(--muted)}
@media(min-width:1441px){.hero-copy{padding-left:124px;padding-right:50px}.home-hero{max-width:1440px}.hero-photo{border-bottom-right-radius:8px}}
@media(max-width:1100px){.nav-wrap{gap:20px}nav{gap:18px}.nav-actions{gap:8px}.hero-copy{padding:45px 30px 40px 24px}.home-hero{min-height:480px}.hero-photo{min-height:480px}.hero-copy h1{font-size:52px}.footer-top{grid-template-columns:1fr 1fr 1fr 1.2fr}.footer-top>p{display:none}.split-intro{gap:35px}.route-panel{gap:40px}.route-detail{gap:25px}.path{padding:22px}.path h3{font-size:21px}}
@media(max-width:850px){.nav-wrap{padding:14px 22px}.brand img{width:118px;height:40px}nav{position:absolute;left:0;right:0;top:100%;padding:20px 24px;background:white;border-bottom:1px solid var(--line);display:none;gap:0;box-shadow:0 8px 16px #1427480a}nav.open{display:flex;flex-direction:column;align-items:stretch}nav a{padding:12px 0}nav a.active:after{display:none}.menu-button{display:grid}.nav-actions .button{font-size:12px;padding:9px 12px;gap:12px}.home-hero{grid-template-columns:1fr 1fr}.hero-copy h1{font-size:44px}.hero-copy .lede{font-size:15px}.hero-copy{padding-top:35px;padding-bottom:35px}.hero-photo{min-height:470px}.image-caption{bottom:24px;left:22px;font-size:12px}.image-caption b{font-size:16px}.hero-actions .text-button{font-size:12px}.hero-actions .button{padding:11px 16px}.hero-meta{font-size:10px}.section{padding:48px 0}.section-top{align-items:start;gap:20px}.section-top h2{font-size:30px}.path-grid{gap:12px}.path{padding:19px}.path .number{margin-bottom:16px}.path h3{font-size:19px}.path p{font-size:12px}.path .text-button{font-size:12px}.case-copy{padding:28px}.case-copy h2{font-size:27px}.case-strip img{height:320px}.case-copy p{font-size:13px}.footer-top{gap:20px;grid-template-columns:1fr 1fr 1fr}.footer-top>a{grid-column:1/-1}.split-intro h1{font-size:40px}.split-intro img{height:320px}.split-intro .lede{font-size:15px}.steps{gap:24px}.plan-bottom{gap:30px}.route-panel{gap:25px;grid-template-columns:.8fr 1fr}.route-detail{grid-template-columns:1fr;gap:20px}.route-detail ul{font-size:13px}.shop-grid{gap:16px}.product-info{padding:16px}.product-info h3{font-size:17px}.product-info .price-row{flex-direction:column;align-items:start;gap:9px}.support-grid{gap:13px}.support-card{padding:20px}.support-card h3{font-size:18px}.support-card p{font-size:13px}.support-contact{padding:28px}.contact-choices{flex-direction:column;gap:15px;justify-content:center;align-items:start}.booking-layout{grid-template-columns:245px 1fr}.booking-main{padding:38px 26px}.booking-aside{padding:32px 23px}.booking-aside h2{font-size:25px}}
@media(max-width:600px){.preview-bar{padding:6px 16px;font-size:8px;gap:8px}.preview-bar>span:last-child{font-size:0}.preview-bar button{font-size:9px;padding:0}.nav-wrap{padding:12px 16px;gap:12px}.nav-actions{gap:4px}.brand img{width:100px;height:36px}.nav-actions .button{font-size:11px;padding:8px 11px;min-height:37px;gap:8px}.nav-actions .button span{display:none}.icon-button{width:30px}.nav-actions #search-open{display:none}.container{padding:0 20px}.home-hero{display:flex;flex-direction:column}.hero-copy{padding:35px 20px 31px}.hero-copy h1{font-size:46px;margin-bottom:18px;line-height:1.08}.hero-copy h1 br:last-child{display:none}.hero-copy .eyebrow{font-size:10px;margin-bottom:15px}.hero-copy .lede{font-size:16px;max-width:400px;margin-bottom:23px}.hero-actions{gap:22px}.hero-actions .button{min-height:46px;padding:11px 19px;font-size:13px}.hero-actions .text-button{font-size:12px}.hero-meta{font-size:11px;margin-top:14px}.hero-photo{min-height:255px;height:255px;max-height:255px}.hero-photo>img{object-position:50% 47%}.image-caption{bottom:20px;left:22px}.image-caption b{font-size:16px;margin-bottom:3px}.section{padding:37px 0}.section-top{flex-direction:column;gap:13px;margin-bottom:23px}.section-top h2{font-size:29px}.section-top p{font-size:14px}.path-grid{grid-template-columns:1fr;gap:12px}.path{padding:20px 22px}.path .number{display:none}.path h3{font-size:20px;margin-bottom:9px}.path p{max-width:none;font-size:14px;margin-bottom:15px}.path .text-button{font-size:13px}.case-strip{grid-template-columns:1fr}.case-strip img{height:245px;object-position:50% 58%}.case-copy{padding:28px}.case-copy h2{font-size:29px}.case-copy p{font-size:14px}.compact-cta{align-items:start;flex-direction:column;gap:17px;padding:27px 0 0;margin-top:28px}.compact-cta h3{font-size:23px}.compact-cta .button{width:100%}footer{padding:32px 20px 0}.footer-top{grid-template-columns:1fr 1fr;gap:25px 20px}.footer-top>a{grid-column:1/-1}.footer-top>div:last-child{grid-column:1/-1;padding-top:10px;border-top:1px solid #ffffff24}.footer-bottom{font-size:9px;flex-direction:column;gap:12px}.footer-bottom>div{gap:18px}.page-intro{padding:30px 0 28px}.breadcrumb{margin-bottom:18px;font-size:10px}.page-intro h1{font-size:36px}.page-intro .lede{font-size:15px}.split-intro{display:flex;flex-direction:column;gap:27px;align-items:stretch}.split-intro h1{font-size:39px}.split-intro img{height:245px}.steps{grid-template-columns:1fr;gap:24px}.step{padding-top:16px}.step .step-num{margin-bottom:9px}.step h3{font-size:20px;margin-bottom:10px}.step p{font-size:14px}.process-note{font-size:12px;margin-top:25px}.plan-bottom{grid-template-columns:1fr;gap:30px}.plan-bottom h2{font-size:29px}.plan-bottom p{font-size:14px}.route-link{padding:18px 0}.route-panel{grid-template-columns:1fr;gap:25px;padding:27px 0}.route-panel h2{font-size:31px}.route-panel p{font-size:14px}.route-detail{grid-template-columns:1fr 1fr;gap:18px}.route-detail h3{font-size:15px}.route-detail ul{font-size:12px}.tabs{gap:5px;padding-bottom:12px}.tab{flex:1;padding:11px 8px;font-size:12px}.compare-table{min-width:570px}.shop-toolbar{align-items:start;flex-direction:column;gap:15px}.filter-tabs{gap:6px}.filter{padding:7px 11px;font-size:11px}.shop-toolbar select{min-width:0}.shop-grid{grid-template-columns:1fr 1fr;gap:12px}.product-info{padding:14px 12px}.product-info h3{font-size:16px}.product-info p{font-size:12px;min-height:38px}.product-info .category{font-size:8px;letter-spacing:.09em}.product-info .price-row{font-size:13px}.product-info .text-button{font-size:12px}.product-image img{aspect-ratio:1.1}.store-handoff{flex-direction:column;align-items:start;padding:20px}.store-handoff .button{width:100%}.compare-work{grid-template-columns:1fr;gap:28px}.case-image{aspect-ratio:1.15}.compare-work h2{font-size:30px}.case-switch{margin-bottom:16px}.quote{font-size:21px}.support-grid{grid-template-columns:1fr}.support-card{padding:22px}.support-card .support-symbol{margin-bottom:12px;font-size:23px}.support-card p{min-height:0;font-size:14px}.support-contact{flex-direction:column;gap:22px}.contact-choices{gap:17px}.resource-list{grid-template-columns:1fr}.dialog-pad{padding:38px 23px 26px}.dialog-pad h2{font-size:28px}.dialog-pad .eyebrow{font-size:9px}.dialog-pad>p{font-size:14px}.booking-layout{display:block;min-height:0}.booking-aside{padding:25px 25px 23px}.booking-aside img{height:30px;width:95px;margin-bottom:19px}.booking-aside h2{font-size:25px;margin-bottom:9px;max-width:280px}.booking-aside p{font-size:12px;max-width:330px;margin:0}.booking-aside .aside-meta{display:none}.booking-main{padding:25px}.booking-progress{margin-bottom:20px;font-size:9px}.booking-main h3{font-size:23px}.field-grid{gap:0 11px}.field{margin-bottom:15px}.field label{font-size:11px}.field-grid .field{grid-column:1/-1}.booking-foot{margin-top:20px}.booking-foot .button{font-size:12px}.booking-foot .text-button{font-size:11px}.calendar-label{align-items:start;flex-direction:column;gap:10px}.calendar-label select{padding:7px 9px}.time-list{grid-template-columns:repeat(3,1fr)}.product-modal{grid-template-columns:1fr;padding:38px 25px 25px;gap:20px}.product-modal>img{height:220px}.product-modal h2{font-size:29px}.product-modal .button{width:100%}.note{font-size:11px;padding:15px}.walk-list li{font-size:13px}.walk-list span{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{.preview-bar,.header,footer,dialog{display:none!important}.section{padding:25px 0}.home-hero{min-height:0}.hero-photo{min-height:350px}body{font-size:12px}a{text-decoration:none}}

/* Review refinements */
.call-now{font-size:13px;margin:20px 0 0}.call-now a{font-weight:650;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.call-now small{display:block;font-size:11px;margin-top:4px;color:var(--muted)}.booking-aside .call-now{margin-top:24px;max-width:none}.booking-aside .call-now small{color:#c6d1e5}.option-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.option-card{display:flex;flex-direction:column;padding:25px 22px;border:1px solid var(--line);border-radius:7px;background:white}.option-card:hover{border-color:var(--blue);background:var(--soft)}.option-card h2{font-size:27px;letter-spacing:-.035em}.option-card p:not(.eyebrow){font-size:14px}.option-card .text-button{margin-top:auto;font-size:13px}.option-card .eyebrow{font-size:10px}@media(max-width:1000px){.option-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.option-grid{grid-template-columns:1fr;gap:12px}.option-card{padding:21px}.option-card h2{font-size:24px;margin-bottom:12px}.option-card p:not(.eyebrow){margin-bottom:15px}.booking-aside .call-now{display:block;margin-top:15px;font-size:12px}.booking-aside .call-now small{font-size:10px}}

.login-link{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:7px 11px;border:1px solid var(--line);border-radius:5px;font-size:13px;font-weight:650;white-space:nowrap}.login-link:hover{border-color:var(--blue);color:var(--blue)}@media(max-width:600px){.nav-wrap{gap:9px}.nav-actions{gap:7px}.login-link{font-size:11px;padding:5px 7px;min-height:36px}.nav-actions>.button.small{padding:8px 10px;font-size:11px;gap:0}.brand img{width:94px}}

.photo-task{border:1px solid var(--line);border-radius:7px;padding:22px;margin:25px 0;background:var(--soft)}.photo-task h4{font-size:21px;line-height:1.25;margin:0 0 12px;letter-spacing:-.025em}.photo-task p{font-size:13px}.photo-task .eyebrow{font-size:10px;margin-bottom:12px}.photo-label{display:block;font-size:12px;font-weight:650;margin-bottom:9px}.photo-label span{font-weight:400}.photo-task input[type=file]{display:block;width:100%;max-width:100%;font-size:12px;padding:10px 0}.photo-task #photo-selection{overflow-wrap:anywhere;margin:10px 0;font-size:12px}.photo-task .photo-later{margin:16px 0 0;font-size:12px}.photo-done{padding:12px;background:white;border-left:3px solid var(--blue)}@media(max-width:600px){.photo-task{padding:17px}.photo-task h4{font-size:20px}}
.booking-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:23px 0}.booking-choice{border:1px solid var(--line);border-radius:7px;padding:18px;display:flex;flex-direction:column}.booking-choice h4{font-size:19px;margin:0 0 8px}.booking-choice p{font-size:12px;color:var(--muted);flex:1;margin:0 0 17px}.booking-choice .button{font-size:12px;padding:11px 12px;min-height:44px}.booking-choice button:disabled{background:#edf0f5;color:#68768b;cursor:default;opacity:1}.photo-reminder{margin:20px 0}.photo-preview-link{margin:4px 0 10px}.scheduler-page{max-width:850px}.scheduler-page .booking-choices{max-width:650px}.scheduler-page .intro{font-size:16px;color:var(--muted)}.date-detail{padding:12px 0;margin-bottom:18px}.date-detail summary{font-size:12px}.date-detail summary span{color:var(--muted)}.date-detail .field:first-of-type{margin-top:17px}.date-detail .field:last-child{margin-bottom:0}#intake-next .button{margin-bottom:20px}@media(max-width:600px){.booking-choices{grid-template-columns:1fr}.booking-choice{padding:17px}.booking-choice p{font-size:13px}.scheduler-page .booking-choices{max-width:100%}}
/* Give the homepage photograph a wider frame and a gentler crop. */
@media(min-width:851px){.home-hero{grid-template-columns:.9fr 1.25fr;min-height:490px}.hero-copy{padding-top:45px;padding-bottom:40px;padding-right:32px}.hero-copy h1{font-size:clamp(44px,4vw,58px)}.hero-photo{min-height:490px}}
@media(max-width:600px){.hero-photo{aspect-ratio:16/9;min-height:0;height:auto;max-height:none}.hero-photo>img{object-position:center}}
/* Show the room immediately on phones, before the introductory copy. */
@media(max-width:600px){.home-hero .hero-photo{order:-1}.home-hero .hero-copy{padding-top:26px}}
