
/* Premium homepage upgrade, added after Astro output */
.home-hero{position:relative;isolation:isolate;min-height:680px;display:flex;align-items:center;padding:112px 0 104px;background:#081225;color:var(--cream);overflow:hidden}
.home-hero .hero-bg-photo{position:absolute;inset:0;z-index:-3;display:block}
.home-hero .hero-bg-photo img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.96) contrast(1.02)}
.home-hero:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(6,14,30,.92) 0%,rgba(6,14,30,.78) 38%,rgba(6,14,30,.42) 66%,rgba(6,14,30,.16) 100%)}
.home-hero:after{content:"";position:absolute;inset:auto 0 0;height:42%;z-index:-1;background:linear-gradient(180deg,transparent,rgba(6,14,30,.86))}
.home-hero .hero-grid{display:block;max-width:1180px}
.home-hero .hero-copy{max-width:760px;padding:0}
.home-hero .eyebrow{color:var(--gold-soft);letter-spacing:.18em;margin-bottom:16px}
.home-hero .h1{color:#fff;font-size:clamp(2.7rem,6vw,5rem);line-height:.98;letter-spacing:-.035em;margin-bottom:20px;text-wrap:balance}
.home-hero .lead{color:#dbe5ee;font-size:clamp(1.02rem,1.7vw,1.24rem);line-height:1.62;max-width:66ch;margin-bottom:30px}
.home-hero .actions{gap:14px;margin-bottom:24px}
.home-hero .btn{min-height:52px}
.hero-trust-strip{display:flex;align-items:center;gap:12px;flex-wrap:wrap;max-width:850px;color:#d9e2ec;background:rgba(8,18,37,.58);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:11px 16px;backdrop-filter:blur(10px);font-size:.95rem;box-shadow:0 16px 46px -28px #000}
.hero-trust-strip strong{color:#fff;font-weight:800}.hero-trust-strip span{color:var(--gold-soft)}
.premium-section{padding:88px 0}.premium-section.compact{padding:72px 0}.premium-muted{background:linear-gradient(180deg,var(--cream-2),#f5efe3)}
.service-pathways .section-head,.experience-section .section-head,.home-gallery-premium .section-head,.booking-section .section-head,.reviews-premium .section-head{margin-bottom:34px}
.pathway-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.path-card{position:relative;overflow:hidden;min-height:245px;display:flex;flex-direction:column;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px;box-shadow:var(--shadow-soft);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.path-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:#d5c6a8}.path-card h3{font-size:1.28rem;margin:10px 0 10px}.path-card p{margin:0}.path-card .text-link{margin-top:18px}.path-card .tag{color:var(--gold);font-size:.7rem}
.experience-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.78fr);gap:28px;align-items:stretch}
.experience-lead{background:var(--navy);color:var(--cream);border-radius:26px;padding:36px;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow)}
.experience-lead h2{color:#fff;margin:10px 0 16px}.experience-lead .sub{color:#c7d2df}.experience-list{display:grid;gap:16px}.experience-list .card{padding:22px;border-radius:20px}.experience-list h3{font-family:var(--sans);font-size:1.02rem;font-weight:800;color:var(--ink)}
.photo-wall{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:112px;gap:14px}
.photo-wall a{position:relative;overflow:hidden;border-radius:20px;border:1px solid rgba(12,24,48,.14);background:#0b1726;box-shadow:0 16px 44px -30px rgba(6,14,30,.7)}
.photo-wall a:nth-child(1){grid-column:span 5;grid-row:span 3}.photo-wall a:nth-child(2){grid-column:span 4;grid-row:span 3}.photo-wall a:nth-child(3){grid-column:span 3;grid-row:span 3}.photo-wall a:nth-child(4){grid-column:span 3;grid-row:span 2}.photo-wall a:nth-child(5){grid-column:span 3;grid-row:span 2}.photo-wall a:nth-child(6){grid-column:span 3;grid-row:span 2}.photo-wall a:nth-child(7){grid-column:span 3;grid-row:span 2}.photo-wall a:nth-child(8){grid-column:span 4;grid-row:span 2}.photo-wall a:nth-child(9){grid-column:span 4;grid-row:span 2}.photo-wall a:nth-child(10){grid-column:span 4;grid-row:span 2}
.photo-wall picture,.photo-wall img{width:100%;height:100%;display:block}.photo-wall img{object-fit:cover;transition:transform .35s ease,opacity .2s ease}.photo-wall a:hover img{transform:scale(1.035)}
.photo-wall .caption{position:absolute;left:0;right:0;bottom:0;padding:42px 16px 13px;background:linear-gradient(180deg,transparent,rgba(6,14,30,.84));color:#fff;font-size:.88rem;font-weight:800;line-height:1.25;opacity:.98}
.gallery-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:26px;flex-wrap:wrap}.gallery-actions .sub{max-width:60ch;margin:0}
.booking-section{background:var(--navy);color:var(--cream)}.booking-section h2,.booking-section h3{color:#fff}.booking-section .sub{color:#b8c5d2}.steps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.step-card{position:relative;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.13);border-radius:22px;padding:28px;min-height:210px}.step-card .number{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:999px;background:linear-gradient(135deg,var(--gold),var(--gold-soft));color:#211704;font-weight:900;margin-bottom:20px}.step-card p{margin-bottom:0}
.weekly-strip{background:#fff;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.weekly-card{display:grid;grid-template-columns:.72fr 1fr;gap:28px;align-items:center}.weekly-list{display:grid;gap:12px}.weekly-item{display:grid;grid-template-columns:150px 1fr;gap:12px;background:var(--cream-2);border:1px solid var(--line);border-radius:16px;padding:15px}.weekly-item b{display:block;color:var(--ink)}.weekly-item span:first-child{font-weight:800;color:var(--gold)}
.reviews-premium .review-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.review-card{background:#fff;border:1px solid var(--line);border-radius:22px;padding:26px;box-shadow:var(--shadow-soft)}.review-card blockquote{margin:12px 0 18px;font-size:1.02rem;line-height:1.55;color:var(--ink)}.review-card figcaption{font-weight:800;color:var(--body)}.review-card .tag{color:var(--gold)}
.gallery-page-photo{display:block;overflow:hidden;border-radius:14px;border:1px solid var(--line);background:#0b1726;aspect-ratio:1;box-shadow:var(--shadow-soft)}.gallery-page-photo img{width:100%;height:100%;object-fit:cover;transition:transform .28s ease}.gallery-page-photo:hover img{transform:scale(1.035)}
.fd-lightbox{width:min(94vw,1100px);max-height:90vh;border:0;border-radius:22px;padding:0;background:#061021;box-shadow:0 24px 90px rgba(0,0,0,.55);overflow:hidden}.fd-lightbox::backdrop{background:rgba(6,14,30,.82);backdrop-filter:blur(4px)}.fd-lightbox img{display:block;width:100%;max-height:82vh;object-fit:contain;background:#061021}.fd-lightbox button{position:absolute;right:14px;top:14px;z-index:2;border:1px solid rgba(255,255,255,.25);background:rgba(6,14,30,.78);color:#fff;border-radius:999px;padding:10px 14px;font-weight:800;cursor:pointer}
@media (max-width:1050px){.pathway-grid{grid-template-columns:repeat(3,1fr)}.reviews-premium .review-grid{grid-template-columns:repeat(2,1fr)}.photo-wall{grid-auto-rows:100px}.weekly-card{grid-template-columns:1fr}}
@media (max-width:900px){.home-hero{min-height:auto;padding:430px 0 62px;align-items:flex-end}.home-hero:before{background:linear-gradient(180deg,rgba(6,14,30,.05) 0%,rgba(6,14,30,.42) 38%,rgba(6,14,30,.92) 70%,rgba(6,14,30,.97) 100%)}.home-hero .hero-bg-photo img{object-position:center top}.home-hero .h1{font-size:clamp(2.25rem,9vw,3.25rem);line-height:1.02}.home-hero .lead{font-size:1rem}.hero-trust-strip{border-radius:18px}.pathway-grid{grid-template-columns:1fr 1fr}.experience-panel{grid-template-columns:1fr}.photo-wall{grid-template-columns:repeat(2,1fr);grid-auto-rows:auto}.photo-wall a,.photo-wall a:nth-child(n){grid-column:auto;grid-row:auto;aspect-ratio:4/3}.steps-grid{grid-template-columns:1fr}.weekly-item{grid-template-columns:1fr}.premium-section{padding:64px 0}}
@media (max-width:560px){.home-hero{padding:360px 0 54px}.home-hero .actions{display:grid;grid-template-columns:1fr;gap:12px}.home-hero .btn{justify-content:center}.pathway-grid,.reviews-premium .review-grid{grid-template-columns:1fr}.path-card{min-height:0}.photo-wall{grid-template-columns:1fr}.photo-wall a:nth-child(n){aspect-ratio:1.12/1}.photo-wall .caption{font-size:.84rem}.gallery-actions{align-items:flex-start;flex-direction:column}.experience-lead{padding:28px}.premium-section{padding:58px 0}.home-hero .eyebrow{font-size:.68rem}}
