/*
Theme Name: Sea Lounge
Description: A custom block theme for Sea Lounge, Grand Cayman. Includes starter pages and a pre-booking website design.
Version: 0.1.0
Requires at least: 6.6
Requires PHP: 7.4
Author: Sea Lounge
License: GPL-2.0-or-later
Text Domain: sea-lounge
*/
:root{--ink:#123e43;--muted:#52686b;--paper:#faf8f2;--white:#fff;--line:#d7ddd5;--accent:#fd925e;--teal:#147877;--wash:#e8f0e9;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif;color-scheme:light dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7}h1,h2,h3,p{margin:0 0 22px}h1,h2,h3{line-height:1.08;font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em}h1{font-size:clamp(52px,6.8vw,100px)}h2{font-size:clamp(38px,4.3vw,62px)}h3{font-family:var(--serif);font-size:29px;letter-spacing:-.025em}a{color:inherit;text-decoration:none}p a:not(.sl-button){text-decoration:underline}button{font:inherit}img{max-width:100%;display:block}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}a:hover{text-decoration:underline}.wp-site-blocks{padding:0}.wp-site-blocks>*{margin-block-start:0}.wp-block-post-content{max-width:none!important;margin:0!important}.sl-header{max-width:1600px;margin:auto;min-height:110px;padding:20px 5%;display:flex;gap:30px;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;white-space:nowrap;font-size:21px;font-weight:650;letter-spacing:.1em;line-height:1.25}.brand small{display:block;font-weight:450;font-size:9px;letter-spacing:.32em;margin-top:5px}.brand-mark{font-size:52px;line-height:1;font-family:var(--serif);font-weight:400}.sl-header nav{display:flex;gap:28px;font-size:13px}.header-cta{border:1px solid var(--ink);border-radius:2px;padding:12px 18px;font-size:12px;font-weight:600}.header-cta span{margin-left:18px}.mobile-toggle{display:none}.mobile-nav{padding:10px 6% 25px;border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:10px 0}.sl-section{padding:90px 7%;max-width:1600px;margin:auto}.eyebrow{font-size:10px!important;letter-spacing:.21em;text-transform:uppercase;font-weight:700;margin-bottom:22px!important}.sl-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:var(--ink);color:var(--paper);padding:16px 23px;border:1px solid var(--ink);border-radius:2px;font-size:12px;font-weight:600;text-decoration:none!important}.sl-button:hover{filter:brightness(1.15)}.sl-button.outline{background:transparent;color:inherit;border-color:currentColor}.hero{position:relative;max-width:none;min-height:660px;height:min(760px,78vw);padding:70px 7% 35px;color:#fff;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-image{object-position:center 46%}.hero-shade{background:linear-gradient(90deg,rgba(4,45,51,.82),rgba(5,51,55,.25) 65%,rgba(6,45,48,.08))}.hero-content{position:relative;max-width:760px;padding-bottom:60px}.hero h1{font-size:clamp(64px,8.5vw,125px);line-height:.98;margin-bottom:30px;letter-spacing:-.055em}.hero h1 em{font-weight:400;color:#ffd5af}.hero-content p:not(.eyebrow){font-size:17px;line-height:1.65}.hero-actions{display:flex;gap:15px;margin-top:30px}.hero .sl-button:not(.outline){background:#ffd5af;color:#123e43;border-color:#ffd5af}.hero .sl-button.outline{color:white;border-color:#ffffff80}.hero-bottom{position:absolute;bottom:29px;left:7%;right:7%;display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.17em;padding-top:18px;border-top:1px solid #ffffff50}.intro-strip{display:grid;grid-template-columns:repeat(3,1fr);padding-top:30px;padding-bottom:30px;border-bottom:1px solid var(--line);gap:32px}.intro-strip>div{display:flex;align-items:center;gap:22px}.intro-strip>div+div{border-left:1px solid var(--line);padding-left:45px}.intro-strip p{margin:0;font-size:12px;line-height:1.6;color:var(--muted)}.intro-strip strong{color:var(--ink);font-weight:500}.mini-icon{font-size:35px;color:var(--teal)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:380px}.section-heading h2{margin-bottom:0}.tour-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.card-image{position:relative;display:block;overflow:hidden;aspect-ratio:1.14}.card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.card-image:hover img{transform:scale(1.035)}.image-label{position:absolute;left:18px;top:14px;color:#fff;background:#163f435c;border:1px solid #ffffff70;padding:1px 11px;font-size:11px}.card-top{display:flex;align-items:center;justify-content:space-between;margin-top:25px}.card-top .eyebrow{margin:0!important;font-size:9px!important}.tour-card h3{margin:13px 0 15px;font-size:30px}.tour-card>p{font-size:14px;color:var(--muted);line-height:1.7}.text-link{display:inline-block;font-size:12px;font-weight:600;border-bottom:1px solid var(--line);padding-bottom:6px}.text-link span{padding-left:28px}.story{background:var(--wash);display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:8%}.story-image{position:relative;aspect-ratio:1.05;overflow:hidden}.story-image img{width:100%;height:100%;object-fit:cover}.story-image span{position:absolute;bottom:30px;left:30px;color:white;font-size:11px;letter-spacing:.25em}.story p:not(.eyebrow){font-size:14px;color:var(--muted)}.story .sl-button{margin-top:10px}.planning{display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.planning>div>p:not(.eyebrow){font-size:14px;color:var(--muted)}details{border-top:1px solid var(--line);padding:22px 0}details:last-child{border-bottom:1px solid var(--line)}summary{font-size:16px;cursor:pointer;list-style:none;padding-right:30px;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:3px;font-size:23px;line-height:1.1}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);margin:16px 25px 0 0}.cta{display:grid;grid-template-columns:1.3fr 1fr;gap:10%;align-items:center;background:#cde4dd;border-top:1px solid #b6d4c9}.cta h2{font-size:clamp(36px,4vw,56px);margin-bottom:0}.cta p:not(.eyebrow){font-size:14px;max-width:380px}.sl-footer{padding:65px 7% 25px;max-width:1600px;margin:auto}.footer-top{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-top h2{font-family:var(--sans);font-size:11px;letter-spacing:.1em;font-weight:700;margin:10px 0 22px}.footer-top>div>a:not(.brand){display:block;font-size:12px;color:var(--muted);margin:10px 0}.footer-top p{font-size:13px;color:var(--muted);margin-top:22px}.footer-bottom{border-top:1px solid var(--line);margin-top:45px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}.page-intro{padding-top:65px;padding-bottom:45px}.page-intro .lead{font-size:18px;color:var(--muted);max-width:700px;margin:25px 0}.page-photo{height:440px;margin-top:45px;overflow:hidden}.page-photo img{height:100%;width:100%;object-fit:cover}.two-column{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;padding-top:40px}.two-column>div>p{color:var(--muted)}.trip-panel{padding:35px;background:var(--wash);align-self:start}.trip-panel h3{font-size:27px}.trip-panel p,.trip-panel li{font-size:14px;color:var(--muted)}.trip-panel ul{padding-left:20px}.trip-panel .sl-button{margin-top:20px}dl{margin:0}dl>div{padding:14px 0;border-top:1px solid var(--line)}dt{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.07em}dd{font-size:14px;margin:4px 0 0;color:var(--muted)}.booking-status{display:flex;gap:24px;background:var(--wash);padding:40px}.booking-status h2{font-size:37px}.status-dot{width:12px;height:12px;flex-shrink:0;background:var(--teal);border-radius:50%;margin-top:12px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.steps span{display:block;font-size:12px;letter-spacing:.1em;margin-bottom:20px;color:var(--teal)}.steps p{font-size:14px;color:var(--muted)}.skip-link{position:absolute;top:-100px;left:20px;z-index:20;padding:10px 20px;background:var(--ink);color:var(--paper)}.skip-link:focus{top:10px}.content-generic{padding:65px 7%;max-width:1100px;margin:auto}
@media(prefers-color-scheme:dark){:root{--ink:#e4efeb;--muted:#adbfba;--paper:#102c31;--white:#17373c;--line:#355153;--teal:#8dd4c7;--wash:#193b3e}.cta{background:#264d49;border-color:#355954}.sl-button{color:#123e43}.hero .sl-button.outline{color:#fff}.hero .eyebrow{color:#fff}.trip-panel{background:#193b3e}}
@media(max-width:1080px){.sl-header nav{gap:17px}.sl-header{gap:20px}.header-cta{display:none}.intro-strip>div+div{padding-left:22px}.hero{min-height:620px}.tour-grid{gap:22px}.tour-card h3{font-size:25px}}
@media(max-width:760px){.sl-header{min-height:86px;padding:17px 6%}.brand{font-size:17px}.brand-mark{font-size:40px}.sl-header nav{display:none}.mobile-toggle{display:block;border:0;padding:7px 0 7px 12px;background:transparent;color:inherit;font-size:12px}.mobile-toggle span{padding-left:12px}.sl-section{padding:60px 6%}.hero{min-height:660px;height:auto;padding:70px 6% 100px}.hero-content{padding-bottom:0}.hero h1{font-size:78px}.hero-image{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#043038db,#04303866)}.hero-actions{flex-wrap:wrap}.hero-actions .sl-button{padding:14px 18px}.hero-bottom{left:6%;right:6%;font-size:8px;letter-spacing:.08em}.hero-bottom>a{display:none}.intro-strip{grid-template-columns:1fr;padding-top:22px;padding-bottom:22px;gap:18px}.intro-strip>div+div{padding-left:0;border:0}.intro-strip>div{gap:20px}.intro-strip p br{display:none}.intro-strip p strong{padding-left:6px}.mini-icon{font-size:26px;width:30px;text-align:center}.section-heading{display:block}.section-heading p:not(.eyebrow){margin:25px 0 0}.tour-grid{grid-template-columns:1fr;gap:45px}.card-image{aspect-ratio:1.4}.tour-card h3{font-size:33px}.story,.planning,.cta,.two-column{grid-template-columns:1fr;gap:40px}.story-image{aspect-ratio:1.2}.footer-top{grid-template-columns:1fr 1fr;gap:30px}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:6px}.page-intro{padding-top:45px}.page-photo{height:290px}.trip-panel{padding:28px}.steps{grid-template-columns:1fr;gap:25px}.booking-status{padding:28px;gap:16px}.booking-status h2{font-size:30px}.sl-footer{padding:50px 6% 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
