:root{--blue:#2f6fe4;--text:#101114;--muted:#5b6270;--light:#f7f7f8;--line:#e8e8ea;--gold:#f2b01e;}*{box-sizing:border-box;}body{font-family:'Inter',sans-serif;margin:0;background:#fff;color:var(--text);} .container{width:min(1100px,calc(100% - 28px));margin:0 auto;} .header{padding:14px 0 12px;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:20;} .logo{display:block;height:66px;margin:0 auto 10px;} .nav{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:14px 20px;} .nav a{text-decoration:none;color:#222;font-size:17px;font-weight:600;} .book-btn{background:var(--blue);color:#fff !important;padding:10px 16px;border-radius:10px;} .hero{padding:26px 0 24px;} .hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:22px;align-items:center;} .hero-copy{text-align:left;} .eyebrow{margin:0 0 8px;color:var(--blue);font-size:14px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;} .hero h1{margin:0 0 10px;font-size:54px;line-height:1.02;letter-spacing:-0.03em;font-weight:800;} .hero-text{margin:0;font-size:20px;line-height:1.45;color:var(--muted);max-width:650px;} .hero-buttons{display:flex;gap:14px;flex-wrap:wrap;margin:22px 0 16px;} .book-main,.secondary-btn,.book-small{text-decoration:none;border-radius:12px;font-weight:700;} .book-main{display:inline-block;background:var(--blue);color:#fff;padding:15px 26px;font-size:18px;} .secondary-btn{display:inline-block;background:#fff;color:var(--text);border:1px solid var(--line);padding:15px 22px;font-size:18px;} .service-area{margin:0;color:var(--muted);font-size:18px;line-height:1.5;} .hero-panel{display:flex;justify-content:flex-end;} .hero-box{width:100%;background:var(--light);border:1px solid var(--line);border-radius:18px;padding:24px;} .hero-box h3{margin:0 0 8px;font-size:24px;} .hero-box p{margin:0 0 12px;color:var(--muted);font-size:17px;line-height:1.5;} .hero-box ul,.card ul,.membership-card ul{margin:0;padding-left:20px;} .hero-box li,.card li,.membership-card li{margin:8px 0;color:#222;line-height:1.45;font-size:17px;} .section{padding:40px 0;} .alt{background:#fafafa;} .section-head{text-align:center;margin-bottom:18px;} .section-head h2,.membership-copy h2,.area-section h2{margin:0 0 8px;font-size:38px;line-height:1.08;letter-spacing:-0.02em;} .section-head p,.membership-copy p,.area-section p{margin:0;font-size:18px;color:var(--muted);line-height:1.5;} .cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;} .card{background:var(--light);border:1px solid var(--line);border-radius:18px;padding:24px;text-align:left;position:relative;} .card h3{margin:0 0 8px;font-size:30px;line-height:1.1;} .price{font-size:42px;font-weight:800;margin-bottom:14px;letter-spacing:-0.03em;} .book-small{display:inline-block;margin-top:14px;background:var(--blue);color:#fff;padding:12px 18px;font-size:16px;} .highlight{border:2px solid var(--blue);} .tag{position:absolute;top:14px;right:14px;background:var(--blue);color:#fff;font-size:12px;font-weight:700;padding:6px 10px;border-radius:999px;} .value-note{margin:-4px 0 12px;color:var(--blue);font-size:15px;font-weight:700;} .pricing-note{margin:18px 0 0;text-align:center;color:var(--muted);font-size:14px;line-height:1.5;} .membership-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:22px;align-items:center;} .membership-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:24px;} .membership-card h3{margin:0 0 8px;font-size:30px;} .review-summary{display:flex;align-items:center;justify-content:center;gap:18px;margin:0 auto 22px;padding:18px 20px;max-width:520px;background:var(--light);border:1px solid var(--line);border-radius:18px;} .summary-rating{font-size:46px;font-weight:800;line-height:1;} .big-stars,.stars{color:var(--gold);} .big-stars{font-size:22px;margin-bottom:4px;} .summary-text{margin:0;color:var(--muted);font-size:16px;} .review p{margin:0 0 8px;font-size:17px;line-height:1.55;} .reviewer{color:var(--muted);font-size:15px;font-weight:600;} .slider-wrap{max-width:900px;margin:0 auto 22px;} .compare-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;} .compare-top{display:flex;justify-content:space-between;font-weight:700;margin-bottom:12px;} .compare-box{position:relative;height:340px;border-radius:18px;overflow:hidden;background:#dfe3e8;} .compare-before,.compare-after{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800;} .compare-before{background:linear-gradient(135deg,#cfd4da,#b7bcc3);color:#374151;} .compare-after{background:linear-gradient(135deg,#ddecff,#b8d4ff);color:#18418f;clip-path:inset(0 0 0 50%);} .compare-line{position:absolute;top:0;bottom:0;left:50%;width:3px;background:#fff;box-shadow:0 0 0 1px rgba(0,0,0,.08);transform:translateX(-50%);} .compare-slider{position:absolute;inset:auto 18px 18px 18px;width:calc(100% - 36px);} .thumb-grid{margin-top:18px;} .photos{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;} .photo{height:150px;background:#e5e5e7;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#444;} .area-section{text-align:center;} .area-section .book-main{margin-top:18px;} .footer{background:#f7f7f8;padding:28px 0 84px;text-align:center;} .footer-logo{height:50px;margin-bottom:10px;} .contact p{margin:4px 0;} .social{display:flex;justify-content:center;flex-wrap:wrap;gap:18px;margin:10px 0 8px;} .social a,.email-link{text-decoration:none;color:#222;font-weight:600;} .email-link{color:var(--blue);} .floating-book{position:fixed;right:18px;bottom:18px;background:var(--blue);color:#fff;text-decoration:none;padding:14px 18px;border-radius:999px;font-weight:800;box-shadow:0 10px 24px rgba(47,111,228,.28);z-index:25;} .reveal{opacity:0;transform:translateY(22px);transition:opacity .5s ease,transform .5s ease;} .reveal.active,.visible-on-load{opacity:1;transform:none;} @media (max-width:900px){.hero-grid,.membership-layout,.cards,.photos{grid-template-columns:1fr;} .hero{padding:18px 0 18px;} .hero-copy{text-align:center;} .hero h1{font-size:42px;} .hero-text{font-size:18px;margin:0 auto;} .hero-buttons{justify-content:center;} .hero-panel{justify-content:center;} .card,.membership-card{text-align:left;} .compare-box{height:260px;}} @media (max-width:560px){.logo{height:56px;} .nav{gap:12px 16px;} .nav a{font-size:16px;} .hero h1{font-size:36px;} .hero-text,.section-head p,.membership-copy p,.area-section p,.service-area{font-size:17px;} .section-head h2,.membership-copy h2,.area-section h2{font-size:32px;} .card h3,.membership-card h3{font-size:28px;} .price{font-size:40px;} .book-main,.secondary-btn,.book-small{width:100%;text-align:center;} .review-summary{flex-direction:column;text-align:center;}}