@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{--ink:#061521;--ink2:#0b2230;--sea:#9ed9d2;--sea2:#4ba9a8;--foam:#eef6f4;--gold:#d99565;--muted:#9bb1b8;--line:rgba(230,245,243,.14);--white:#f6f4ef;--shadow:0 25px 80px rgba(0,0,0,.35);--serif:'Cormorant Garamond',serif;--sans:'Manrope',sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:var(--white);font-family:var(--sans);line-height:1.65}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.container{width:min(1160px,calc(100% - 44px));margin:auto}.eyebrow,.label{font-size:11px;letter-spacing:.25em;text-transform:uppercase;color:var(--sea);font-weight:700}.serif{font-family:var(--serif)}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:.95;margin:0}h1{font-size:clamp(62px,9vw,126px)}h2{font-size:clamp(46px,6vw,78px)}h3{font-size:32px}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;gap:16px;padding:15px 22px;border:1px solid var(--gold);font-size:12px;letter-spacing:.12em;text-transform:uppercase;font-weight:700;transition:.25s}.btn:hover{background:var(--gold);color:var(--ink)}.btn.fill{background:var(--gold);color:var(--ink)}.btn.fill:hover{background:#efb98e}.section{padding:105px 0}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;padding:20px 0;background:linear-gradient(var(--ink),rgba(6,21,33,.72),transparent);transition:.3s}.header-inner{display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand img{width:48px;height:48px;object-fit:contain}.brand strong{display:block;font-family:var(--serif);font-size:25px;letter-spacing:.17em;font-weight:600}.brand small{display:block;color:var(--gold);font-size:9px;letter-spacing:.35em;margin-top:-3px}.nav{display:flex;gap:27px;align-items:center;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.nav a{opacity:.82}.nav a:hover{opacity:1;color:var(--sea)}.menu{display:none;background:none;border:0;color:white;font-size:26px}.hero{min-height:100vh;position:relative;overflow:hidden;display:grid;align-items:center;background:radial-gradient(circle at 72% 24%,rgba(74,143,157,.3),transparent 32%),linear-gradient(130deg,#03101a,#0a2535 60%,#061521)}.hero:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 55%,rgba(255,255,255,.05),transparent 72%)}.hero .container{display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;padding-top:80px}.hero-copy{position:relative;z-index:2}.hero h1 em,.hero h2 em{color:var(--sea);font-weight:400}.hero p{max-width:620px;color:#c5d3d4;font-size:17px}.hero-actions{display:flex;gap:22px;align-items:center;margin-top:32px}.hero-art{position:relative;display:flex;justify-content:center}.hero-art .halo{position:absolute;width:80%;aspect-ratio:1;border:1px solid rgba(217,149,101,.8);border-radius:50%;top:3%;left:10%}.hero-art img{position:relative;width:min(620px,100%);filter:drop-shadow(0 30px 50px rgba(0,0,0,.35))}.intro-grid,.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.intro-grid p,.split p{color:#b5c6ca;max-width:600px}.rule{height:1px;background:var(--line);margin:30px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{border:1px solid var(--line);background:linear-gradient(150deg,rgba(255,255,255,.05),rgba(255,255,255,.015));padding:32px;min-height:280px;position:relative;overflow:hidden}.card:before{content:'';position:absolute;width:160px;height:160px;border-radius:50%;background:rgba(75,169,168,.08);right:-60px;top:-60px}.card .num{color:var(--gold);font-size:11px;letter-spacing:.2em}.card h3{margin:25px 0 12px}.card p{color:var(--muted)}.card a{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--sea)}.dark-band{background:#071b28}.equipment{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.equipment-photo{border:1px solid var(--line);padding:12px;background:#03111a}.equipment-photo img{width:100%;height:560px;object-fit:cover;object-position:center}.list{padding:0;margin:25px 0;list-style:none}.list li{padding:13px 0;border-bottom:1px solid var(--line);color:#c6d3d5}.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}.gallery-item{min-height:260px;position:relative;overflow:hidden;grid-column:span 4}.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:span 6}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.5s;filter:saturate(.8)}.gallery-item:hover img{transform:scale(1.05);filter:saturate(1)}.gallery-item span{position:absolute;left:16px;bottom:14px;font-size:10px;letter-spacing:.18em;text-transform:uppercase;background:rgba(3,16,25,.72);padding:8px 10px}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.price-card{border:1px solid var(--line);padding:30px;background:#081b27}.price-card.featured{border-color:var(--gold);transform:translateY(-8px)}.price{font-family:var(--serif);font-size:48px;color:var(--sea);margin:20px 0}.price small{font:12px var(--sans);color:var(--muted)}.instagram{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.ig{aspect-ratio:1;position:relative;overflow:hidden;background:linear-gradient(135deg,#173a48,#071722);border:1px solid var(--line)}.ig:after{content:'Instagram';position:absolute;inset:auto 12px 12px;color:#fff;font-size:10px;letter-spacing:.15em;text-transform:uppercase;opacity:.7}.ig img{width:100%;height:100%;object-fit:cover;opacity:.82}.faq{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:21px 0}summary{cursor:pointer;list-style:none;font-family:var(--serif);font-size:26px}summary::-webkit-details-marker{display:none}details p{color:var(--muted);max-width:760px}.booking{background:radial-gradient(circle at 10% 0%,rgba(75,169,168,.13),transparent 35%),#071b27}.booking-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:50px}.form{display:grid;gap:15px}.form label{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted)}.form input,.form select,.form textarea{width:100%;margin-top:7px;padding:14px 15px;background:#061521;border:1px solid var(--line);color:var(--white);font:14px var(--sans);outline:none}.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--sea)}.slots{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.slot{padding:12px 8px;background:#061521;border:1px solid var(--line);color:#d8e2e2;cursor:pointer;text-align:center;font-size:11px}.slot:hover,.slot.selected{border-color:var(--gold);background:rgba(217,149,101,.08)}.notice{padding:14px;background:rgba(75,169,168,.08);border-left:2px solid var(--sea);font-size:12px;color:#c4d4d6}.footer{padding:50px 0 30px;border-top:1px solid var(--line);color:var(--muted)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px}.footer h4{font-family:var(--serif);font-size:22px;color:var(--white);margin:0 0 12px}.footer a:hover{color:var(--sea)}.legal{padding-top:35px;margin-top:35px;border-top:1px solid var(--line);font-size:10px;letter-spacing:.08em}.whatsapp{position:fixed;right:20px;bottom:20px;z-index:45;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;background:#27d366;color:#062014;box-shadow:0 10px 30px rgba(0,0,0,.35);font-weight:800}.page-hero{padding:180px 0 90px;background:radial-gradient(circle at 75% 20%,rgba(75,169,168,.18),transparent 35%),#061521}.course-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.course-image{min-height:500px;background:#0b2634;overflow:hidden}.course-image img{width:100%;height:100%;object-fit:cover}.sticky-card{position:sticky;top:110px;border:1px solid var(--line);padding:30px;background:#081b27}.back{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--sea);display:inline-block;margin-bottom:30px}.mobile-only{display:none}
@media(max-width:900px){.nav{display:none}.menu{display:block}.nav.open{display:flex;position:absolute;top:80px;left:22px;right:22px;background:#071b27;padding:20px;flex-direction:column;align-items:stretch;border:1px solid var(--line)}.hero .container,.equipment,.booking-grid,.course-grid,.intro-grid,.split{grid-template-columns:1fr}.hero{min-height:auto;padding-bottom:60px}.hero-art{order:-1;padding-top:70px}.hero-art img{max-width:520px}.cards,.price-grid{grid-template-columns:1fr}.price-card.featured{transform:none}.gallery-item,.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:span 6}.instagram{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr}.section{padding:75px 0}.equipment-photo img{height:420px}.sticky-card{position:static}}
@media(max-width:560px){.container{width:min(100% - 28px,1160px)}.hero h1{font-size:66px}.hero-actions{flex-direction:column;align-items:flex-start}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-item,.gallery-item:nth-child(1),.gallery-item:nth-child(6){grid-column:span 1;min-height:190px}.slots{grid-template-columns:1fr 1fr}.brand strong{font-size:21px}}
/* Submerge Cape Town updated brand artwork */
.brand img{border-radius:50%;object-fit:cover;object-position:center 36%;}
.poster-art{align-items:center;}
.poster-art .brand-poster{width:min(610px,100%);border-radius:18px;border:1px solid rgba(217,149,101,.34);box-shadow:0 28px 70px rgba(0,0,0,.38);}
@media(max-width:900px){.poster-art .brand-poster{max-width:540px;margin-inline:auto;}}
/* Real Submerge photography */
.photo-hero{isolation:isolate;background:#03101a}.hero-photo{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,rgba(3,16,26,.92) 0%,rgba(3,16,26,.73) 42%,rgba(3,16,26,.28) 72%,rgba(3,16,26,.55) 100%),url('assets/photos/hero-kelp-mermaid.jpeg');background-size:cover;background-position:center}.photo-hero:before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,var(--ink) 0%,transparent 25%,transparent 75%,rgba(3,16,26,.35) 100%)}.photo-hero .poster-art .brand-poster{width:min(500px,92%);opacity:.94}.experience-photo{height:min(68vw,690px);overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}.experience-photo img{width:100%;height:100%;object-fit:cover;object-position:center 60%}.spirit-copy{margin-top:55px}.mermaid-spirit{background:radial-gradient(circle at 80% 20%,rgba(217,149,101,.09),transparent 32%),#061521}.gallery-item{background:#0b2634}.gallery-item img{filter:saturate(.94) contrast(1.02)}
@media(max-width:900px){.hero-photo{background-image:linear-gradient(0deg,rgba(3,16,26,.95) 0%,rgba(3,16,26,.6) 58%,rgba(3,16,26,.28) 100%),url('assets/photos/hero-kelp-mermaid.jpeg');background-position:center}.photo-hero .hero-art{order:0;padding-top:10px}.experience-photo{height:72vw;min-height:360px}}

/* Meet Skye: preserve the full original Marico Oog photograph without cropping */
.marico-photo{margin:30px 0 36px;max-width:430px}
.marico-photo img{display:block;width:100%;height:auto;object-fit:contain;border:1px solid var(--line)}
.marico-photo figcaption{margin-top:10px;color:var(--muted);font-size:12px;font-style:italic;letter-spacing:.02em}

/* Meet Skye: complete portrait alongside the opening biography */
.skye-story-grid{align-items:start}
.skye-story-aside .marico-photo{max-width:430px;margin:32px 0 0}
.skye-story-aside .marico-photo img{width:100%;height:auto;object-fit:contain}
.skye-story-copy{min-width:0}
@media(max-width:900px){.skye-story-grid{gap:30px}.skye-story-aside .marico-photo{max-width:430px}}

/* Booking price clarity and location guidance */
.booking-prices{width:100%;border-collapse:collapse;margin:12px 0;font-size:12px;color:#d6e2e2}
.booking-prices th,.booking-prices td{text-align:left;padding:7px 5px;border-bottom:1px solid rgba(184,201,204,.18)}
.booking-prices th{color:#86c5c7;font-weight:700}
.booking-prices th:not(:first-child),.booking-prices td:not(:first-child){text-align:right}
.location-note{font-size:12px;margin:0 0 5px;line-height:1.6}
@media(max-width:520px){.booking-prices{font-size:11px}.booking-prices th,.booking-prices td{padding:7px 2px}}

/* Full-photograph gallery: never crop or distort mermaids or tail fins. */
.gallery-grid{align-items:start}
.gallery-item{min-height:0;height:auto;overflow:visible;align-self:start;background:#0b2634}
.gallery-item img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;transform:none;filter:none}
.gallery-item:hover img{transform:none;filter:none}
.gallery-item span{z-index:1}
/* Instagram previews also show the complete source image. */
.ig{overflow:hidden}
.ig img{object-fit:contain;object-position:center;transform:none}

/* Approved homepage adjustment: retain original source photo, show entire image, reduce dark overlay. */
.photo-hero .hero-photo{background-image:linear-gradient(90deg,rgba(3,16,26,.34),rgba(3,16,26,.10) 55%,rgba(3,16,26,.12)),url('assets/photos/hero-kelp-mermaid.jpeg');background-size:contain;background-repeat:no-repeat;background-position:center center;background-color:#03101a}
.photo-hero:before{background:linear-gradient(0deg,rgba(3,16,26,.12),transparent 22%,transparent 82%,rgba(3,16,26,.12))}
@media(max-width:900px){.photo-hero .hero-photo{background-image:linear-gradient(0deg,rgba(3,16,26,.30),rgba(3,16,26,.10)),url('assets/photos/hero-kelp-mermaid.jpeg');background-size:contain;background-position:center center}}

/* Two original, uncropped portraits beneath the course and photoshoot sections. */
.experience-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch}
.experience-photo-pair figure{margin:0;min-width:0;height:570px;display:flex;align-items:center;justify-content:center;background:#03101a;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.experience-photo-pair img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
@media(max-width:700px){.experience-photo-pair{grid-template-columns:1fr;gap:16px}.experience-photo-pair figure{height:auto;max-height:none}.experience-photo-pair img{height:auto;max-height:650px}}
