:root{--ink:#1d1d1f;--muted:#6e6e73;--soft:#f5f5f7;--blue:#0071e3;--line:#d2d2d7}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font:17px/1.47 -apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.nav-wrap{position:fixed;z-index:20;inset:0 0 auto;height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100vw - 1080px)/2));background:#fafafccc;border-bottom:1px solid #00000014;backdrop-filter:saturate(180%) blur(20px)}.brand{font-weight:650;letter-spacing:-.03em}.nav-wrap nav{display:flex;gap:34px}.nav-wrap nav a{font-size:.77rem;color:#333}.nav-cta,.button{background:var(--blue);color:#fff;border:0;border-radius:999px;padding:11px 19px;font:500 .9rem inherit;cursor:pointer;transition:.25s}.nav-cta{padding:6px 14px;font-size:.78rem}.button:hover,.nav-cta:hover{background:#0077ed;transform:scale(1.025)}.hero{text-align:center;padding:150px 24px 0;overflow:hidden}.kicker{margin:0 0 15px;color:#86868b;font-size:.83rem;font-weight:600}.hero h1,.intro h2,.about h2,.booking h2,.faq h2{font-weight:700;letter-spacing:-.055em;line-height:.98;margin:0}.hero h1{font-size:clamp(3.6rem,7.6vw,7rem)}.hero h1 span,.intro h2 span{background:linear-gradient(90deg,#777,#111 45%,#888);background-clip:text;color:transparent}.hero-copy{max-width:640px;margin:25px auto 0;color:var(--muted);font-size:clamp(1.1rem,2vw,1.4rem);letter-spacing:-.02em}.hero-actions{display:flex;gap:25px;justify-content:center;align-items:center;margin:31px 0 58px}.link{color:var(--blue)}.link:hover{text-decoration:underline}.link b{font-size:1.35em}.hero-visual{position:relative;max-width:1220px;height:min(66vw,690px);min-height:460px;margin:auto;border-radius:34px 34px 0 0;overflow:hidden;background:#111;box-shadow:0 34px 90px #00000029}.hero-visual img{width:100%;height:100%;object-fit:cover}.hero-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#0006,transparent 45%)}.visual-caption{position:absolute;z-index:2;left:30px;right:30px;bottom:26px;display:flex;align-items:center;gap:9px;color:#fff;font-size:.86rem;text-align:left}.visual-caption span{margin-left:auto;color:#ffffffb8}.visual-caption i{width:8px;height:8px;border-radius:50%;background:#32d74b;box-shadow:0 0 0 5px #32d74b2b}.intro{background:var(--soft);text-align:center;padding:130px max(24px,calc((100vw - 1200px)/2))}.intro h2,.about h2,.booking h2,.faq h2{font-size:clamp(3rem,6vw,5.4rem)}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:65px;text-align:left}.service-card{min-height:420px;padding:42px;border-radius:30px;display:flex;flex-direction:column;justify-content:space-between;background:#fff;box-shadow:0 2px 16px #0000000a;transition:.35s}.service-card:hover{transform:translateY(-7px);box-shadow:0 18px 45px #00000017}.service-card.featured{background:linear-gradient(145deg,#fff 35%,#e9eef9)}.service-card.dark{background:radial-gradient(circle at 80% 90%,#3c3c3f,#161617 55%);color:#fff}.service-card.soft{background:linear-gradient(145deg,#e9f4ff,#f8fbff)}.service-card small{font-size:.76rem;color:#86868b;font-weight:600}.service-card h3{font-size:clamp(2rem,4vw,3.6rem);line-height:1;letter-spacing:-.05em;margin:16px 0}.service-card p{color:var(--muted);max-width:420px}.dark p{color:#b9b9bf}.service-card>strong{align-self:flex-end;font-size:3.8rem;letter-spacing:-.07em;color:#d2d2d7}.dark>strong{color:#4d4d52}.service-card em{font-size:1rem;letter-spacing:0;font-style:normal}.about{max-width:1200px;margin:auto;padding:150px 24px;display:grid;grid-template-columns:.92fr 1.08fr;gap:100px}.about-copy{position:sticky;top:130px}.about-copy>p:nth-of-type(2){font-size:1.23rem;color:var(--muted);max-width:500px;margin:28px 0}.principles{border-top:1px solid var(--line)}.principles>div{padding:38px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:55px 1fr;column-gap:20px}.principles span{font-size:.78rem;color:#86868b}.principles h3{font-size:1.9rem;letter-spacing:-.04em;margin:-8px 0 8px}.principles p{grid-column:2;color:var(--muted);margin:0}.booking{position:relative;overflow:hidden;text-align:center;background:#000;color:#f5f5f7;padding:135px 24px;margin:0 24px;border-radius:34px}.booking>p:nth-of-type(2){color:#a1a1a6;font-size:1.25rem}.button.light{background:#f5f5f7;color:#111;margin-top:22px;position:relative;z-index:2}.booking-glow{position:absolute;width:700px;height:320px;left:50%;bottom:-230px;transform:translateX(-50%);background:#147ce5;border-radius:50%;filter:blur(85px);opacity:.65}.booking-info{position:relative;z-index:2;max-width:520px;margin:25px auto 0;padding:17px;background:#1c1c1e;border:1px solid #3a3a3c;border-radius:16px;display:flex;flex-direction:column}.booking-info span{font-size:.86rem;color:#aaa}.booking-info[hidden]{display:none}.faq{max-width:1120px;margin:auto;padding:150px 24px;display:grid;grid-template-columns:.72fr 1.28fr;gap:90px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:24px 2px}summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;font-weight:550}summary::-webkit-details-marker{display:none}summary span{font-size:1.4rem;transition:.2s}details[open] summary span{transform:rotate(45deg)}details p{color:var(--muted)}footer{border-top:1px solid var(--line);max-width:1120px;margin:auto;padding:28px 0 45px;display:flex;justify-content:space-between;color:var(--muted);font-size:.8rem}footer .brand{color:var(--ink)}footer>a:last-child{color:var(--blue)}@media(max-width:780px){.nav-wrap{padding:0 20px}.nav-wrap nav{display:none}.hero{padding:120px 18px 0}.hero h1{font-size:3.75rem}.hero-actions{margin-bottom:42px}.hero-visual{height:560px;min-height:0;border-radius:25px 25px 0 0}.hero-visual img{object-position:66% center}.visual-caption span{display:none}.intro{padding:100px 18px}.service-grid{grid-template-columns:1fr;margin-top:45px}.service-card{min-height:350px;padding:30px}.about{grid-template-columns:1fr;gap:55px;padding:105px 22px}.about-copy{position:static}.booking{margin:0 14px;padding:100px 22px}.faq{grid-template-columns:1fr;gap:50px;padding:105px 22px}footer{margin:0 22px;flex-direction:column;gap:9px;align-items:center}}@media(max-width:430px){.hero h1{font-size:3.2rem}.hero-actions{flex-direction:column;gap:14px}.hero-visual{height:500px}.service-card{min-height:325px}}
