/*
Theme Name: Bainbridge Island Yacht Adventures
Theme URI: https://example.com/bainbridge-yacht-adventures
Author: Bainbridge Island Yacht Adventures
Description: A refined, responsive one-page theme for private Salish Sea yacht charters. Includes editable cruise listings, homepage sections, FAQs, and booking links.
Version: 1.0.0
Requires at least: 6.2
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: biya
*/

:root{--navy:#0b2d3c;--teal:#1f5e73;--cream:#f1e9d2;--orange:#f4a261;--forest:#1f3d2b;--white:#fff;--ink:#18313b;--muted:#5e7075;--sand:#f8f4e9;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:Montserrat,Arial,sans-serif;line-height:1.7}body.admin-bar .site-header{top:32px}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}.container{width:min(calc(100% - 40px),var(--max));margin:auto}.eyebrow{margin:0 0 12px;color:var(--orange);font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.section{padding:100px 0}.section-title{max-width:760px;margin:0 0 18px;color:var(--navy);font-family:Georgia,serif;font-size:clamp(2rem,4vw,3.6rem);font-weight:400;line-height:1.08}.section-intro{max-width:720px;margin:0;color:var(--muted);font-size:1.05rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 25px;border:1px solid var(--orange);background:var(--orange);color:var(--navy);font-size:.76rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase;transition:.2s}.button:hover,.button:focus{background:#f7b274;transform:translateY(-1px)}.button--outline{border-color:rgba(255,255,255,.55);background:transparent;color:#fff}.button--outline:hover{background:#fff;color:var(--navy)}
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;border-bottom:1px solid rgba(255,255,255,.18);color:#fff}.nav-wrap{display:flex;min-height:92px;align-items:center;justify-content:space-between;gap:28px}.custom-logo{max-height:64px;width:auto}.brand{display:flex;align-items:center;gap:12px;color:#fff;font-size:.86rem;font-weight:800;letter-spacing:.1em;line-height:1.25;text-transform:uppercase}.brand-mark{display:grid;width:52px;height:52px;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:50%;font-family:Georgia,serif;font-size:1.3rem}.brand small{display:block;color:var(--cream);font-size:.6rem;letter-spacing:.17em}.site-nav{display:flex;align-items:center;gap:28px}.site-nav ul{display:flex;margin:0;padding:0;align-items:center;gap:28px;list-style:none}.site-nav a{font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.menu-toggle{display:none;border:0;background:none;color:#fff;font-size:1.5rem}.hero{position:relative;display:grid;min-height:780px;place-items:center;overflow:hidden;background:linear-gradient(90deg,rgba(5,30,41,.88),rgba(5,30,41,.28)),var(--hero-image,linear-gradient(145deg,#0b2d3c 0%,#1f5e73 50%,#99b9bd 100%));background-position:center;background-size:cover;color:#fff}.hero:after{position:absolute;right:-5%;bottom:-110px;width:55%;height:230px;border-radius:50% 50% 0 0;background:rgba(241,233,210,.08);content:""}.hero-inner{position:relative;z-index:2;padding-top:80px}.hero-copy{max-width:760px}.hero h1{margin:0 0 22px;color:#fff;font-family:Georgia,serif;font-size:clamp(3rem,7vw,6rem);font-weight:400;letter-spacing:-.02em;line-height:.96}.hero p{max-width:650px;margin:0 0 34px;color:#f3f5f2;font-size:clamp(1rem,2vw,1.25rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px}.hero-facts{display:flex;margin-top:50px;padding:0;gap:35px;list-style:none;color:var(--cream);font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.hero-facts li+li{padding-left:35px;border-left:1px solid rgba(255,255,255,.3)}
.experience{background:var(--sand)}.experience-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:80px}.stat-row{display:grid;margin-top:35px;grid-template-columns:repeat(3,1fr);gap:12px}.stat{padding:20px 10px;border-top:1px solid #cad1c9}.stat strong{display:block;color:var(--navy);font-family:Georgia,serif;font-size:2rem;font-weight:400}.stat span{color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.visual-panel{position:relative;min-height:470px;background:linear-gradient(160deg,#8fb1b5,#1f5e73 58%,#0b2d3c);overflow:hidden}.visual-panel:before{position:absolute;right:-10%;bottom:-20%;width:90%;height:55%;border-radius:60% 0 0;background:var(--cream);content:""}.visual-panel:after{position:absolute;right:8%;bottom:20%;width:58%;height:15%;border-radius:70% 16% 45% 55%;background:#fff;box-shadow:0 15px 0 -8px var(--navy);content:""}.section-heading{display:flex;margin-bottom:48px;align-items:end;justify-content:space-between;gap:30px}.cruises-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.cruise-card{position:relative;display:flex;min-height:430px;padding:32px;flex-direction:column;justify-content:end;overflow:hidden;background:linear-gradient(180deg,rgba(11,45,60,.04),rgba(11,45,60,.94)),var(--card-image,linear-gradient(145deg,#81a9ae,#0b2d3c));background-position:center;background-size:cover;color:#fff}.cruise-card:first-child{grid-column:span 2}.cruise-card__badge{position:absolute;top:22px;left:22px;padding:8px 12px;background:var(--orange);color:var(--navy);font-size:.66rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.cruise-card h3{margin:0 0 6px;font-family:Georgia,serif;font-size:2rem;font-weight:400;line-height:1.1}.cruise-card__meta{margin:0 0 12px;color:var(--cream);font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.cruise-card p{margin:0 0 20px;color:#e7eeee;font-size:.92rem}.cruise-card .text-link{font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.cruise-card .text-link:after{margin-left:9px;content:"→"}
.yacht{background:var(--navy);color:#fff}.yacht .section-title{color:#fff}.yacht-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:75px}.yacht-photo{min-height:540px;background:linear-gradient(160deg,#8fb1b5,#1f5e73 52%,#071f2a);background-position:center;background-size:cover}.feature-list{display:grid;margin:34px 0;padding:0;grid-template-columns:1fr 1fr;gap:18px;list-style:none}.feature-list li{padding:14px 0;border-bottom:1px solid rgba(255,255,255,.16);color:var(--cream);font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.story-grid,.about-grid{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px}.story-art{min-height:500px;background:linear-gradient(145deg,rgba(244,162,97,.45),transparent 40%),linear-gradient(160deg,#779da2,#143d4d);background-position:center;background-size:cover}.about{background:var(--sand)}.about-portrait{min-height:480px;background:linear-gradient(150deg,#c5d1cd,#315d67);background-position:center;background-size:cover}.faq-list{max-width:900px;margin:40px auto 0}.faq-item{border-top:1px solid #cbd2d0}.faq-item:last-child{border-bottom:1px solid #cbd2d0}.faq-question{display:flex;width:100%;padding:23px 4px;align-items:center;justify-content:space-between;border:0;background:none;color:var(--navy);font:600 1rem Montserrat,Arial,sans-serif;text-align:left;cursor:pointer}.faq-question:after{font-size:1.4rem;content:"+"}.faq-item.is-open .faq-question:after{content:"−"}.faq-answer{display:none;padding:0 45px 24px 4px;color:var(--muted)}.faq-item.is-open .faq-answer{display:block}.final-cta{padding:105px 0;background:linear-gradient(120deg,rgba(11,45,60,.97),rgba(31,94,115,.86));color:#fff;text-align:center}.final-cta h2{margin:0 auto 18px;max-width:800px;font-family:Georgia,serif;font-size:clamp(2.3rem,5vw,4.5rem);font-weight:400;line-height:1}.final-cta p{margin:0 auto 30px;max-width:630px;color:#e4eceb}.site-footer{padding:55px 0 25px;background:#061d27;color:#c9d4d3}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:55px}.site-footer h3{margin-top:0;color:#fff;font-family:Georgia,serif;font-weight:400}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:7px 0}.site-footer a:hover{color:var(--orange)}.copyright{margin-top:45px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:.72rem}.content-area{padding:150px 0 90px}.content-area h1{color:var(--navy);font-family:Georgia,serif;font-size:3rem;font-weight:400}.content-area a{color:var(--teal);text-decoration:underline}
@media(max-width:900px){body.admin-bar .site-header{top:46px}.site-nav ul,.site-nav>.button{display:none}.site-nav.is-open{position:absolute;top:92px;left:0;display:block;width:100%;padding:20px;background:var(--navy)}.site-nav.is-open ul{display:flex;flex-direction:column;align-items:flex-start}.menu-toggle{display:block}.experience-grid,.yacht-grid,.story-grid,.about-grid{grid-template-columns:1fr;gap:45px}.cruises-grid{grid-template-columns:1fr 1fr}.cruise-card:first-child{grid-column:span 2}.yacht-photo{min-height:420px}.footer-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.container{width:min(calc(100% - 28px),var(--max))}.section{padding:75px 0}.hero{min-height:720px}.hero-facts{gap:15px;flex-direction:column}.hero-facts li+li{padding:0;border:0}.section-heading{align-items:start;flex-direction:column}.cruises-grid{grid-template-columns:1fr}.cruise-card:first-child{grid-column:auto}.cruise-card{min-height:390px}.stat-row,.feature-list,.footer-grid{grid-template-columns:1fr}.visual-panel,.story-art,.about-portrait{min-height:380px}.brand span{display:none}}

/* Homepage layout matched to the approved visual mockup. */
.default-logo{width:126px;height:58px;object-fit:contain}.site-header{position:absolute;background:#08283a;border-bottom:0}.nav-wrap{min-height:78px}.site-nav a{font-size:.68rem}.site-nav .button{min-height:38px;padding:0 17px;background:#f6d99d;border-color:#f6d99d}.mockup-hero{position:relative;min-height:610px;padding-top:78px;background-position:center;background-size:cover;color:#fff}.mockup-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,31,45,.93) 0%,rgba(5,31,45,.64) 37%,rgba(5,31,45,.04) 72%)}.mockup-hero-inner{position:relative;display:flex;min-height:532px;align-items:center}.mockup-hero-copy{max-width:545px}.mockup-hero h1{margin:0 0 16px;font:900 clamp(2.6rem,5vw,4.8rem)/.96 Montserrat,Arial,sans-serif;letter-spacing:-.035em;text-transform:uppercase}.mockup-hero p{max-width:495px;margin:0 0 26px;font-size:1rem;line-height:1.45}.anchor-button{background:#f8dda4;border-color:#f8dda4;color:#08283a}.trust-row{display:flex;margin-top:18px;gap:18px;color:#b9f3df;font-size:.72rem;font-weight:800}.mockup-cruises{padding:55px 0 62px;background:#f5f0e7}.mockup-heading{text-align:center}.mockup-heading h2{display:flex;margin:0;align-items:center;justify-content:center;gap:17px;color:#08283a;font:900 clamp(2rem,4vw,3.2rem)/1 Montserrat,Arial,sans-serif;letter-spacing:-.035em;text-transform:uppercase}.mockup-heading h2 span{width:45px;height:3px;background:#08283a}.mockup-heading p{margin:7px 0 32px;color:#08283a;font-size:1.1rem;letter-spacing:.04em}.mockup-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.mockup-card{overflow:hidden;border-radius:7px;background:#fff;box-shadow:0 5px 14px rgba(8,40,58,.13)}.mockup-card-image{position:relative;height:160px;background-position:center;background-size:cover}.mockup-card-image span{position:absolute;top:10px;left:10px;padding:6px 8px;background:#f8dda4;color:#08283a;font-size:.62rem;font-weight:900;letter-spacing:.05em;text-transform:uppercase}.mockup-card-body{display:flex;min-height:270px;padding:19px;flex-direction:column}.mockup-card h3{margin:0;color:#08283a;font-size:1.15rem;font-weight:900;line-height:1.08;text-transform:uppercase}.mockup-card strong{margin:4px 0 7px;color:#08283a;font-size:1rem}.mockup-card p{margin:0 0 17px;color:#243f49;font-size:.86rem;line-height:1.35}.mockup-card .button{width:100%;margin-top:auto}.button-navy{background:#08283a;border-color:#08283a;color:#fff}.button-navy:hover{background:#16485f;color:#fff}.feature-band{padding:34px 0;background:#dbe7e6}.feature-band-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.feature-block{display:grid;min-height:315px;grid-template-columns:1fr 1.1fr;overflow:hidden}.feature-copy{padding:22px 12px 22px 0}.feature-copy h2{margin:0;color:#08283a;font-size:1.85rem;font-weight:900;line-height:1;text-transform:uppercase}.feature-copy h3{margin:6px 0 8px;color:#08283a;font-size:1rem;text-transform:uppercase}.feature-copy p,.feature-copy li{font-size:.79rem;line-height:1.35}.feature-copy ul{margin:5px 0 14px;padding-left:17px}.feature-image,.merch-image{min-height:285px;background-position:center;background-size:cover;border-radius:4px}.merch-image{background-color:#f6f1e7;background-size:contain;background-repeat:no-repeat}.compact-about{padding:65px 0;background:#fff}.compact-about-grid{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:80px}.compact-about h2{margin:0;color:#08283a;font:900 clamp(1.9rem,3vw,2.9rem)/1 Montserrat,Arial,sans-serif;text-transform:uppercase}.mini-kicker{margin:0 0 8px;color:#d48b38;font-size:.7rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.compact-about-grid>p{color:#4f646b}.compact-faq{padding:60px 0;background:#f5f0e7}.compact-faq .mockup-heading{margin-bottom:28px}.mockup-final{padding:36px 0;background:linear-gradient(rgba(8,40,58,.78),rgba(8,40,58,.9)),url('assets/images/sunset.jpg') center 52%/cover;color:#fff}.mockup-final .container{display:flex;align-items:center;justify-content:center;gap:70px}.mockup-final h2{margin:0;font-size:2rem;font-weight:900;text-transform:uppercase}.mockup-final p{margin:2px 0 0}.site-footer{padding-top:35px}.footer-grid{display:none}.copyright{margin-top:0;text-align:center}
@media(max-width:900px){.mockup-hero{min-height:580px}.mockup-hero-shade{background:linear-gradient(90deg,rgba(5,31,45,.92),rgba(5,31,45,.3))}.mockup-cards{grid-template-columns:1fr 1fr}.feature-band-grid{grid-template-columns:1fr}.feature-block{grid-template-columns:.8fr 1.2fr}.compact-about-grid{grid-template-columns:1fr;gap:20px}}
@media(max-width:620px){.default-logo{width:78px}.mockup-hero{min-height:630px;background-position:64% center}.mockup-hero-inner{min-height:552px;align-items:end;padding-bottom:48px}.mockup-hero h1{font-size:2.45rem}.trust-row{flex-direction:column;gap:3px}.mockup-heading h2 span{width:24px}.mockup-cards{grid-template-columns:1fr}.feature-block{grid-template-columns:1fr}.feature-copy{padding-right:0}.feature-image,.merch-image{min-height:260px}.mockup-final .container{flex-direction:column;gap:22px;text-align:center}.brand span{display:block;font-size:.58rem}.brand small{display:none}}
.default-logo--round{width:64px;height:64px}
.feature-band-grid--single{display:block;max-width:1040px}.feature-band-grid--single .feature-block{grid-template-columns:.8fr 1.35fr}.feature-band-grid--single .feature-copy{padding:35px 35px 35px 0}.feature-band-grid--single .feature-image{min-height:360px}
@media(max-width:620px){.feature-band-grid--single .feature-block{grid-template-columns:1fr}.feature-band-grid--single .feature-copy{padding:20px 0}.feature-band-grid--single .feature-image{min-height:270px}}
