.page-styled *{box-sizing:border-box}
.page-styled{font-family:Manrope,Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff;max-width:none;padding:0;margin:0}
.page-styled img{display:block;width:100%;object-fit:cover}
.page-styled a{text-decoration:none;color:inherit}
.page-styled button,.page-styled input,.page-styled textarea,.page-styled select{font:inherit}
.page-styled .eyebrow{display:inline-flex;align-items:center;gap:10px;text-transform:uppercase;letter-spacing:.18em;font-size:.74rem;font-weight:700;color:var(--teal-2)}
.page-styled .eyebrow:before{content:"";width:34px;height:1px;background:var(--gold)}
.page-styled h1,.page-styled h2,.page-styled h3{font-family:"DM Serif Display",Georgia,serif;font-weight:400;line-height:1.08;margin:0;color:var(--navy)}
.page-styled h1{font-size:clamp(3.2rem,6.5vw,6.3rem)}
.page-styled h2{font-size:clamp(2.25rem,4.5vw,4rem)}
.page-styled h3{font-size:1.55rem}
.page-styled p{margin:0;color:var(--muted)}

.page-styled .hero{position:relative;overflow:hidden;background:var(--cream)}
.page-styled .hero-grid{min-height:700px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:70px;padding:90px 0}
.page-styled .hero h1{margin:17px 0 25px}
.page-styled .hero-copy>p{font-size:1.08rem;max-width:620px}
.page-styled .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}
.page-styled .quick-facts{display:flex;gap:30px;flex-wrap:wrap;margin-top:45px}
.page-styled .fact strong{display:block;color:var(--navy)}
.page-styled .fact span{font-size:.8rem;color:var(--muted)}
.page-styled .hero-media{position:relative}
.page-styled .hero-media img{height:575px;border-radius:32px}
.page-styled .hero-card{position:absolute;left:-38px;bottom:38px;background:#fff;border-radius:20px;padding:22px 25px;box-shadow:var(--shadow);max-width:290px}
.page-styled .hero-card strong{display:block;color:var(--navy);margin-bottom:5px}
.page-styled .hero-card span{font-size:.83rem;color:var(--muted)}

.page-styled .anchorbar{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:84px;z-index:30}
.page-styled .anchorbar .container{display:flex;gap:28px;overflow:auto;white-space:nowrap}
.page-styled .anchorbar a{padding:18px 0;font-size:.84rem;font-weight:700;color:#65747a;border-bottom:2px solid transparent;display:inline-block}
.page-styled .anchorbar a:hover{color:var(--teal-2);border-color:var(--gold)}
.page-styled section{padding:105px 0}
.page-styled .section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}
.page-styled .section-head h2{max-width:700px;margin-top:14px}
.page-styled .section-head p{max-width:430px}
.page-styled .intro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:80px;align-items:center}
.page-styled .intro-image img{height:600px;border-radius:28px}
.page-styled .intro-copy h2{margin:15px 0 24px}
.page-styled .intro-copy p+p{margin-top:16px}
.page-styled .bullet-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:28px 0 34px}
.page-styled .bullet{display:flex;gap:11px;font-weight:700;color:var(--navy);font-size:.9rem}
.page-styled .bullet span{color:var(--teal-2)}

