:root{--navy:#0b3954;--petrol:#315f68;--blue:#6d909b;--sand:#f4efe5;--white:#fffdf8;--ink:#182b2d;--line:#cbd4ce}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--ink);font:400 16px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}img{display:block;width:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand{font-family:'Manrope',sans-serif}h2{font-size:clamp(2.1rem,5vw,4.6rem);line-height:1.04;letter-spacing:-.045em;margin-bottom:1.5rem}.topbar{height:76px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;background:var(--white);position:sticky;top:0;z-index:20;border-bottom:1px solid rgba(24,43,45,.12)}.brand{display:flex;gap:.65rem;align-items:center;font-weight:700;letter-spacing:.08em}.mark{font-size:1.35rem;color:var(--petrol)}nav{display:flex;align-items:center;gap:1.8rem;font-size:.9rem}nav a:hover{color:var(--petrol)}.nav-cta{background:var(--navy);color:white!important;padding:.72rem 1.2rem;border-radius:99px}.menu{display:none;background:none;border:0;font:inherit}.hero{min-height:calc(100vh - 76px);position:relative;display:flex;align-items:flex-end;color:white}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,26,37,.8),rgba(4,26,37,.1) 70%),linear-gradient(0deg,rgba(4,26,37,.45),transparent 45%)}.hero-copy{position:relative;max-width:850px;padding:10vh 7vw 9vh}.hero h1{font-size:clamp(3.6rem,9vw,8.4rem);line-height:.88;letter-spacing:-.065em;margin-bottom:2rem}.hero-copy>p:not(.eyebrow){font-size:1.25rem;max-width:560px}.eyebrow{font-size:.77rem;font-weight:600;letter-spacing:.2em;margin-bottom:1.4rem}.eyebrow.dark{color:var(--petrol)}.actions{display:flex;align-items:center;gap:1.5rem;margin-top:2.3rem}.button{display:inline-block;padding:.92rem 1.35rem;border-radius:99px;font-weight:600}.button.light{background:var(--white);color:var(--navy)}.text-link{border-bottom:1px solid rgba(255,255,255,.7)}.section{padding:8rem 7vw}.intro{max-width:1200px;margin:auto}.intro h2{max-width:950px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:7vw;font-size:1.08rem}.photo-break{position:relative;height:78vh}.photo-break img{height:100%;object-fit:cover;object-position:center}.photo-break blockquote{position:absolute;right:6vw;bottom:5vw;margin:0;color:white;font:600 clamp(2rem,5vw,4.5rem)/1.05 'Manrope',sans-serif;max-width:650px;text-align:right}.section-head{display:grid;grid-template-columns:1.25fr .75fr;gap:7vw;align-items:end;margin-bottom:3.5rem}.section-head>p{font-size:1.05rem}.cards{display:grid;gap:1.2rem}.cards.three{grid-template-columns:repeat(3,1fr)}.card{border:1px solid var(--line);padding:2rem;min-height:420px;display:flex;flex-direction:column}.card.featured{background:var(--sand)}.tag{font-size:.7rem;letter-spacing:.16em;color:var(--petrol);font-weight:600}.card h3{font-size:1.7rem;line-height:1.15;margin:1.4rem 0}.card a{margin-top:auto;font-weight:600;color:var(--navy)}.prices{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:.65rem 1rem;margin:1.4rem 0}.prices strong,.price-single strong{font:600 2rem 'Manrope',sans-serif}.prices span,.price-single span,.small{font-size:.84rem;color:#526163}.price-single{display:flex;gap:.8rem;align-items:baseline;margin-top:1.4rem}.online{background:var(--navy);color:white;display:grid;grid-template-columns:1.35fr .65fr;gap:8vw}.online-copy{max-width:700px}.online ol{padding-left:1.2rem}.online li{padding:.55rem 0;border-bottom:1px solid rgba(255,255,255,.15)}.online-plans{align-self:center}.online-plans>div{border-top:1px solid rgba(255,255,255,.3);padding:1.2rem 0;display:flex;justify-content:space-between;align-items:baseline}.online-plans strong{font:600 2.1rem 'Manrope',sans-serif}.online-plans .button{margin-top:1.5rem}.service-list{border-top:1px solid var(--line)}.service-list article{display:grid;grid-template-columns:1fr auto;gap:2rem;padding:2rem 0;border-bottom:1px solid var(--line);align-items:center}.service-list article>div{display:grid;grid-template-columns:3rem minmax(180px,320px) 1fr;gap:1.2rem;align-items:start}.service-list h3{font-size:1.45rem;margin:0}.service-list p{margin:0;color:#526163}.service-list>article>strong{font:600 1.8rem 'Manrope',sans-serif;text-align:right}.service-list small{font:400 .75rem 'DM Sans',sans-serif}.schedule-note,.payment{text-align:center;margin-top:2rem;color:#526163}.packages{background:var(--sand)}.package{padding:2.4rem;background:var(--white);min-height:360px;display:flex;flex-direction:column}.package.premium{background:var(--petrol);color:white}.package p{font-size:.78rem;letter-spacing:.15em;text-transform:uppercase}.package h3{font-size:1.8rem;line-height:1.15}.package strong{font:600 2.9rem 'Manrope',sans-serif;margin-top:1rem}.package span{font-size:.9rem}.package a{margin-top:auto;font-weight:600}.yoko{display:grid;grid-template-columns:1fr 1fr;background:var(--petrol);color:white}.yoko img{height:100%;min-height:650px;object-fit:cover}.yoko>div{padding:8rem 7vw;align-self:center}.final-cta{text-align:center}.final-cta h2{max-width:900px;margin-left:auto;margin-right:auto}.dark-button{background:var(--navy);color:white;margin:1.5rem .8rem}.instagram{display:block;margin-top:1rem;color:var(--petrol)}footer{padding:2rem 5vw;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:.78rem;letter-spacing:.08em}@media(max-width:850px){.topbar{height:64px}.menu{display:block}nav{display:none;position:absolute;top:64px;left:0;right:0;padding:1.4rem 5vw;background:var(--white);flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}.hero{min-height:78vh}.hero-copy{padding:5rem 6vw}.hero h1{font-size:3.8rem}.section{padding:5.5rem 6vw}.two-col,.section-head,.online,.yoko{grid-template-columns:1fr}.cards.three{grid-template-columns:1fr}.card{min-height:unset}.section-head{gap:1rem}.photo-break{height:60vh}.service-list article{grid-template-columns:1fr}.service-list article>div{grid-template-columns:2.5rem 1fr}.service-list article>div p{grid-column:2}.service-list>article>strong{text-align:left;margin-left:3.7rem}.yoko img{min-height:480px}.yoko>div{padding:5rem 6vw}footer{flex-direction:column;gap:.65rem}.online{gap:3rem}}
