[hidden]{display:none!important}.header-right{display:flex;align-items:center;gap:15px}header nav{gap:22px;font-size:12px}.mobile-menu{display:none}.inner-page header{position:relative;color:var(--ink);border-color:#16343d20;background:var(--paper)}.inner-page .nav-cta{background:var(--ink);color:var(--paper)}.inner-page .brand svg{fill:var(--red)}.inner-page h1{font-size:clamp(48px,6vw,88px);line-height:1.03;margin:30px 0}.inner-page h1 em{color:#69817d}.page-intro{padding:45px 8% 70px;border-bottom:1px solid #16343d15}.breadcrumb{font-size:10px;color:#687d7d;display:flex;gap:12px;flex-wrap:wrap;line-height:1.7;margin-bottom:60px}.breadcrumb a{color:var(--ink)}.lead{font-size:15px;line-height:1.85;max-width:590px;color:#607678}.page-intro .lead{margin-top:28px;margin-bottom:0}.page-intro .eyebrow{color:#b64c42}.catalog{padding-top:42px}.course-filters{display:flex;gap:10px;flex-wrap:wrap}.course-filters button{background:transparent;border:1px solid #16343d30;border-radius:2px;font-size:11px;padding:12px 18px;color:var(--ink)}.course-filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.filter-count{font-size:10px;letter-spacing:.03em;color:#617875;margin:25px 0}.catalog-grid,.home-course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:45px 27px}.catalog-photo{height:225px;display:block;position:relative;overflow:hidden;background:#8ba5a0}.catalog-photo img{transition:transform 600ms var(--ease-out)}.catalog-body{padding-top:23px}.catalog-body .course-price{font-size:17px;color:var(--ink);margin:0 0 20px}.course-price span{font-size:9px;line-height:1.6;display:block;color:#74847e;margin-top:7px}.catalog-body h2{font-size:30px;line-height:1.1;letter-spacing:-.035em;min-height:66px;margin:0 0 15px}.catalog-body>p:not(.course-price){font-size:12px;line-height:1.85;color:#627675;min-height:68px}.source-note{font-size:10px;line-height:1.9;color:#6a7d78;margin-top:45px;max-width:750px}.source-note a{text-decoration:underline}.home-catalog-bottom{margin-top:40px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #16343d25;padding-top:30px}.home-catalog-bottom p{font-size:12px;line-height:1.8;color:#607772;margin:0}.full-footer{display:block;padding-top:60px}.footer-top{display:flex;justify-content:space-between;gap:30px;align-items:center}.social-row{display:flex;gap:22px;flex-wrap:wrap;font-size:11px}.footer-top .social-row{font-size:11px;color:#c0cfc7}.footer-columns{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:50px;border-top:1px solid #ffffff20;padding:40px 0;margin-top:35px}.footer-columns>div{display:flex;align-items:start;flex-direction:column;gap:13px;font-size:11px}.footer-columns p{font-size:8px;letter-spacing:.15em;color:#a2bdb5;margin-bottom:7px}.footer-columns a{color:#d5dfd5;line-height:1.5}.footer-bottom{border-top:1px solid #ffffff20;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:25px;flex-wrap:wrap;font-size:9px;color:#b0c3ba}.footer-bottom>div{display:flex;gap:22px}.course-detail-hero{padding:40px 8% 65px;display:grid;grid-template-columns:1.15fr 1fr;gap:7%;align-items:center}.course-detail-hero h1{font-size:clamp(43px,5vw,72px)}.course-detail-hero .breadcrumb{margin-bottom:40px}.course-detail-hero .lead{font-size:13px;margin:25px 0}.course-detail-hero figure{margin:0;height:430px;overflow:hidden}.detail-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:10%;padding:0 8% 90px;align-items:start}.detail-copy>section{padding:35px 0;border-top:1px solid #16343d25}.detail-copy h2{font-size:34px;line-height:1.15;margin:0 0 24px;letter-spacing:-.035em}.detail-copy p,.detail-copy li{font-size:13px;line-height:1.9;color:#586f6c}.detail-copy ul{padding-left:18px}.detail-copy li{padding-bottom:8px}.schedule{font-size:13px;line-height:1.9}.schedule dt{font-weight:600;margin-top:20px}.schedule dd{margin:6px 0 0;color:#617772}.course-booking{position:sticky;top:30px;background:#eaece2;padding:32px}.course-booking h2{font-size:29px;margin:18px 0}.booking-price{font-family:Georgia,serif;font-size:37px;letter-spacing:-.05em;margin-bottom:8px}.booking-duration{font-size:11px;color:#637971}.course-booking dl{font-size:11px;line-height:1.7;margin:28px 0}.course-booking dt{font-size:9px;color:#60796e;margin-top:15px}.course-booking dd{margin:3px 0}.course-booking .button{width:100%;gap:14px}.cost-note{font-size:9px;line-height:1.8;color:#687d75;margin:20px 0 12px}.small-link{font-size:10px;text-decoration:underline}.download-list{display:flex;flex-direction:column}.download-list a{font-size:12px;line-height:1.8;border-bottom:1px solid #16343d25;padding:17px 0}.boat-crosslink{background:#eeeee4;padding:30px!important;margin-top:20px}.boat-crosslink .eyebrow{font-size:8px;color:#a94c40}.related{background:#ebece2}.related h2{font-size:48px;margin:20px 0 35px}.related-links{display:grid;grid-template-columns:repeat(2,1fr);gap:15px 35px}.related-links a{border-bottom:1px solid #16343d25;display:flex;justify-content:space-between;padding:18px 0;font-size:13px}.related-links span{color:var(--red)}.boat-profile{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;align-items:center}.boat-profile+.boat-profile{background:#eeece3}.boat-profile h2{font-size:60px;margin:25px 0}.boat-profile p:not(.eyebrow){font-size:13px;line-height:1.9;color:#607672}.zoom-photo{height:390px;display:block;position:relative;overflow:hidden}.zoom-photo>span{position:absolute;bottom:15px;left:15px;font-size:10px;background:var(--paper);padding:10px 15px}.spec-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;font-size:12px;margin:35px 0}.spec-grid dt{font-size:9px;color:#78877d;margin-bottom:6px}.spec-grid dd{margin:0;font-size:20px;font-family:Georgia,serif}.harbor-band{height:430px;position:relative;color:white}.harbor-band>img{position:absolute;inset:0;filter:brightness(.5)}.harbor-band>div{position:relative;padding:90px 8%;}.harbor-band h2{font-size:60px;margin:20px 0}.harbor-band p:not(.eyebrow){font-size:12px}.school-story{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.school-story>img{height:460px}.school-story h2{font-size:56px;margin-bottom:30px}.school-story p{font-size:13px;line-height:1.9;color:#5f7570}.dsv-mark{width:155px;height:auto;object-fit:contain;margin:25px 0}.media-section{background:#16343d;color:var(--paper)}.media-section h2{font-size:60px;margin:25px 0}.media-section>p:not(.eyebrow){font-size:13px;line-height:1.9;max-width:600px;color:#bbcec6}.media-section .social-row{margin-top:35px}.mini-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.mini-gallery a{position:relative;display:block}.mini-gallery img{height:260px}.mini-gallery span{display:block;font-size:12px;padding:20px 0;border-bottom:1px solid #16343d30}.album-section{padding-top:40px}.album-index{display:flex;flex-wrap:wrap;gap:9px;margin-bottom:35px}.album-index a{font-size:10px;border:1px solid #16343d25;padding:10px 13px}.album-index a.selected{background:var(--ink);color:var(--paper)}.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.album-card>div{height:250px;position:relative;background:#688c94;overflow:hidden}.album-card>div:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#092e3560)}.album-year{position:absolute;bottom:18px;left:22px;color:#fff;font-family:Georgia,serif;font-size:57px;letter-spacing:-.05em;z-index:1}.album-card>p{display:flex;justify-content:space-between;gap:10px;font-size:13px;padding:18px 0;border-bottom:1px solid #16343d25}.album-card>p>span{font-size:10px;color:#748078}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.gallery-tile{display:block;position:relative;height:230px;background:#dee3d9;overflow:hidden}.gallery-tile img{transition:transform 600ms var(--ease-out)}.gallery-tile>span{position:absolute;right:12px;bottom:12px;color:white;background:#173d4990;padding:6px 8px;font-size:15px}.photo-dialog{width:min(1200px,95vw);height:90svh;max-height:90svh;border:0;background:#0c262d;padding:45px 55px 60px;overflow:hidden;color:var(--paper)}.photo-dialog::backdrop{background:#061b22ed}.photo-dialog>img{object-fit:contain;width:100%;height:100%;max-height:calc(90svh - 105px)}.photo-dialog .lightbox-close{position:absolute;top:9px;right:12px;min-height:34px;min-width:34px;background:none;border:0;color:white;font-size:22px}.lightbox-prev,.lightbox-next{position:absolute;top:46%;color:white;border:0;background:#ffffff10;min-width:38px;min-height:48px;font-size:24px}.lightbox-prev{left:8px}.lightbox-next{right:8px}.lightbox-caption{position:absolute;bottom:19px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px}.lightbox-caption a{border-bottom:1px solid #ffffff60;padding-bottom:3px}.reviews-section{padding-top:40px}.review-toolbar{display:flex;justify-content:space-between;align-items:center;gap:30px}.review-toolbar label{width:360px;font-size:11px}.review-toolbar input{color:var(--ink);border-color:#16343d35;background:#fff5}.review-toolbar input::placeholder{color:#71867e}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.review-entry{background:#eaece2;padding:27px}.review-entry>.eyebrow{font-size:8px;color:#7c897c}.review-entry h2{font-size:29px;line-height:1.2;margin:20px 0 10px}.review-origin{font-size:10px;color:#6f8178}.review-topics{font-size:12px;line-height:1.9;min-height:50px;margin-top:20px}.review-entry .text-link{font-size:10px}.outline{color:var(--ink);border:1px solid #16343d30;background:transparent}#more-reviews{margin-top:30px}.contact-page{display:grid;grid-template-columns:1fr 1fr;gap:12%}.contact-page h2{font-size:47px;margin:0 0 30px}.contact-page p{font-size:13px;line-height:1.9}.contact-page .social-row{margin-top:35px}.hours{padding:35px;background:#eaece2}.hours dl{margin:35px 0;font-size:13px}.hours dt{margin-top:22px;color:#75867a;font-size:11px}.hours dd{margin:8px 0}.material-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.material-grid article{background:#eaece2;padding:35px}.material-grid h2{font-size:35px;margin:22px 0}.material-grid p{font-size:13px;line-height:1.9}.material-icon{font-size:40px;color:var(--red)}.legal-copy{max-width:1000px;padding-top:50px}.legal-copy h2{font-size:30px;margin:38px 0 20px}.legal-copy p{font-size:13px;line-height:1.9}.legal-copy>a{font-size:12px;text-decoration:underline}.original-document{padding:30px;background:#eaece2;margin-top:40px}.original-document p{font-size:12px}.home-boat-teaser{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center;background:#e9ede3}.boat-teaser-photo{height:380px;display:block}.home-boat-teaser h2{font-size:62px;margin:25px 0}.home-boat-teaser p:not(.eyebrow){font-size:13px;line-height:1.9;color:#64786e}.home-gallery{background:#ecece2}.cinematic{height:220svh;background:#16343d}.cinematic .chart-grid{display:none}.sea-sequence{position:absolute;inset:0;z-index:0}.sea-sequence canvas,.sea-sequence>img,.sea-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.sea-shade{background:linear-gradient(90deg,#062936ce,#06293650 75%),linear-gradient(0deg,#06293690,transparent 35%)}.cinematic .journey-text{width:65%;top:32%}.cinematic .journey-top,.cinematic .journey-footer,.cinematic .scene-caption{z-index:4}.cinematic .chapter h2{font-size:clamp(50px,6vw,90px)}.cinematic .scene-caption{right:8%;bottom:18%;font-size:8px}.cinematic .chapter>p:not(.eyebrow){color:#e0e7dc}.cinematic .journey-top>span{color:#d4ddd3}
@media(hover:hover) and (pointer:fine){.catalog-photo:hover img,.gallery-tile:hover img{transform:scale(1.045)}.album-index a:hover{border-color:var(--red)}.footer-columns a:hover,.social-row a:hover{color:#e18b7b}}
@media(max-width:1100px){header nav{gap:15px;font-size:10px}.brand span{font-size:17px}.brand small{font-size:6px}.nav-cta{padding:13px 16px;font-size:11px}.catalog-photo{height:200px}.catalog-body h2{font-size:27px}.course-detail-hero{gap:5%}.course-detail-hero figure{height:370px}.detail-layout{gap:6%}.course-booking{padding:24px}.gallery-tile{height:190px}}
@media(max-width:900px){header>nav{display:none}.mobile-menu{display:block}.mobile-menu>summary{list-style:none;cursor:pointer;font-size:11px;display:flex;gap:12px;align-items:center;padding:10px 0}.mobile-menu>summary::-webkit-details-marker{display:none}.mobile-menu>nav{position:absolute;top:85px;left:0;right:0;display:flex;align-items:start;gap:0;padding:18px 6% 25px;background:var(--paper);color:var(--ink);box-shadow:0 15px 25px #102e3717;flex-direction:column}.mobile-menu>nav a{display:block;padding:11px 0;font-size:13px;width:100%;border-bottom:1px solid #16343d15}.mobile-menu[open]>summary>span{transform:rotate(45deg)}.course-detail-hero h1{font-size:49px}.page-intro{padding-left:6%;padding-right:6%}.detail-layout{padding-left:6%;padding-right:6%}.course-detail-hero{padding-left:6%;padding-right:6%}.course-booking h2{font-size:25px}.booking-price{font-size:30px}.boat-profile h2{font-size:46px}.zoom-photo{height:330px}.album-grid{gap:20px}.album-card>div{height:220px}.mini-gallery img{height:210px}.footer-columns{gap:25px}.full-footer .footer-top,.full-footer .footer-columns,.full-footer .footer-bottom{font-size:inherit}.footer-top .social-row{font-size:10px}.catalog-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:600px){header .brand span{font-size:14px}.header-right{gap:14px}.header-right .nav-cta{font-size:9px;gap:8px;padding:11px}.header-right .nav-cta span{display:none}.mobile-menu>summary{font-size:10px}.mobile-menu>nav{top:80px}.page-intro{padding-top:25px;padding-bottom:45px}.breadcrumb{font-size:9px;margin-bottom:40px;gap:8px}.inner-page h1{font-size:48px;margin:25px 0}.lead{font-size:13px}.catalog{padding-top:25px}.course-filters{gap:8px}.course-filters button{font-size:10px;padding:10px 12px}.catalog-grid,.home-course-grid{grid-template-columns:1fr;gap:40px}.catalog-photo{height:260px}.catalog-body h2{font-size:33px;min-height:0}.catalog-body>p:not(.course-price){min-height:0;font-size:13px}.catalog-body .course-price{font-size:20px}.course-price span{font-size:10px}.home-catalog-bottom{align-items:start;flex-direction:column}.home-catalog-bottom p{font-size:12px}.footer-top{align-items:start;flex-direction:column;gap:28px}.footer-top .social-row{font-size:10px;gap:18px}.full-footer .footer-columns{grid-template-columns:1fr 1fr;gap:35px 18px;padding:30px 0}.footer-columns>div{font-size:10px;gap:11px}.footer-columns>div:last-child{grid-column:1/-1}.footer-columns p{font-size:7px}.footer-bottom{font-size:8px;gap:20px}.footer-bottom>div{gap:15px}.full-footer{padding-top:40px}.course-detail-hero{grid-template-columns:1fr;padding-top:25px;gap:35px}.course-detail-hero .breadcrumb{margin-bottom:35px}.course-detail-hero h1{font-size:48px}.course-detail-hero figure{height:270px}.detail-layout{display:flex;flex-direction:column;padding-bottom:50px;gap:30px}.course-booking{order:-1;position:static;width:100%}.course-booking dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:25px 0}.course-booking dt{margin:0}.course-booking dd{text-align:right}.course-booking h2{font-size:30px}.booking-price{font-size:37px}.detail-copy{width:100%}.detail-copy h2{font-size:30px}.related h2{font-size:39px}.related-links{grid-template-columns:1fr}.boat-profile{grid-template-columns:1fr;gap:30px}.zoom-photo{height:280px}.boat-profile h2{font-size:47px}.spec-grid{gap:20px}.harbor-band{height:380px}.harbor-band>div{padding:75px 6%}.harbor-band h2{font-size:49px}.school-story{grid-template-columns:1fr;gap:35px}.school-story>img{height:320px}.school-story h2{font-size:45px}.media-section h2{font-size:47px}.mini-gallery{grid-template-columns:1fr;gap:25px}.mini-gallery img{height:260px}.album-section{padding-top:25px}.album-grid{grid-template-columns:repeat(2,1fr);gap:25px 14px}.album-card>div{height:180px}.album-year{font-size:42px;left:14px;bottom:12px}.album-card>p{font-size:11px;flex-direction:column;gap:9px;line-height:1.5;padding:14px 0}.album-index{gap:7px}.album-index a{font-size:9px;padding:8px 10px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:9px}.gallery-tile{height:190px}.photo-dialog{padding:45px 34px 70px;width:97vw;height:85svh;max-height:85svh}.photo-dialog>img{max-height:calc(85svh - 115px)}.lightbox-prev,.lightbox-next{min-width:28px;min-height:42px;font-size:21px;top:45%}.lightbox-prev{left:1px}.lightbox-next{right:1px}.lightbox-caption{left:15px;right:15px;bottom:20px;gap:10px;flex-wrap:wrap;font-size:9px}.reviews-grid{grid-template-columns:1fr}.review-toolbar{flex-direction:column;align-items:start}.review-toolbar label{width:100%}.review-toolbar input{font-size:16px}.review-entry{padding:24px}.review-topics{min-height:0}.contact-page{grid-template-columns:1fr;gap:40px}.contact-page h2{font-size:40px}.hours{padding:26px}.material-grid{grid-template-columns:1fr;gap:25px}.material-grid article{padding:28px}.material-grid h2{font-size:31px}.legal-copy h2{font-size:28px}.home-boat-teaser{grid-template-columns:1fr;gap:30px}.boat-teaser-photo{height:280px}.home-boat-teaser h2{font-size:49px}.cinematic .journey-text{width:88%;top:27%}.cinematic .chapter h2{font-size:49px}.cinematic .journey-sticky{min-height:640px}.cinematic .scene-caption{font-size:6px;bottom:16%;left:6%;right:auto}}
@media(prefers-reduced-motion:reduce){.catalog-photo img,.gallery-tile img{transition:none}.cinematic{height:100svh;min-height:650px}.cinematic .chapter:first-child{display:block}.sea-sequence canvas{display:none}}
.document-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:25px}.boat-profile .zoom-photo{height:auto;aspect-ratio:16/9}.boat-profile .zoom-photo img{object-fit:contain}.boat-profile .zoom-photo>span{background:#f7f5efe8}
.document-preview{padding:40px 8% 80px;background:#e8eae3}.document-preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1000px;margin:0 auto 35px;font-size:12px}.document-preview figure{max-width:1000px;margin:0 auto 35px}.document-preview figcaption{font-size:10px;color:#637a70;margin-bottom:12px}.document-preview figure img{height:auto;object-fit:contain;background:white;border:1px solid #16343d20}@media(max-width:600px){.document-preview{padding:25px 4% 50px}.document-preview-toolbar{align-items:start;flex-direction:column;gap:18px}.document-preview-toolbar .button{font-size:11px}}

/* Descriptive headings remain readable across screen sizes. */
.hero h1{font-size:clamp(58px,7.7vw,112px)}.hero-intro{max-width:510px}.course-detail-hero h1,.page-intro h1{overflow-wrap:anywhere}.footer-brand span{line-height:1.6}
@media(max-width:600px){.hero h1{font-size:clamp(32px,9vw,54px)}.inner-page h1,.course-detail-hero h1{font-size:clamp(32px,8.5vw,48px)}.cinematic .chapter h2{font-size:clamp(35px,9vw,49px)}}

/* Original sail emblem with a wordmark matched to the site typography. */
header .school-brand{gap:13px;flex-shrink:0}header .school-mark{display:block;position:relative;width:43px;height:49px;overflow:hidden;flex:0 0 43px}header .school-mark img{width:auto;max-width:none;height:49px;object-fit:initial;display:block}header .school-wordmark{display:flex;flex-direction:column;gap:6px;font-size:12px;letter-spacing:.14em;line-height:1.1}header .school-wordmark strong{font-size:12px;font-weight:600;letter-spacing:.055em}header .school-wordmark>span{font-size:11px;letter-spacing:.27em}header .school-wordmark small{font-size:8px;letter-spacing:.26em;margin:0;opacity:.8}
@media(max-width:1100px) and (min-width:901px){header nav{gap:14px;font-size:11px}header{padding-left:4%;padding-right:4%}header .school-wordmark strong{font-size:10px}header .school-wordmark>span{font-size:10px}}
@media(max-width:600px){header .school-brand{gap:8px}header .school-mark{width:31px;height:35px;flex-basis:31px}header .school-mark img{height:35px}header .school-wordmark{gap:4px}header .school-wordmark strong{font-size:9px;letter-spacing:.015em}header .school-wordmark>span{font-size:8px;letter-spacing:.16em}header .school-wordmark small{font-size:6px;letter-spacing:.2em}header .header-right{gap:11px}header .header-right .nav-cta{font-size:8px;padding:10px 7px}}

/* One-time entrances for new sections; only composited properties move. */
.scroll-pending{opacity:0;transform:translateY(64px)}
@media(prefers-reduced-motion:reduce){.scroll-pending{opacity:1;transform:none}}
@media print{.scroll-pending{opacity:1;transform:none}}

.review-content{white-space:pre-line;overflow-wrap:anywhere}.review-entry .review-content{font-size:12px;line-height:1.9}.reviews-grid{align-items:start}.review-entry h2{overflow-wrap:anywhere}
@media(max-width:600px){input,select,textarea{font-size:16px}.direct-contact a{overflow-wrap:anywhere;max-width:100%}}

/* Long course names must not widen narrow grid tracks. */
.catalog-card,.catalog-body,.form-row>label{min-width:0}.catalog-body h2,.course-booking h2,.legal-copy{overflow-wrap:anywhere}select{min-width:0;max-width:100%}
@media(max-width:600px){.catalog-grid,.home-course-grid,.reviews-grid{grid-template-columns:minmax(0,1fr)}.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-columns{grid-template-columns:repeat(2,minmax(0,1fr))}}
