:root{--ink:#123537;--ocean:#087f82;--sea:#e1f4f2;--paper:#fffefa;--muted:#486567;--line:#c6dfdf;--sand:#fff0f6;--accent:#f58ab8;--scroll-thumb:#4a8f91;--scroll-track:#e6f4f3;--scroll-hover:#087f82;--scroll-active:#06676b;--ocean-light:#087f82;--ocean-deep:#07575e;--shade:rgba(8,127,130,.15);--shade-soft:rgba(8,127,130,.08);--sand-glow:rgba(245,138,184,.16);--photo-mat:#c4e8e5;--teal-hover:#06676b;--pink-hover:#ef72a8}*{box-sizing:border-box;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:thin}html{scroll-behavior:smooth;scroll-padding-top:176px}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Avenir Next",Avenir,"Segoe UI",sans-serif;font-size:16px;line-height:1.65}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:2px solid var(--scroll-track);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}::-webkit-scrollbar-thumb:active{background:var(--scroll-active)}a{color:inherit;text-decoration:none}a,button,summary{cursor:pointer}a:hover{text-decoration:underline;text-underline-offset:5px}button{font:inherit}button:active,.button:active{transform:translateY(1px)}:focus-visible{outline:3px solid #ad246b;outline-offset:5px}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:"Arial Rounded MT Bold","Trebuchet MS",sans-serif;font-weight:700;line-height:1.1;letter-spacing:-.045em}h1{font-size:clamp(46px,5.2vw,82px);margin-bottom:23px}h2{font-size:clamp(34px,3.5vw,52px);margin-bottom:23px}h3{font-size:26px}p{margin-bottom:20px}.section{padding:80px max(6vw,24px);max-width:1600px;margin:auto}.eyebrow{text-transform:uppercase;font-size:13px;font-weight:700;letter-spacing:.19em;margin-bottom:20px}.announcement{padding:10px 20px;background:var(--ocean);color:white;text-align:center;font-size:14px;letter-spacing:.03em}.announcement a{margin-left:12px;text-decoration:underline;text-underline-offset:3px}.header{background:white}.nav{max-width:1500px;margin:auto;display:grid;grid-template-columns:1fr 140px 1fr;align-items:center;gap:30px;padding:16px 5vw}.logo{width:120px;margin:auto}.logo img{width:120px;height:120px;border-radius:50%;background:#000}.nav-side{display:flex;align-items:center;gap:28px;font-size:15px;font-weight:600}.nav-side>a{min-height:44px;display:inline-flex;align-items:center}.nav-right{justify-content:flex-end}.nav-book{border-bottom:1px solid;padding:9px 0}.menu-toggle{display:none}.mobile-menu[hidden]{display:none}.skip{position:fixed;left:20px;top:-100px;z-index:20;background:white;padding:12px}.skip:focus{top:10px}.photo-panel{position:relative;isolation:isolate;overflow:hidden;margin:0 24px}.cover{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.hero{min-height:610px;display:flex;justify-content:flex-end;align-items:center;color:white}.hero:after,.shop-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 20%,rgba(5,31,29,.25) 45%,rgba(5,31,29,.8) 100%);z-index:-1}.hero .cover{object-position:38% 55%}.hero-copy{width:47%;padding:50px 6vw 65px 20px}.hero-copy>p:not(.eyebrow){font-size:17px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--ocean);color:white;padding:15px 24px;font-size:15px;font-weight:700;min-height:50px;transition:background .2s}.button:hover{background:var(--teal-hover);text-decoration:none}.button.light{background:white;color:var(--ink)}.button.light:hover{background:var(--sea)}.hero-caption{position:absolute;left:35px;bottom:26px;font-size:13px;letter-spacing:.05em;text-shadow:0 1px 5px #000}.intro-strip{display:flex;justify-content:center;align-items:center;gap:52px;padding:25px 20px;border-bottom:1px solid var(--line);font-size:13px;text-transform:uppercase;letter-spacing:.15em;font-weight:600}.dot{color:var(--ocean);font-size:22px}.intro{text-align:center;max-width:850px;padding-top:80px;padding-bottom:80px}.intro>p:not(.eyebrow){color:var(--muted)}.text-link{font-size:15px;font-weight:600;border-bottom:1px solid;padding-bottom:5px;display:inline-block}.lesson-layout{background:var(--sand);display:grid;grid-template-columns:1.05fr 1fr;gap:7vw;align-items:center}.lesson-photo{position:relative;align-self:stretch;min-height:530px}.lesson-photo img{width:100%;height:100%;position:absolute;inset:0}.photo-tag{position:absolute;bottom:24px;left:24px;background:white;padding:9px 17px;font-size:14px;font-weight:600}.lesson-copy>p:not(.eyebrow):not(.times){color:var(--muted)}.price{display:flex;align-items:center;gap:20px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:25px 0}.price strong{font-size:50px;line-height:1;letter-spacing:-.05em}.price span{font-size:14px;line-height:1.6}.check-list{list-style:none;padding:0;font-size:15px}.check-list li{padding:5px 0 5px 24px;position:relative}.check-list li:before{content:'✓';position:absolute;left:0;color:var(--ocean)}.times{font-size:17px;font-weight:600;margin:22px 0}.times span{color:#84998e;margin:0 10px}.times small{display:block;font-size:13px;font-weight:400;color:var(--muted);margin-top:3px}.small{font-size:13px;margin:14px 0 0}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px}.section-heading h2{margin-bottom:0}.section-heading>p{color:var(--muted);font-size:15px;margin-bottom:0}.rental-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.rental-grid article{padding:28px;border-right:1px solid var(--line)}.rental-grid article:first-child{background:var(--sea)}.rental-grid article:last-child{border:0}.rental-category{font-size:12px;text-transform:uppercase;letter-spacing:.08em}.rental-grid h3{min-height:65px;margin:22px 0 28px}dl{margin:0}dl>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:15px}dd{margin:0;font-weight:600}.rental-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:23px}.rental-bottom p{font-size:13px;color:var(--muted);margin:0}.shop-panel{height:500px;display:flex;align-items:center;color:white}.shop-panel:after{background:linear-gradient(90deg,rgba(7,24,21,.83),rgba(7,24,21,.08))}.shop-copy{max-width:510px;padding:50px 6vw}.shop-copy h2{font-size:58px}.shop-copy>p:not(.eyebrow){font-size:15px}.brands{text-align:center;padding-top:42px;padding-bottom:42px;border-bottom:1px solid var(--line)}.brands>p:not(.eyebrow){display:flex;justify-content:center;flex-wrap:wrap;gap:45px;font-size:27px;font-weight:800;letter-spacing:-.06em;margin-bottom:16px}.brands>p span{font-style:italic}.brands small{font-size:13px;color:var(--muted)}.story{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.story-copy>p:not(.eyebrow){font-size:15px;color:var(--muted)}.story img{width:100%;height:560px;object-position:center}.story blockquote{margin:25px 0;font-family:Georgia,serif;font-size:25px;line-height:1.5;letter-spacing:-.03em}.review{background:var(--sea);text-align:center}.stars{color:var(--teal-hover);letter-spacing:5px;font-size:16px}.review blockquote{max-width:850px;margin:24px auto;font-size:clamp(23px,2.1vw,31px);font-family:Georgia,serif;line-height:1.5}.review>p:last-child{font-size:13px;margin:0}.review>p span{color:var(--muted)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-grid button{padding:0;border:0;position:relative;overflow:hidden;background:var(--sea)}.gallery-grid img{width:100%;height:300px;transition:transform .3s}.gallery-grid button:hover img{transform:scale(1.035)}.gallery-grid span{position:absolute;right:15px;bottom:15px;background:white;border-radius:50%;height:35px;width:35px;display:grid;place-items:center}.faq{display:grid;grid-template-columns:1fr 1.5fr;gap:7vw;padding-top:10px}.questions{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{padding:21px 28px 21px 0;font-size:15px;font-weight:600}summary:hover{color:var(--teal-hover)}details p{font-size:15px;color:var(--muted);padding-right:25px}.contact{background:var(--ocean);color:white;display:grid;grid-template-columns:1.4fr 1fr;gap:60px}.contact .eyebrow{color:var(--sea)}.contact h2{font-size:clamp(36px,4vw,58px)}.contact h3{font-family:inherit;font-size:13px;letter-spacing:.1em;text-transform:uppercase;margin:0 0 12px}.contact-details>a{display:block}.phone{font-size:30px;letter-spacing:-.05em;font-weight:600}.contact-details>a:nth-of-type(2){font-size:15px;margin:8px 0 30px}.contact dl{max-width:350px}.contact dl>div{border-bottom:1px solid #46635e}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-name{font-size:27px;font-weight:800;letter-spacing:-.06em}.footer-top p{font-size:14px;margin:0;color:var(--muted)}.footer-top>div{display:flex;gap:22px;font-size:14px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;margin-top:35px;font-size:12px}.disclaimer{font-size:12px;color:var(--muted);max-width:850px;margin:18px 0 0}footer.section{padding-top:45px;padding-bottom:30px}dialog{border:0;background:#fff;padding:50px 16px 12px;max-width:94vw;max-height:94dvh;color:var(--ink)}dialog::backdrop{background:rgba(7,20,18,.88)}dialog img{max-height:75dvh;max-width:85vw;object-fit:contain;margin:auto}dialog p{font-size:14px;margin:12px 0 0}.close-photo{position:absolute;right:16px;top:5px;background:white;border:0;padding:8px;min-height:40px}.close-photo:hover{background:var(--sea)}body:has(dialog[open]){overflow:hidden}
@media(min-width:1600px){.photo-panel{max-width:1552px;margin:auto}}
@media(max-width:1000px){.nav-side{gap:20px}.nav{gap:20px;padding-inline:25px}.hero-copy{width:50%;padding-right:35px}.hero{min-height:570px}.rental-grid article{padding:20px}.lesson-layout{gap:35px}.story{gap:40px}.gallery-grid img{height:230px}}
@media(max-width:700px){.announcement{font-size:12px;padding:9px 15px}.announcement a{display:block;margin:0}.nav{grid-template-columns:1fr 1fr;padding:12px 22px}.logo{width:84px;margin:0}.logo img{width:84px;height:84px}.nav-side{display:none}.menu-toggle{display:flex;justify-self:end;align-items:center;gap:12px;background:none;border:1px solid var(--line);padding:11px 17px;font-size:15px;min-height:46px}.menu-toggle:hover{background:var(--sea)}.mobile-menu{padding:0 24px 20px;display:grid}.mobile-menu a{padding:12px 0;border-bottom:1px solid var(--line);font-size:16px}.photo-panel{margin:0 12px}.hero{min-height:640px;align-items:flex-end;justify-content:flex-start}.hero .cover{object-position:30% center}.hero:after{background:linear-gradient(0deg,rgba(4,25,23,.92),rgba(4,25,23,.05) 95%)}.hero-copy{width:100%;padding:200px 25px 64px}.hero-copy .eyebrow{font-size:12px;margin-bottom:16px}.hero h1{font-size:50px;max-width:400px}.hero-copy>p:not(.eyebrow){font-size:15px}.hero-caption{left:25px;bottom:20px;font-size:11px}.intro-strip{gap:14px;font-size:10px;letter-spacing:.04em;padding:19px 12px}.dot{font-size:15px}.section{padding:55px 24px}.intro{padding-block:60px}.intro p{font-size:15px}.lesson-layout,.story,.faq,.contact{grid-template-columns:1fr;gap:32px}.lesson-photo{min-height:340px}.lesson-copy h2{font-size:40px}.lesson-copy p{font-size:15px}.lesson-copy .small{font-size:13px}.section-heading{display:block}.section-heading>p,.section-heading>.text-link{margin-top:20px}.rental-grid{grid-template-columns:1fr 1fr}.rental-grid article{padding:22px 17px}.rental-grid article:nth-child(2){border-right:0}.rental-grid article:nth-child(-n+2){border-bottom:1px solid var(--line)}.rental-category{font-size:10px}.rental-grid h3{font-size:24px;min-height:54px}.rental-bottom{align-items:flex-start;flex-direction:column}.shop-panel{height:470px}.shop-copy{padding:32px;max-width:370px}.shop-copy h2{font-size:49px}.brands>p:not(.eyebrow){gap:15px 28px;font-size:24px}.brands .eyebrow{font-size:11px}.story img{height:390px}.review blockquote{font-size:23px}.gallery-grid{grid-template-columns:1fr;gap:12px}.gallery-grid img{height:290px}.faq{padding-top:5px}.contact{gap:45px}.footer-top,.footer-bottom{align-items:flex-start;flex-wrap:wrap}.footer-top{flex-direction:column;gap:16px}.footer-bottom{font-size:12px}dialog img{max-width:83vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
@media(forced-colors:active){*{scrollbar-color:auto}.button{border:1px solid}.hero-copy,.shop-copy{background:Canvas;color:CanvasText}}

/* TikTok carousel: preserve the native vertical video frame at every size. */
.surf-videos{background:var(--sand)}.video-carousel{border:1px solid var(--line);background:var(--paper)}.video-slide{display:grid;grid-template-columns:1fr minmax(250px,320px);gap:50px;align-items:center;padding:32px 55px}.video-slide[hidden]{display:none}.video-story{max-width:440px}.video-story h3{font-size:clamp(30px,3.4vw,48px)}.video-story>p:not(.eyebrow){color:var(--muted);font-size:15px}.video-story .video-help{font-size:13px;margin-top:24px;margin-bottom:0}.video-frame{aspect-ratio:9/16;background:var(--ink);width:100%;overflow:hidden;border-radius:6px}.video-frame iframe{width:100%;height:100%;border:0;display:block}.video-controls{display:flex;gap:12px;align-items:center;justify-content:center;padding:17px 24px;border-top:1px solid var(--line)}.video-controls button{min-width:44px;min-height:44px;border:1px solid var(--line);background:var(--paper);color:var(--ink);font-size:15px}.video-controls button:hover{background:var(--sea)}.video-controls button[aria-pressed="true"]{background:var(--ocean);color:var(--paper);border-color:var(--ocean)}.video-choices{display:flex;gap:7px}.video-count{font-size:13px;color:var(--muted);margin-left:10px}.video-socials{display:flex;align-items:center;flex-wrap:wrap;gap:22px;font-size:14px;padding-top:22px}.video-socials span{margin-right:auto;color:var(--muted)}.video-socials a{font-weight:600}
@media(max-width:700px){.video-slide{grid-template-columns:1fr;padding:22px;gap:24px}.video-story h3{font-size:31px;margin-bottom:14px}.video-story .eyebrow{font-size:11px;margin-bottom:15px}.video-story>p:not(.eyebrow){font-size:15px}.video-story .video-help{font-size:12px;margin-top:12px}.video-frame{max-width:320px;margin:auto}.video-controls{padding:14px 10px;gap:8px;flex-wrap:wrap}.video-count{flex-basis:100%;text-align:center;margin:0}.video-socials{gap:14px 24px}.video-socials span{flex-basis:100%}.footer-top>div{flex-wrap:wrap}}

.footer-top .footer-socials{display:flex;gap:12px}.footer-socials a{display:grid;place-items:center;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;color:var(--ocean);transition:background .2s,color .2s}.footer-socials svg{width:21px;height:21px;display:block}.footer-socials a:hover{background:var(--ocean);color:var(--paper);text-decoration:none}.footer-socials a:active{transform:translateY(1px)}@media(prefers-reduced-motion:reduce){.footer-socials a{transition:none}}
/* Shared page navigation and content. */
.nav-side{gap:24px;white-space:nowrap}.nav-side [aria-current="page"],.mobile-menu [aria-current="page"],.footer-nav [aria-current="page"]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:7px}.breadcrumbs{display:flex;align-items:center;gap:14px;max-width:1600px;margin:auto;padding:16px max(6vw,24px);border-top:1px solid var(--line);font-size:14px;color:var(--muted)}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.breadcrumbs [aria-current]{color:var(--ink)}.inside-page main h1{font-size:clamp(40px,4.2vw,62px)}.inside-page .section-heading h1{margin-bottom:0}.lessons-page .faq{padding-top:80px}.shop-page .shop-copy{max-width:570px}.contact-page .contact{padding-block:85px}.home-features{background:var(--sand)}.feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.feature-link{display:block;min-width:0}.feature-link:hover{text-decoration:none}.feature-link:hover .text-link{text-decoration:underline}.feature-link img{width:100%;height:280px}.feature-link>div{padding:25px 0 0}.feature-link h3{font-size:26px;display:flex;justify-content:space-between;gap:16px}.feature-link h3 span{font-family:inherit;font-size:22px;flex-shrink:0}.feature-link p{color:var(--muted);font-size:15px;min-height:50px}.gallery-teaser,.rental-note{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:7vw}.gallery-teaser img,.rental-note img{height:380px;width:100%}.gallery-teaser p:not(.eyebrow),.rental-note p:not(.eyebrow){color:var(--muted)}.rental-note{background:var(--sand);grid-template-columns:1fr 1.2fr}.visit-strip{display:flex;align-items:center;justify-content:space-between;gap:35px;background:var(--ocean);color:var(--paper);padding-block:48px}.visit-strip h2{font-size:clamp(30px,3vw,42px);margin-bottom:12px}.visit-strip .eyebrow{margin-bottom:14px}.visit-strip p:last-child{margin-bottom:0}.visit-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}.visit-phone{font-size:22px;font-weight:600}.footer-nav{display:flex;align-items:center;flex-wrap:wrap;gap:10px 28px;margin-top:28px;font-size:15px}.footer-nav a{display:inline-flex;align-items:center;min-height:44px}.footer-bottom{margin-top:22px}
@media(min-width:701px) and (max-width:1000px){.nav{grid-template-columns:1fr 1fr;padding:12px 22px}.logo{width:84px;margin:0}.logo img{width:84px;height:84px}.nav-side{display:none}.menu-toggle{display:flex;justify-self:end;align-items:center;gap:12px;background:none;border:1px solid var(--line);padding:11px 17px;font-size:15px;min-height:46px}.menu-toggle:hover{background:var(--sea)}.mobile-menu{padding:0 24px 20px;display:grid}.mobile-menu a{padding:12px 0;border-bottom:1px solid var(--line);font-size:16px}.feature-grid{gap:20px}.feature-link img{height:230px}.feature-link h3{font-size:23px}}
@media(max-width:700px){.inside-page main h1{font-size:42px}.breadcrumbs{font-size:13px;padding-block:14px}.feature-grid{grid-template-columns:1fr;gap:36px}.feature-link img{height:260px}.feature-link p{min-height:0}.feature-link>div{padding-top:20px}.feature-link h3{margin-bottom:15px}.gallery-teaser,.rental-note{grid-template-columns:1fr;gap:30px}.gallery-teaser img,.rental-note img{height:280px}.rental-note img{grid-row:1}.visit-strip{flex-direction:column;align-items:flex-start;gap:28px}.visit-strip .eyebrow{font-size:12px}.visit-actions{width:100%}.visit-actions .button{width:100%;max-width:340px}.footer-nav{gap:0 24px}.lessons-page .faq{padding-top:55px}.contact-page .contact{padding-block:55px}.photo-tag{right:20px;left:20px;bottom:20px;font-size:13px}}

.contact-map{margin:24px 0;width:100%;height:320px;background:var(--sea);border:1px solid #6c8982;overflow:hidden}.contact-map iframe{display:block;width:100%;height:100%;border:0}.contact>div{min-width:0}@media(max-width:700px){.contact-map{height:290px}}

/* Coastal shading: sand, sea glass, and quiet wave contours. */
.header{background:var(--paper);box-shadow:0 4px 20px var(--shade-soft);position:sticky;top:0;z-index:10}.announcement{background:linear-gradient(110deg,var(--ocean-light),var(--ocean-deep))}.breadcrumbs{background:linear-gradient(90deg,var(--sand),var(--paper))}.intro-strip{background:var(--sand);border-bottom-color:var(--line)}.photo-panel{box-shadow:0 12px 28px var(--shade);border-radius:5px}.lesson-layout,.home-features,.surf-videos,.rental-note{background:radial-gradient(ellipse at top left,var(--sand-glow),transparent 65%),linear-gradient(145deg,var(--sand),var(--sea))}.review{background:radial-gradient(ellipse at top right,var(--sand-glow),transparent 70%),var(--sea)}.feature-link img,.story>img,.gallery-teaser>img{border-radius:4px;box-shadow:7px 8px 0 var(--photo-mat)}.lesson-photo img{border-radius:4px;box-shadow:0 12px 30px var(--shade)}.rental-grid{border:1px solid var(--line);border-radius:6px;background:var(--paper);box-shadow:0 14px 30px var(--shade-soft)}.rental-grid article:first-child{background:linear-gradient(145deg,var(--sea),var(--photo-mat));border-radius:5px 0 0 5px}.video-carousel{box-shadow:0 12px 30px var(--shade-soft);border-radius:6px}.video-controls{border-radius:0 0 6px 6px}.gallery-grid button{border-radius:4px;box-shadow:0 8px 20px var(--shade)}.button{box-shadow:0 4px 0 var(--shade);border-radius:3px}.button.light{box-shadow:0 4px 0 rgba(0,0,0,.18)}.contact,.visit-strip{background-color:var(--ocean-deep);background-image:url("assets/tide-lines.svg"),linear-gradient(120deg,var(--ocean-light),var(--ocean-deep));background-position:right bottom,center;background-size:680px auto,cover;background-repeat:no-repeat}.contact-map{box-shadow:0 10px 25px rgba(0,0,0,.16);border-radius:4px}footer.section{background:linear-gradient(180deg,var(--paper),var(--sand))}.built-by{margin:24px 0 0;padding-top:18px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);text-align:center}.built-by strong{font-weight:700;color:var(--ocean)}
@media(max-width:700px){.feature-link img,.story>img,.gallery-teaser>img{box-shadow:4px 5px 0 var(--photo-mat)}.rental-grid article:first-child{border-radius:5px 0 0 0}.contact,.visit-strip{background-size:440px auto,cover}}
@media(forced-colors:active){.contact,.visit-strip{background-image:none}.photo-panel,.feature-link img,.story>img,.gallery-teaser>img,.rental-grid,.video-carousel,.gallery-grid button,.button,.contact-map{box-shadow:none}}

/* Keep anchor targets visible below the sticky navigation. */
@media(max-width:1000px){html{scroll-padding-top:132px}.mobile-menu{max-height:calc(100dvh - 108px);overflow-y:auto;overscroll-behavior:contain}}

/* Shared lesson offer and prominent telephone booking. */
.lesson-offer{display:flex;flex-direction:column;gap:5px;margin:26px 0;padding:22px 0;border-block:1px solid var(--line)}
.lesson-offer strong{font-family:"Arial Rounded MT Bold","Trebuchet MS",sans-serif;font-size:clamp(32px,3.2vw,44px);line-height:1.1;letter-spacing:-.04em;color:var(--ocean)}
.lesson-offer span{font-size:17px;color:var(--ink)}
.button.lesson-call{width:100%;max-width:390px;min-height:94px;padding:20px 26px;gap:18px;text-align:left}
.lesson-call-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.lesson-call-label{font-size:16px;line-height:1.35}
.lesson-call-copy strong{font-size:clamp(22px,2.3vw,28px);line-height:1.2;letter-spacing:-.025em;white-space:nowrap}
.lesson-call>span[aria-hidden]{font-size:26px;flex-shrink:0}
.hero-lesson-details,.lesson-details{display:table;margin-top:20px}
@media(max-width:700px){.button.lesson-call{padding:18px 20px;min-height:90px}.lesson-call-label{font-size:15px}.lesson-offer span{font-size:16px}}

/* Pink lesson calls and teal navigation, shared across every page. */
.menu-toggle{background:var(--ocean);border-color:var(--ocean);color:white;border-radius:3px}
.menu-toggle:hover{background:var(--teal-hover);border-color:var(--teal-hover)}
.button.lesson-call,.button.lesson-call.light{background:var(--accent);color:var(--ink)}
.button.lesson-call:hover,.button.lesson-call.light:hover{background:var(--pink-hover);color:var(--ink)}
.built-by strong{color:var(--teal-hover)}
.contact .eyebrow{color:white}
.nav-side [aria-current="page"],.mobile-menu [aria-current="page"],.footer-nav [aria-current="page"]{text-decoration-color:var(--accent)}

/* Lesson policies stay visible; no disclosures to open before booking. */
.lesson-details-section{display:grid;grid-template-columns:1fr 1.5fr;gap:7vw}
.lesson-notes>section{padding:26px 0;border-top:1px solid var(--line)}
.lesson-notes>section:first-child{padding-top:0;border-top:0}
.lesson-notes h3{font-size:25px;margin-bottom:15px}
.lesson-notes p,.lesson-notes li{color:var(--muted);font-size:16px}
.lesson-notes ul{padding-left:22px;margin-bottom:0}
.lesson-notes li+li{margin-top:12px}
.lesson-notes p:last-child{margin-bottom:0}
.lesson-notes .text-link{color:var(--ink);margin:0 20px 10px 0;min-height:44px}
.arrival-note{max-width:1100px}
@media(max-width:700px){.lesson-details-section{grid-template-columns:1fr;gap:24px}.lesson-notes h3{font-size:24px}}

/* The photo album keeps the full frame visible, including portrait photos. */
.gallery-intro{padding-bottom:36px;background:var(--sand)}
.gallery-intro h1{font-size:clamp(42px,6vw,78px);margin-bottom:22px}
.gallery-intro p:not(.eyebrow){max-width:650px;color:var(--muted)}
.album-links{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.album-grid{columns:3;column-gap:20px;display:block}
.album-grid button{display:block;width:100%;margin:0 0 20px;break-inside:avoid;cursor:zoom-in}
.album-grid img{display:block;width:100%;height:auto;object-fit:contain}
.clip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.local-clips{background:var(--sea)}
.surf-clip{margin:0;min-width:0}
.surf-clip video{display:block;width:100%;aspect-ratio:9/16;object-fit:contain;background:#123537;border-radius:5px;box-shadow:5px 6px 0 var(--photo-mat)}
.surf-clip figcaption{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:15px;padding:16px 0;font-weight:700}
.surf-clip figcaption a{min-height:44px;display:inline-flex;align-items:flex-start;text-decoration:underline;text-underline-offset:4px}
.page-photo-row{display:flex;gap:24px}
.page-photo-row a{flex:1;min-width:0}
.page-photo-row img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:4px;box-shadow:5px 6px 0 var(--photo-mat)}
@media(max-width:1000px){.album-grid{columns:2}.clip-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.album-grid{columns:1}.page-photo-row{flex-direction:column}.clip-grid{gap:20px 14px}.surf-clip figcaption{font-size:14px}.gallery-intro{padding-top:35px}}
@media(max-width:420px){.clip-grid{grid-template-columns:1fr}.surf-clip{max-width:340px;width:100%;margin-inline:auto}}

/* User-supplied Corner’s logo, shared across every page. */
.logo img{object-fit:contain}
.footer-brand{display:flex;align-items:center;gap:18px;text-decoration:none}
.footer-brand img{display:block;width:100px;height:100px;object-fit:contain;border-radius:50%;background:#000;flex-shrink:0}
@media(max-width:700px){.footer-brand img{width:84px;height:84px}.footer-brand{font-size:24px}}

/* Three real TikTok players arranged around a single active center card. */
.coverflow{--card-width:300px;border:0;background:transparent;box-shadow:none;border-radius:0}
.coverflow-stage{position:relative;height:590px;max-width:950px;margin:0 auto;perspective:1100px;isolation:isolate}
.coverflow-card{position:absolute;top:15px;left:50%;width:var(--card-width);transform-origin:center;transition:transform .45s ease,filter .45s ease;box-shadow:0 22px 38px rgba(18,53,55,.22);border-radius:12px;background:var(--ink)}
.coverflow-card .video-frame{max-width:none;border:4px solid var(--paper);border-radius:12px;aspect-ratio:9/16}
.coverflow-card[data-position="center"]{z-index:3;transform:translateX(-50%) translateZ(40px)}
.coverflow-card[data-position="left"]{z-index:1;transform:translateX(calc(-50% - 245px)) translateY(30px) rotateY(24deg) scale(.83);filter:brightness(.78)}
.coverflow-card[data-position="right"]{z-index:1;transform:translateX(calc(-50% + 245px)) translateY(30px) rotateY(-24deg) scale(.83);filter:brightness(.78)}
.coverflow-pick{position:absolute;inset:0;width:100%;border:0;border-radius:12px;background:transparent;color:white;cursor:pointer;padding:20px;display:flex;align-items:flex-end;justify-content:center}
.coverflow-pick[hidden]{display:none}
.coverflow-pick>span{background:var(--ink);padding:12px 16px;border-radius:5px;font-size:16px;font-weight:700}
.coverflow-pick:hover{background:rgba(255,255,255,.08)}
.coverflow-caption{text-align:center;margin:12px auto 20px}
.coverflow-caption h3{font-size:28px;margin:0 0 12px}
.coverflow-caption .text-link{font-size:15px}
.coverflow .video-controls{border:0;padding:8px;flex-wrap:wrap}
.coverflow-hint{text-align:center;font-size:14px;color:var(--muted);margin:18px 0 0}
@media(max-width:1000px){.coverflow{--card-width:270px}.coverflow-stage{height:535px}.coverflow-card[data-position="left"]{transform:translateX(calc(-50% - 180px)) translateY(24px) rotateY(24deg) scale(.8)}.coverflow-card[data-position="right"]{transform:translateX(calc(-50% + 180px)) translateY(24px) rotateY(-24deg) scale(.8)}}
@media(max-width:700px){.coverflow{--card-width:clamp(180px,55vw,270px)}.coverflow-stage{height:calc(var(--card-width)*1.9 + 24px);margin-inline:-10px}.coverflow-card{top:12px}.coverflow-card[data-position="center"]{transform:translateX(-50%)}.coverflow-card[data-position="left"]{transform:translateX(calc(-50% - 24vw)) translateY(20px) rotateY(28deg) scale(.72)}.coverflow-card[data-position="right"]{transform:translateX(calc(-50% + 24vw)) translateY(20px) rotateY(-28deg) scale(.72)}.coverflow-pick{padding:6px}.coverflow-pick>span{font-size:12px;padding:8px}.coverflow-caption h3{font-size:25px}}
@media(prefers-reduced-motion:reduce){.coverflow-card{transition:none}}

.mobile-rating{display:none}
@media(max-width:700px){
 .mobile-decoration{display:none!important}
 .intro-strip .dot{display:none}
 .mobile-rating{display:inline;font-size:16px;letter-spacing:normal}
 .check-list li:before{content:none}
 .check-list li{padding-left:0}
}

/* Brand strip: transparent original artwork, framed without distortion. */
.brand-strip { position: relative; overflow: hidden; background: var(--paper); border-block: 1px solid var(--line); padding-block: 12px; }
.brand-track { width: 100%; }
.brand-group { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 20px 48px; padding: 12px 24px; margin: 0; list-style: none; }
.brand-item { flex: 0 0 150px; height: 60px; display: grid; place-items: center; }
.brand-logo { display: block; width: 150px; height: 60px; overflow: visible; transition: transform 180ms ease; }
.brand-logo--light { filter: brightness(0); }
.brand-strip.is-ready .brand-track { display: flex; width: max-content; animation: brand-drift 48s linear infinite; }
.brand-strip.is-ready .brand-group { flex-wrap: nowrap; flex: 0 0 auto; min-width: 100vw; justify-content: space-around; }
.brand-strip:is(:hover, :focus-within) .brand-track { animation-play-state: paused; }
@media (hover: hover) { .brand-item:hover .brand-logo { transform: scale(1.08); } }
@keyframes brand-drift { to { transform: translateX(-50%); } }
@media (max-width: 700px) {
  .brand-group { gap: 16px 28px; padding-inline: 14px; }
  .brand-item { flex-basis: 124px; height: 52px; }
  .brand-logo { width: 124px; height: 52px; }
  .brand-strip.is-ready .brand-track { animation-duration: 40s; }
}
@media (prefers-reduced-motion: reduce) {
  .brand-strip.is-ready .brand-track { display: block; width: 100%; animation: none; transform: none; }
  .brand-strip.is-ready .brand-group { flex-wrap: wrap; min-width: 0; justify-content: center; }
  .brand-group[aria-hidden="true"] { display: none; }
  .brand-logo { transition: none; }
  .brand-item:hover .brand-logo { transform: none; }
}
@media print {
  .brand-strip.is-ready .brand-track { width: 100%; display: block; animation: none; }
  .brand-strip.is-ready .brand-group { flex-wrap: wrap; min-width: 0; }
  .brand-group[aria-hidden="true"] { display: none; }
}

/* User-supplied surfboard menu artwork; transparent padding framed by SVG. */
.menu-toggle {
  width: 80px; height: 84px; padding: 5px 10px; border: 0; border-radius: 8px;
  justify-content: center; background: transparent; color: var(--ink);
}
.menu-toggle:hover, .menu-toggle[aria-expanded="true"] { background: var(--sea); }
.surfboard-menu-icon { display: block; width: 60px; height: 74px; }
.menu-toggle:focus-visible { outline: 3px solid var(--ocean); outline-offset: 3px; }
@media (forced-colors: active) { .menu-toggle { border: 2px solid ButtonText; } }

/* Keep rental prices readable on narrow phones without horizontal overflow. */
@media (max-width: 380px) {
  .rental-grid { grid-template-columns: 1fr; }
  .rental-grid article { border-right: 0; border-bottom: 1px solid var(--line); }
  .rental-grid article:last-child { border-bottom: 0; }
  .rental-grid article:first-child { border-radius: 5px 5px 0 0; }
  .rental-grid h3 { min-height: 0; margin-block: 12px; }
}

/* Shared bottom-of-page location map. */
.footer-map { padding-block: 48px; }
.footer-map-heading { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 24px; }
.footer-map-heading h2 { font-size: clamp(28px, 3vw, 38px); margin-bottom: 10px; }
.footer-map-heading p { margin-bottom: 0; color: var(--muted); }
.footer-map-heading > a { flex-shrink: 0; }
.footer-map-frame { height: 340px; overflow: hidden; border: 1px solid var(--line); border-radius: 4px; background: var(--sea); }
.footer-map-frame iframe { display: block; width: 100%; height: 100%; border: 0; }
@media (max-width: 700px) {
  .footer-map-heading { align-items: flex-start; flex-direction: column; gap: 14px; }
  .footer-map-frame { height: 280px; }
}

/* November shop additions: preserve the supplied artwork and shared mobile layout. */
.phone-icon{display:inline-block;width:20px;height:20px;flex:0 0 20px;vertical-align:middle;margin-right:8px}.lesson-call .phone-icon{width:25px;height:25px;flex-basis:25px}.brand-logo--dark{background:#101010;border-radius:3px;padding:5px;overflow:hidden}.shop-brand-section{background:var(--sand)}.shop-brand-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:35px 0 0;padding:0;list-style:none}.shop-brand-grid .brand-item{height:150px;min-width:0;background:var(--paper);border:1px solid var(--line);padding:20px}.shop-brand-grid .brand-logo{width:100%;max-width:230px;height:105px;overflow:hidden}.beach-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;padding-top:0}.beach-photo-strip img{width:100%;height:250px;object-fit:cover;border-radius:4px}.surf-report{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:7vw;background:var(--sand)}.surf-report img{width:100%;height:360px;object-fit:cover;border-radius:4px}.surf-report p:not(.eyebrow){color:var(--muted)}.customer-reviews{background:var(--sea)}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.review-grid figure{margin:0;padding-top:25px;border-top:2px solid var(--ocean)}.review-grid blockquote{font-size:19px;line-height:1.65;margin:0 0 24px}.review-grid figcaption{font-weight:600}.review-grid figcaption span{display:block;font-size:12px;font-weight:400;color:var(--muted);margin-top:6px}
@media(max-width:700px){.phone-icon{width:17px;height:17px;flex-basis:17px;margin-right:5px}.shop-brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.shop-brand-grid .brand-item{height:125px;padding:16px}.shop-brand-grid .brand-logo{height:90px}.beach-photo-strip{gap:12px;grid-template-columns:1fr}.beach-photo-strip img{height:240px}.surf-report{grid-template-columns:1fr;gap:28px}.surf-report img{height:260px}.review-grid{grid-template-columns:1fr;gap:32px}.review-grid blockquote{font-size:18px}}

.why-us{max-width:700px;margin:42px auto 0;padding-top:32px;border-top:1px solid var(--line)}.why-us h3{text-transform:uppercase;letter-spacing:.15em;font-family:inherit;font-size:14px;margin-bottom:18px}.why-us p{font-size:18px;line-height:1.75;margin-bottom:0;color:var(--muted)}
@media(max-width:700px){.why-us{margin-top:32px;padding-top:26px}.why-us p{font-size:16px}}

.hero-copy>p.hero-booking-note{font-size:16px;line-height:1.6;max-width:460px;margin:22px 0 18px}.hero-copy .hero-booking-note+.hero-lesson-details{margin-top:0}
@media(max-width:700px){.hero-copy>p.hero-booking-note{font-size:15px;margin-top:20px}}

/* Local beach cameras use the hosts' public players, preserving their controls. */
.surf-cams{background:var(--sand)}
.surf-cams-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:end;margin-bottom:32px}.surf-cams-heading h2{max-width:680px;margin-bottom:0}.surf-cams-heading>p{max-width:460px;color:var(--muted);margin:0}
.surf-cams-players{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.beach-cam{min-width:0;background:var(--paper);border:1px solid var(--line);border-radius:4px;overflow:hidden}.beach-cam-player{aspect-ratio:16/9;background:var(--ink)}.beach-cam-player iframe{display:block;width:100%;height:100%;border:0}.beach-cam-caption{padding:22px 24px}.beach-cam-caption h3{font-size:25px;margin:0 0 8px}.beach-cam-caption p{font-size:14px;line-height:1.6;color:var(--muted);margin:0}.beach-cam-caption a{color:var(--teal-hover);text-underline-offset:3px}.beach-cam-caption a:focus-visible{outline:3px solid var(--ocean);outline-offset:4px}.beach-cam-caption a:hover{color:var(--ink)}
.surf-cams-footer{display:flex;justify-content:space-between;align-items:center;gap:28px;margin-top:24px}.surf-cams-footer p{font-size:13px;line-height:1.6;color:var(--muted);max-width:560px;margin:0}.surf-cams-footer>a{flex-shrink:0;font-size:14px}
@media(max-width:1000px){.surf-cams-heading{grid-template-columns:1fr;gap:18px}.surf-cams-footer{align-items:start;flex-direction:column;gap:14px}}
@media(max-width:700px){.surf-cams-players{grid-template-columns:1fr;gap:22px}.beach-cam-caption{padding:18px}.beach-cam-caption h3{font-size:23px}.surf-cams-heading{margin-bottom:24px}.surf-cams-footer>a{flex-shrink:1}}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Customer stories: generous quote cards with grounded author attribution. */
.customer-reviews{background:var(--sea)}.reviews-heading{align-items:center;margin-bottom:38px}.reviews-heading .eyebrow{color:var(--teal-hover);margin-bottom:16px}.reviews-heading h2{font-size:clamp(38px,4vw,58px)}
.reviews-google-link{display:inline-flex;align-items:center;gap:20px;padding:14px 20px;border:1px solid var(--ocean);border-radius:999px;color:var(--teal-hover);font-size:14px;font-weight:600;min-height:48px}.reviews-google-link svg{width:19px;height:19px;flex-shrink:0}.reviews-google-link:hover{background:var(--paper);text-decoration:none}.reviews-google-link:active{background:var(--sand)}
.customer-reviews .review-grid{gap:24px;align-items:stretch}.customer-reviews .review-card{display:flex;flex-direction:column;min-width:0;margin:0;padding:28px 30px 30px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 8px 24px var(--shade-soft)}.customer-reviews .review-card:nth-child(2){background:var(--sand);border-color:var(--accent)}
.review-quote-mark{display:block;height:55px;font-family:Georgia,serif;font-size:86px;line-height:1;color:var(--ocean);user-select:none}.customer-reviews .review-card blockquote{font-size:18px;line-height:1.7;margin:14px 0 30px;letter-spacing:-.01em}.customer-reviews .review-card figcaption{display:flex;align-items:center;gap:13px;margin-top:auto;padding-top:20px;border-top:1px solid var(--line)}.customer-reviews .review-card .review-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;margin:0;border-radius:50%;background:var(--sea);color:var(--ocean-deep);font-size:14px;font-weight:700}.customer-reviews .review-card .review-author{display:flex;flex-direction:column;gap:2px;margin:0}.review-author strong{color:var(--ink);font-size:16px}.customer-reviews .review-author>span{font-size:13px;margin:0;color:var(--muted)}.reviews-source{font-size:13px;color:var(--muted);margin:22px 0 0;text-align:center}
@media(min-width:701px) and (max-width:1050px){.customer-reviews .review-grid{gap:16px}.customer-reviews .review-card{padding:24px 20px}.customer-reviews .review-card blockquote{font-size:16px}}
@media(max-width:700px){.reviews-heading{display:flex;flex-direction:column;align-items:flex-start;gap:24px;margin-bottom:28px}.customer-reviews .review-grid{gap:18px}.customer-reviews .review-card{padding:24px}.customer-reviews .review-card blockquote{font-size:17px;margin-bottom:24px}.reviews-google-link{font-size:14px}.reviews-source{text-align:left}}

/* Short booking labels and an explicit per-person lesson offer. */
.hero-copy>p.hero-price-note{font-size:16px;font-weight:600;line-height:1.5;margin:0 0 18px;max-width:370px}.lesson-offer .lesson-price-note{font-size:14px;color:var(--muted);margin-top:5px}
@media(max-width:700px){.button.lesson-call{width:auto;max-width:100%;min-height:72px;padding:12px 18px;gap:12px}.lesson-call-label{font-size:14px}.lesson-call-copy{gap:2px}.lesson-call-copy strong{font-size:22px}.lesson-call>.phone-icon{width:21px;height:21px;flex-basis:21px;margin-right:0}.lesson-call>span[aria-hidden]{display:none}.hero-copy>p.hero-price-note{font-size:15px;margin-bottom:16px}}

/* Lightweight TikTok placeholders reserve space without loading hidden players. */
.video-frame{position:relative}.video-preview{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;color:var(--paper);background:var(--ocean-deep) url("assets/tide-lines.svg") center/cover;font-size:15px;font-weight:600}.video-preview img{width:96px;height:96px;object-fit:contain;border-radius:50%}.video-frame iframe{position:relative;z-index:1}.video-frame iframe:not([src]){display:none}
.brand-swipe-hint{display:none}
@media(max-width:700px){.brand-swipe-hint{display:block;margin:0;padding:14px 24px 8px;font-size:13px;color:var(--muted);background:var(--paper)}.brand-strip{overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.brand-strip.is-ready .brand-track,.brand-strip .brand-track{display:block;width:max-content;animation:none;transform:none}.brand-strip.is-ready .brand-group,.brand-strip .brand-group{flex-wrap:nowrap;min-width:0;justify-content:flex-start;gap:28px;padding-inline:24px}.brand-strip .brand-item{scroll-snap-align:start}.brand-strip .brand-group[aria-hidden="true"]{display:none}.shop-brand-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;gap:16px;padding:8px 0 16px}.shop-brand-grid .brand-item{flex:0 0 72%;height:150px;scroll-snap-align:start}.shop-brand-section .brand-swipe-hint{padding:0;background:none}.brand-strip:focus-visible,.shop-brand-grid:focus-visible{outline-offset:-3px}}

/* Dedicated surf report: local forecast first, nearby forecasts and camera players. */
.report-hero{display:grid;grid-template-columns:1fr 1.1fr;align-items:center;gap:6vw;background:var(--sand)}.report-hero h1{font-size:clamp(42px,4.8vw,68px)}.report-hero p:not(.eyebrow){color:var(--muted);max-width:480px}.report-hero .report-lead{font-size:20px;font-weight:600;color:var(--ink)}.report-hero figure{margin:0}.report-hero img{width:100%;height:360px;object-fit:cover;border-radius:8px;box-shadow:8px 8px 0 var(--photo-mat)}.report-hero figcaption{font-size:13px;color:var(--muted);margin-top:18px}.report-forecasts{background:var(--paper)}.report-forecast-grid{display:grid;grid-template-columns:1fr 1fr;gap:36px}.report-home-forecast{padding:36px;border-radius:12px;background:var(--ocean-deep) url("assets/tide-lines.svg") right bottom/cover;color:var(--paper)}.report-location{font-size:13px;text-transform:uppercase;letter-spacing:.13em}.report-home-forecast h3{font-size:36px;margin:22px 0 16px}.report-home-forecast p{max-width:440px;margin-bottom:28px}.report-nearby{padding:12px 0}.report-nearby h3{font-size:25px;margin-bottom:22px}.report-nearby>a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 0;border-top:1px solid var(--line)}.report-nearby strong{font-size:20px}.report-nearby small{display:block;font-size:13px;color:var(--muted);margin-top:5px}.report-link-label{font-size:14px;color:var(--teal-hover);text-decoration:underline;text-underline-offset:5px;white-space:nowrap}.report-nearby>p{font-size:13px;color:var(--muted);margin:20px 0 0}.report-forecasts .section-heading>p{max-width:300px}.nav-left{gap:20px}
@media(max-width:700px){.report-hero,.report-forecast-grid{grid-template-columns:1fr;gap:30px}.report-hero img{height:250px;box-shadow:4px 4px 0 var(--photo-mat)}.report-hero .report-lead{font-size:18px}.report-home-forecast{padding:26px}.report-home-forecast h3{font-size:31px}.report-nearby>a{gap:12px}.report-nearby strong{font-size:18px}.report-link-label{font-size:13px}.report-forecasts .section-heading>p{margin-top:18px}.surf-report-page .visit-actions .button{font-size:14px;padding-inline:16px}}