.page-styled .benefits{background:var(--navy)}
.page-styled .benefits h2,.page-styled .benefits h3{color:#fff}
.page-styled .benefits .eyebrow{color:#bed3d1}
.page-styled .benefits .section-head p{color:#b7c5c9}
.page-styled .benefit-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.page-styled .benefit{padding:30px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.04);border-radius:22px}
.page-styled .benefit-icon{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.1);display:grid;place-items:center;color:var(--gold);font-weight:700;margin-bottom:25px}
.page-styled .benefit p{color:#b9c6ca;font-size:.9rem;margin-top:11px}

.page-styled .suitability{background:var(--cream)}
.page-styled .split-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.page-styled .info-card{padding:38px;background:#fff;border-radius:24px;box-shadow:0 12px 35px rgba(13,43,58,.06)}
.page-styled .info-card h3{margin-bottom:18px}
.page-styled .info-card ul{padding:0;margin:0;list-style:none;display:grid;gap:12px}
.page-styled .info-card li{position:relative;padding-left:28px;color:#54666d}
.page-styled .info-card li:before{content:"\2713";position:absolute;left:0;color:var(--teal-2);font-weight:700}

.page-styled .process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.page-styled .step{padding:28px;border:1px solid var(--line);border-radius:22px}
.page-styled .step-no{font-family:"DM Serif Display";font-size:3.2rem;line-height:1;color:var(--gold);margin-bottom:24px}
.page-styled .step p{font-size:.9rem;margin-top:10px}
.page-styled .gallery{background:#f9fbfa}
.page-styled .gallery-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}
.page-styled .gallery-main,.page-styled .gallery-small{position:relative;overflow:hidden;border-radius:26px;min-height:560px}
.page-styled .gallery-small{min-height:268px}
.page-styled .gallery-stack{display:grid;gap:24px}
.page-styled .gallery img{position:absolute;inset:0;height:100%}
.page-styled .gallery-label{position:absolute;left:18px;right:18px;bottom:18px;background:rgba(255,255,255,.94);padding:18px;border-radius:16px}
.page-styled .gallery-label strong{color:var(--navy);display:block}
.page-styled .gallery-label span{font-size:.8rem;color:var(--muted)}

.page-styled .cost-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:stretch}
.page-styled .price-card{background:var(--navy);color:#fff;padding:50px;border-radius:28px}
.page-styled .price-card h2{color:#fff;margin:14px 0 16px}
.page-styled .price-card p{color:#c1cdd0}
.page-styled .price{font-family:"DM Serif Display";font-size:4.4rem;line-height:1;color:#fff;margin:30px 0 10px}
.page-styled .price small{font-family:Manrope;font-size:.9rem;color:#bec9cc}
.page-styled .price-points{display:grid;gap:12px;margin:28px 0 35px}
.page-styled .price-points div{display:flex;gap:10px;color:#e5ecee}
.page-styled .finance-card{background:var(--cream);padding:50px;border-radius:28px}
.page-styled .finance-card h3{font-size:2rem;margin-bottom:18px}
.page-styled .finance-card p+p{margin-top:15px}
.page-styled .finance-note{border-left:3px solid var(--gold);padding-left:18px;margin-top:24px;font-size:.88rem}
.page-styled .finance-card a{color:var(--teal-2);font-weight:700}

.page-styled .reviews{background:var(--cream)}
.page-styled .review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.page-styled .review{background:#fff;padding:30px;border-radius:22px;box-shadow:0 12px 35px rgba(13,43,58,.06)}
.page-styled .stars{color:var(--gold);letter-spacing:.15em;margin-bottom:18px}
.page-styled .review p{color:#41545b}
.page-styled .reviewer{margin-top:22px;font-weight:700;color:var(--navy)}
.page-styled .reviewer span{display:block;font-size:.75rem;font-weight:400;color:var(--muted)}

.page-styled .faq-grid{display:grid;grid-template-columns:.65fr 1.35fr;gap:70px}
.page-styled .faq-intro h2{margin:14px 0 22px}
.page-styled .faq-list{display:grid;gap:14px}
.page-styled details{border:1px solid var(--line);border-radius:18px;background:#fff;padding:0 22px}
.page-styled summary{cursor:pointer;list-style:none;padding:21px 36px 21px 0;font-weight:700;color:var(--navy);position:relative}
.page-styled summary::-webkit-details-marker{display:none}
.page-styled summary:after{content:"+";position:absolute;right:0;font-size:1.4rem;color:var(--teal-2)}
.page-styled details[open] summary:after{content:"\2212"}
.page-styled .answer{padding:0 0 22px}
.page-styled .answer p{font-size:.92rem}

.page-styled .cta{padding:0 0 105px}
.page-styled .cta-wrap{position:relative;overflow:hidden;background:var(--navy);border-radius:32px;padding:75px;color:#fff}
.page-styled .cta-wrap:after{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-90px;top:-100px}
.page-styled .cta h2{color:#fff;max-width:720px}
.page-styled .cta p{color:#c4d0d3;max-width:650px;margin:20px 0 30px}
.page-styled .cta-actions{display:flex;gap:14px;flex-wrap:wrap}

.page-styled .home-contact{background:#fff}
.page-styled .contact-card{display:grid;grid-template-columns:.9fr 1.1fr;border-radius:32px;overflow:hidden;box-shadow:var(--shadow)}
.page-styled .contact-info{background:var(--navy);padding:58px;color:#fff}
.page-styled .contact-info h2{color:#fff;margin:14px 0 18px}
.page-styled .contact-info p{color:#c1cdd0}
.page-styled .contact-list{display:grid;gap:18px;margin-top:30px}
.page-styled .contact-list strong{display:block;color:#fff}
.page-styled .contact-list span{font-size:.84rem;color:#bcc8cb}
.page-styled .form-area{padding:58px;background:#fff}
.page-styled .form-area h3{margin-bottom:12px}
.page-styled .form-embed{margin-top:20px}

/* Team member cards (Meet the Team) */
.page-styled .team-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.page-styled .team-card{padding:32px;background:#fff;border:1px solid var(--line);border-radius:24px;text-align:center}
.page-styled .team-card-photo{width:120px;height:120px;border-radius:50%;margin:0 auto 20px;background:var(--cream);display:flex;align-items:center;justify-content:center;color:#a9b6ba;font-size:.75rem;overflow:hidden}
.page-styled .team-card-photo img{width:100%;height:100%;object-fit:cover}
.page-styled .team-card h3{margin-bottom:4px}
.page-styled .team-card-role{color:var(--teal-2);font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}
.page-styled .team-card p{font-size:.9rem}

/* Uniform card grid (Before and After Gallery) */
.page-styled .simple-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.page-styled .simple-card{border-radius:24px;overflow:hidden;border:1px solid var(--line);background:#fff}
.page-styled .simple-card-media{position:relative;min-height:220px;overflow:hidden}
.page-styled .simple-card-media img{position:absolute;inset:0;height:100%}
.page-styled .simple-card-body{padding:24px}
.page-styled .simple-card-eyebrow{display:block;color:var(--teal-2);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.page-styled .simple-card-body p{margin-top:8px;font-size:.9rem}

/* Fees table */
.page-styled .fees-table-wrap{border-radius:24px;overflow:hidden;border:1px solid var(--line)}
.page-styled table.fees-table{width:100%;border-collapse:collapse}
.page-styled table.fees-table th{background:var(--navy);color:#fff;text-align:left;padding:18px 24px;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em}
.page-styled table.fees-table td{padding:16px 24px;border-bottom:1px solid var(--line);font-size:.92rem;color:var(--ink)}
.page-styled table.fees-table tr:last-child td{border-bottom:0}
.page-styled table.fees-table tr:nth-child(even) td{background:#f9fbfa}

/* Contact details / directions */
.page-styled .contact-detail-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.page-styled .map-embed{border-radius:24px;overflow:hidden;border:1px solid var(--line);min-height:320px;display:flex;align-items:center;justify-content:center;background:#f9fbfa;color:#7c898e;text-align:center;padding:24px}

@media(max-width:980px){
  .page-styled .team-card-grid,.page-styled .simple-card-grid{grid-template-columns:repeat(2,1fr)}
  .page-styled .contact-detail-grid{grid-template-columns:1fr 1fr}
  .page-styled .hero-grid,.page-styled .intro-grid,.page-styled .cost-grid,.page-styled .faq-grid,.page-styled .contact-card{grid-template-columns:1fr}
  .page-styled .hero-grid{padding:70px 0}
  .page-styled .hero-media img{height:480px}
  .page-styled .hero-card{left:20px}
  .page-styled .benefit-grid,.page-styled .process-grid{grid-template-columns:repeat(2,1fr)}
  .page-styled .review-grid{grid-template-columns:1fr 1fr}
  .page-styled .gallery-grid{grid-template-columns:1fr}
  .page-styled .anchorbar{top:84px}
}
@media(max-width:640px){
  .page-styled .anchorbar{top:72px}
  .page-styled .hero-grid{gap:38px}
  .page-styled .hero-media img{height:390px}
  .page-styled .hero-card{position:static;margin:-28px 16px 0}
  .page-styled .hero-actions .btn,.page-styled .cta-actions .btn{width:100%}
  .page-styled .quick-facts{gap:18px}
  .page-styled .section-head{display:block}
  .page-styled .section-head p{margin-top:16px}
  .page-styled .bullet-grid,.page-styled .split-cards,.page-styled .benefit-grid,.page-styled .process-grid,.page-styled .review-grid{grid-template-columns:1fr}
  .page-styled .intro-grid{gap:42px}
  .page-styled .intro-image img{height:430px}
  .page-styled .gallery-main,.page-styled .gallery-small{min-height:390px}
  .page-styled .price-card,.page-styled .finance-card,.page-styled .contact-info,.page-styled .form-area{padding:36px 24px}
  .page-styled .cta-wrap{padding:50px 25px}
  .page-styled .team-card-grid,.page-styled .simple-card-grid,.page-styled .contact-detail-grid{grid-template-columns:1fr}
  .page-styled section{padding:78px 0}
}
