@import url('https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@500;600;700;800&family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--tide:#1C2B2D;--atlantic:#2E5D7A;--glass:#5DCAA5;--drift:#E8DCC8;--wet:#8B7355;--salt:#F5F0E8;--ink:#182c2d;--inkSoft:#425456;--serif:Georgia,'Times New Roman',serif;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--max:1230px;--header:84px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--tide);color:var(--salt);font-family:var(--body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--glass)}
a:focus-visible,button:focus-visible{outline:3px solid var(--glass);outline-offset:4px}
img{max-width:100%;display:block}
button{font:inherit}
.wrap{width:min(calc(100% - 80px),var(--max));margin-inline:auto}
.skip{position:absolute;left:-9999px;top:12px;z-index:100;padding:12px 20px;background:var(--salt);color:var(--tide)}
.skip:focus{left:20px}
.site-header{height:var(--header);position:relative;z-index:50;background:var(--tide);border-bottom:1px solid rgba(232,220,200,.16)}
.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand-link{display:flex;align-items:center;gap:12px;font:700 25px/1 var(--display);letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}
.brand-link img{width:34px;height:39px;object-fit:contain}
.brand-link strong{font-weight:700}
.nav-items{display:flex;align-items:center;gap:34px}
.nav-items a{font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;transition:color .2s}
.nav-items a[aria-current='page']{color:var(--glass)}
.nav-contact{display:inline-flex;align-items:center;justify-content:center;min-height:41px;padding:0 20px;border:1px solid rgba(93,202,165,.66);border-radius:2px;color:var(--glass)!important}
.nav-contact:hover{background:var(--glass);color:var(--tide)!important}
.nav-toggle{display:none;border:1px solid rgba(232,220,200,.24);background:transparent;color:var(--salt);border-radius:3px;padding:9px 13px;cursor:pointer}
.eye{display:inline-flex;align-items:center;gap:13px;font-size:11px;line-height:1.2;font-weight:700;text-transform:uppercase;letter-spacing:.2em}
.eye::before{content:'';width:26px;height:1px;background:currentColor;opacity:.7}
.eye-glass{color:var(--glass)}
.eye-blue{color:var(--atlantic)}
.eye-dark{color:var(--tide)}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:var(--display);font-weight:700;line-height:.91;letter-spacing:.006em;text-transform:uppercase}
p{line-height:1.78}
.lede{font-size:clamp(17px,1.6vw,21px);line-height:1.72;color:rgba(245,240,232,.78);max-width:630px}
.lede-dark{color:#47595b}
.button{min-height:50px;display:inline-flex;align-items:center;justify-content:center;gap:25px;padding:13px 24px;border-radius:2px;line-height:1.2;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.13em;transition:background .2s,transform .2s,color .2s,border .2s;border:1px solid transparent}
.button:hover{transform:translateY(-2px)}
.btn-glass{background:var(--glass);color:var(--tide)}
.btn-glass:hover{background:var(--salt);color:var(--tide)}
.btn-quiet{border-color:rgba(245,240,232,.36);color:var(--salt)}
.btn-quiet:hover{border-color:var(--glass);color:var(--glass)}
.btn-dark{background:var(--tide);color:var(--salt)}
.btn-dark:hover{background:var(--atlantic);color:var(--salt)}
.btn-outline-dark{border-color:rgba(28,43,45,.48);color:var(--tide)}
.btn-outline-dark:hover{background:var(--tide);color:var(--salt)}
.actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}
.hero{position:relative;overflow:hidden;background:radial-gradient(ellipse at 83% 36%,rgba(46,93,122,.28),transparent 44%),radial-gradient(ellipse at 10% 90%,rgba(93,202,165,.065),transparent 50%),var(--tide)}
.hero::before{position:absolute;content:'';inset:0;opacity:.1;pointer-events:none;background-image:repeating-linear-gradient(135deg,transparent 0,transparent 4px,rgba(245,240,232,.18) 4px,rgba(245,240,232,.18) 4.5px)}
.hero::after{position:absolute;content:'';height:370px;width:100%;left:0;bottom:-160px;border-top:1px solid rgba(93,202,165,.12);border-radius:50% 50% 0 0;pointer-events:none}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:630px;gap:25px;align-items:center;padding-top:40px;padding-bottom:70px;position:relative;z-index:1}
.hero-copy{padding:30px 0 25px}
.hero h1{font-size:clamp(82px,9.3vw,150px);margin:28px 0 30px;max-width:700px}
.hero h1 em{font-style:normal;color:var(--glass)}
.hero .lede{max-width:500px;font-size:18px}
.hero-art{min-height:570px;display:flex;align-items:center;justify-content:center;position:relative;padding:20px}
.hero-art::before{content:'';position:absolute;border:1px solid rgba(93,202,165,.15);width:min(100%,530px);aspect-ratio:1/1;border-radius:50%}
.hero-art::after{content:'';position:absolute;border:1px solid rgba(93,202,165,.09);width:min(120%,640px);aspect-ratio:1/1;border-radius:50%}
.hero-crest{width:min(100%,470px);z-index:2;filter:drop-shadow(0 30px 36px rgba(0,0,0,.16));transform:translateY(-8px)}
.art-coordinates{position:absolute;font-size:11px;font-weight:700;letter-spacing:.18em;color:rgba(232,220,200,.55);z-index:2;bottom:28px;right:8px;text-transform:uppercase}
.hero-scroll-note{position:absolute;bottom:22px;left:0;font-size:10px;color:rgba(232,220,200,.62);letter-spacing:.19em;text-transform:uppercase}
.manifesto-strip{background:var(--atlantic);padding:22px 0}
.strip-inner{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}
.strip-inner span{font:600 clamp(16px,2vw,26px)/1 var(--display);letter-spacing:.13em;text-transform:uppercase}
.strip-inner i{width:5px;height:5px;border-radius:100%;background:var(--glass)}
.section{padding:112px 0}
.story{background:var(--salt);color:var(--tide)}
.story-grid{display:grid;grid-template-columns:1fr .84fr;gap:8vw;align-items:center}
.section h2{font-size:clamp(56px,7vw,106px);margin:27px 0 28px}
.story p{font-size:17px;color:#45585a;max-width:590px}
.story-panel{min-height:490px;background:var(--drift);position:relative;overflow:hidden;display:flex;align-items:flex-end;border:1px solid rgba(28,43,45,.07)}
.story-panel::before{content:'';position:absolute;width:440px;height:440px;border-radius:50%;right:-108px;top:-95px;border:65px solid rgba(46,93,122,.12)}
.story-panel::after{content:'';position:absolute;width:310px;height:310px;border-radius:50%;left:-128px;bottom:-155px;border:65px solid rgba(139,115,85,.12)}
.story-panel-canvas{position:absolute;inset:60px 54px 95px;border:1px solid rgba(28,43,45,.2)}
.story-panel-canvas:before{content:'';position:absolute;inset:12px;border:1px solid rgba(28,43,45,.14)}
.story-panel-title{font:800 clamp(95px,12vw,166px)/.69 var(--display);color:rgba(28,43,45,.22);letter-spacing:-.01em;position:absolute;top:118px;left:60px;transform:rotate(-90deg);transform-origin:left top}
.story-panel-content{position:relative;z-index:2;margin:0 50px 48px auto;max-width:240px}
.story-panel-content .kicker{color:var(--wet);font-size:11px;letter-spacing:.2em;font-weight:700;text-transform:uppercase}
.story-panel-content strong{display:block;font:700 46px/.99 var(--display);text-transform:uppercase;margin-top:13px}
.work{background:var(--tide);position:relative;overflow:hidden}
.work::after{content:'01';position:absolute;top:35px;right:4vw;font:800 360px/1 var(--display);color:rgba(245,240,232,.028);pointer-events:none}
.work-head{display:flex;align-items:end;justify-content:space-between;gap:38px;margin-bottom:46px;position:relative;z-index:1}
.work-head h2{margin-bottom:0}
.work-head p{max-width:390px;color:rgba(245,240,232,.68);margin-bottom:4px}
.project{display:grid;grid-template-columns:1fr 1fr;min-height:540px;position:relative;z-index:1;border:1px solid rgba(245,240,232,.18)}
.project-copy{background:linear-gradient(140deg,#28484d 0%,#223738 76%);padding:66px 55px;display:flex;flex-direction:column;justify-content:center}
.project-copy .status{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--glass);font-weight:700}
.project-copy h3{font-size:clamp(68px,8vw,119px);margin:16px 0 14px}
.project-copy .project-tagline{font:italic 29px/1.25 var(--serif);color:var(--drift);margin-bottom:20px}
.project-copy p{color:rgba(245,240,232,.73);max-width:480px}
.project-visual{background:radial-gradient(circle at 80% 23%,#edf1ea,#d5e5df 62%,#bdcecb);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:500px}
.project-visual::before{content:'BEACH DAY';position:absolute;left:-12px;bottom:-35px;font:800 clamp(70px,10vw,154px)/1 var(--display);color:rgba(46,93,122,.07);white-space:nowrap}
.project-visual img{width:min(66%,292px);height:auto;max-height:500px;object-fit:contain;object-position:center;position:relative;z-index:2;filter:drop-shadow(6px 17px 20px rgba(18,45,48,.18))}
.landscape{background:var(--drift);color:var(--tide)}
.landscape-header{display:flex;justify-content:space-between;align-items:end;gap:35px;margin-bottom:48px}
.landscape h2{margin-bottom:0}
.landscape .intro{max-width:350px;color:#45585a;margin:0}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pillar{position:relative;overflow:hidden;min-height:420px;display:flex;flex-direction:column;justify-content:flex-end;padding:34px;border:1px solid rgba(28,43,45,.15);transition:transform .2s}
.pillar:hover{transform:translateY(-4px)}
.pillar-coast{color:var(--salt);background:radial-gradient(circle at 70% 23%,rgba(93,202,165,.38),transparent 24%),linear-gradient(150deg,#274d5e,#14323b 70%)}
.pillar-create{color:var(--tide);background:linear-gradient(135deg,#a0c5b3,#d2ded2)}
.pillar-enjoy{color:var(--salt);background:linear-gradient(145deg,#795f4e,#413c37 85%)}
.pillar::before{content:'';position:absolute;left:-27%;top:-23%;height:335px;width:335px;border-radius:50%;border:48px solid currentColor;opacity:.07}
.pillar::after{content:'';position:absolute;right:-26%;top:11%;height:260px;width:260px;border-radius:50%;border:1px solid currentColor;opacity:.22}
.pillar-num{font-size:11px;letter-spacing:.21em;text-transform:uppercase;font-weight:700;position:absolute;top:30px;left:32px;opacity:.8}
.pillar-art{position:absolute;top:80px;right:45px;font:800 clamp(85px,10vw,160px)/1 var(--display);opacity:.12;transform:rotate(-8deg)}
.pillar h3{font-size:48px;position:relative;z-index:1;margin-bottom:9px}
.pillar p{font-size:13px;position:relative;z-index:1;line-height:1.65;margin:0;max-width:260px;opacity:.9}
.heritage{position:relative;overflow:hidden;background:var(--atlantic);padding:95px 0}
.heritage-inner{display:grid;grid-template-columns:.65fr 1.35fr;gap:7vw;align-items:center}
.heritage h2{font-size:clamp(64px,9vw,142px);margin:0}
.heritage h2 span{color:var(--glass)}
.heritage p{color:rgba(245,240,232,.79)}
.heritage .small-note{font:700 12px/1.7 var(--body);letter-spacing:.1em;text-transform:uppercase;color:var(--glass)}
.site-footer{background:#152326;color:var(--salt);border-top:1px solid rgba(232,220,200,.12)}
.footer-upper{padding:75px 0 58px;display:flex;justify-content:space-between;align-items:end;gap:35px}
.footer-upper h2{font-size:clamp(63px,8vw,120px);margin:18px 0 0}
.footer-right{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.footer-right a{border-bottom:1px solid rgba(245,240,232,.25);padding-bottom:3px;font-weight:600}
.footer-bottom{padding:21px 0;display:flex;justify-content:space-between;gap:20px;align-items:center;border-top:1px solid rgba(232,220,200,.14);font-size:11px;letter-spacing:.08em;color:rgba(245,240,232,.58)}
.footer-bottom a{color:var(--drift)}
.footer-bottom a:hover{color:var(--glass)}
.footer-links{display:flex;gap:20px;flex-wrap:wrap}
/* inner pages */
.inner-hero{padding:95px 0 83px;background:radial-gradient(circle at 88% 5%,rgba(93,202,165,.07),transparent 42%),var(--tide)}
.inner-hero h1{font-size:clamp(75px,12vw,166px);margin:25px 0}
.inner-hero p{max-width:780px;color:rgba(245,240,232,.75)}
.inner-hero .lede{max-width:790px}
.inner-content{background:var(--salt);color:var(--tide);padding:92px 0}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:start}
.inner-content h2{font-size:clamp(52px,6vw,84px);margin:0 0 21px}
.inner-content h3{font-size:37px;margin:26px 0 10px}
.inner-content p{color:#48595b}
.inner-box{padding:40px;background:var(--drift);border-top:3px solid var(--atlantic)}
.inline-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:3px;font-weight:700;color:var(--atlantic)}
.detail-row{padding:30px 0;border-bottom:1px solid rgba(28,43,45,.18)}
.detail-row:first-child{padding-top:0}
.eyebrow-line{font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:var(--atlantic)}
.beach-hero{background:var(--salt);color:var(--tide)}
.beach-grid{display:grid;grid-template-columns:1fr .76fr;gap:45px;align-items:center;padding:80px 0}
.beach-grid h1{font-size:clamp(82px,10vw,145px);margin:23px 0}
.beach-mock{background:radial-gradient(circle,#ccebe0,var(--drift) 74%);min-height:520px;display:flex;align-items:center;justify-content:center;padding:38px}
.beach-mock img{max-height:540px;width:auto;filter:drop-shadow(10px 18px 18px rgba(0,0,0,.18))}
.features{background:var(--tide);color:var(--salt)}
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}
.feature-item{padding:30px;border:1px solid rgba(245,240,232,.18)}
.feature-item h3{font-size:35px;margin:15px 0 12px}
.feature-item p{color:rgba(245,240,232,.72);font-size:14px;margin:0}
.mini-meta{font-size:11px;color:var(--glass);letter-spacing:.2em;font-weight:700}
.docs{background:var(--salt);color:var(--tide);min-height:62vh}
.docs-header{padding:72px 0 60px;border-bottom:1px solid rgba(28,43,45,.1)}
.docs-header h1{font-size:clamp(76px,10vw,133px);margin:25px 0 18px}
.docs-header p{max-width:820px;color:#45585a}
.docs-grid{display:grid;grid-template-columns:minmax(0,790px) minmax(245px,1fr);gap:8vw;padding:65px 0 100px;align-items:start}
.prose h2{font:700 41px/1.1 var(--display);margin:42px 0 13px;text-transform:uppercase}
.prose h2:first-child{margin-top:0}
.prose p{margin:0 0 19px;color:#405255;font-size:15px;line-height:1.85}
.prose a{color:var(--atlantic);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.prose a:hover{color:var(--tide)}
.prose strong{color:var(--tide)}
.docs-side{padding:29px;border:1px solid rgba(28,43,45,.15);background:#ecebe1;position:sticky;top:20px}
.docs-side strong{font-size:15px}
.docs-side p{font-size:13px;color:#4b5f61}
.docs-side a{color:var(--atlantic);font-weight:700;overflow-wrap:anywhere}
.notice{border-left:3px solid var(--atlantic);padding:13px 18px;background:rgba(46,93,122,.09);font-size:13px!important}
.support-panel{background:var(--drift);padding:42px;border:1px solid rgba(28,43,45,.12)}
.support-panel .email{font-size:clamp(21px,3vw,32px);font-weight:700;color:var(--tide);overflow-wrap:anywhere;line-height:1.4}
.small{font-size:13px;color:#5f7474}
.not-found{min-height:65vh;display:flex;align-items:center;background:var(--tide)}
.not-found h1{font-size:clamp(100px,17vw,220px);margin:10px 0}
.not-found p{max-width:540px}
@media (max-width:980px){.wrap{width:min(calc(100% - 52px),var(--max))}.nav-items{gap:18px}.hero h1{font-size:clamp(68px,10vw,118px)}.hero-art{min-height:470px}.story-grid{gap:5vw}.story-panel{min-height:415px}.work .project-copy{padding:43px 35px}.project-visual img{width:min(70%,262px)}.pillar{min-height:365px;padding:24px}.pillar h3{font-size:41px}.heritage-inner{grid-template-columns:.6fr 1.4fr}}
@media (max-width:730px){:root{--header:70px}.wrap{width:min(calc(100% - 36px),var(--max))}.brand-link{font-size:21px}.brand-link img{width:29px;height:35px}.nav-toggle{display:block}.nav-items{display:none;position:absolute;left:0;right:0;top:calc(var(--header) - 1px);padding:22px 20px 26px;background:var(--tide);border-bottom:1px solid rgba(245,240,232,.25);flex-direction:column;align-items:stretch;gap:0}.nav-items.is-open{display:flex}.nav-items a{padding:12px 8px}.nav-contact{margin-top:12px}.hero-grid{grid-template-columns:1fr;gap:0;min-height:auto;padding:55px 0 58px}.hero-copy{padding:0;order:1}.hero h1{font-size:clamp(75px,19vw,130px);line-height:.86;margin:26px 0}.hero .lede{font-size:16px}.hero-art{order:0;min-height:350px;padding:0 36px 20px}.hero-crest{width:min(100%,335px)}.art-coordinates{display:none}.hero-scroll-note{display:none}.actions{margin-top:25px}.button{min-height:48px;font-size:11px}.strip-inner{gap:10px}.strip-inner span{font-size:18px}.section{padding:73px 0}.section h2{font-size:clamp(62px,15vw,91px)}.story-grid,.project,.heritage-inner,.two-col,.beach-grid,.docs-grid{grid-template-columns:1fr}.story-panel{min-height:355px;margin-top:28px}.story-panel-canvas{inset:32px 31px 70px}.story-panel-content{margin:0 30px 35px auto}.story-panel-title{font-size:130px}.work-head,.landscape-header{display:block;margin-bottom:28px}.work-head p,.landscape .intro{max-width:100%}.project-copy{padding:40px 26px!important}.project-copy h3{font-size:88px}.project-visual{min-height:415px}.project-visual img{max-height:380px;width:auto}.pillars{grid-template-columns:1fr}.pillar{min-height:265px}.pillar::before{top:-120px;left:15%}.pillar-art{font-size:125px;top:30px}.heritage h2{font-size:94px}.heritage-inner{gap:30px}.footer-upper{align-items:start;flex-direction:column;padding:60px 0 43px}.footer-upper h2{font-size:90px}.footer-bottom{align-items:start;flex-direction:column}.inner-hero{padding:75px 0}.inner-hero h1{font-size:clamp(77px,18vw,117px)}.inner-content{padding:65px 0}.beach-grid{gap:20px;padding:65px 0}.beach-mock{min-height:420px}.beach-mock img{max-height:440px}.feature-grid{grid-template-columns:1fr}.docs-header{padding:55px 0 40px}.docs-header h1{font-size:clamp(70px,16vw,100px)}.docs-grid{gap:38px;padding:45px 0 80px}.docs-side{position:static}.support-panel{padding:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* V3 | targeted Beach Day identity, approved V2 layout preserved */
.project-brand{display:flex;align-items:center;gap:20px;margin:20px 0 13px;min-width:0}
.project-brand .beach-symbol{width:clamp(95px,10vw,134px);flex-shrink:0;height:auto;object-fit:contain;filter:drop-shadow(0 2px 12px rgba(3,26,35,.18))}
.project-copy .project-brand h3{font-size:clamp(64px,7.25vw,108px);margin:0;min-width:0}
.project-visual .project-phone{width:min(66%,292px);height:auto;max-height:500px;object-fit:contain;position:relative;z-index:2;filter:drop-shadow(6px 17px 20px rgba(18,45,48,.18))}
.project-visual .project-icon{position:absolute;width:clamp(78px,9.8vw,116px);height:auto;bottom:13%;left:11%;z-index:3;border-radius:21.5%;box-shadow:0 12px 27px rgba(20,54,62,.26);border:1px solid rgba(255,255,255,.5)}
.beach-title-lockup{display:flex;align-items:center;gap:20px;margin:23px 0 26px;min-width:0}
.beach-title-lockup .beach-page-mark{width:clamp(94px,11.2vw,150px);height:auto;flex-shrink:0;filter:drop-shadow(0 2px 8px rgba(46,93,122,.07))}
.beach-grid .beach-title-lockup h1{font-size:clamp(72px,8vw,123px);margin:0}
.beach-mock{position:relative;overflow:hidden}
.beach-mock .beach-phone{max-height:540px;width:auto;max-width:75%;filter:drop-shadow(10px 18px 18px rgba(0,0,0,.18))}
.beach-mock .beach-app-icon{position:absolute;width:clamp(83px,9vw,114px);height:auto;bottom:12%;left:7%;z-index:3;border-radius:21.5%;border:1px solid rgba(255,255,255,.6);box-shadow:0 12px 28px rgba(23,64,70,.22)}
.docs-brand-lockup{display:flex;align-items:center;gap:18px;margin-bottom:22px;min-height:68px}
.docs-brand-lockup img{width:80px;height:70px;object-fit:contain}
.docs-header .docs-brand-lockup + h1{margin-top:0}
.crest-story-box{position:relative;overflow:hidden}
.crest-story-box .about-crest-mini{width:75px;height:90px;object-fit:contain;float:right;margin:-6px 0 12px 20px;filter:drop-shadow(0 5px 8px rgba(28,43,45,.1))}
/* Responsive refinements for brand marks and original compact navigation */
@media (max-width:980px) and (min-width:731px){
  .project-brand{gap:10px}
  .project-brand .beach-symbol{width:84px}
  .project-copy .project-brand h3{font-size:clamp(58px,6.4vw,88px)}
  .project-visual .project-icon{left:6%;width:80px}
  .beach-title-lockup{gap:10px}
  .beach-title-lockup .beach-page-mark{width:94px}
  .beach-grid .beach-title-lockup h1{font-size:clamp(66px,8vw,90px)}
}
@media (max-width:730px){
  .project-brand{gap:14px;margin:18px 0 10px}
  .project-brand .beach-symbol{width:clamp(76px,23vw,106px)}
  .project-copy .project-brand h3{font-size:clamp(72px,19vw,94px)}
  .project-visual .project-phone{max-height:380px;width:auto;max-width:65%}
  .project-visual .project-icon{width:87px;bottom:12%;left:10%}
  .beach-title-lockup{gap:11px;margin:23px 0 20px}
  .beach-title-lockup .beach-page-mark{width:clamp(77px,20vw,112px)}
  .beach-grid .beach-title-lockup h1{font-size:clamp(73px,18vw,110px)}
  .beach-mock .beach-phone{max-height:400px;max-width:70%}
  .beach-mock .beach-app-icon{width:82px;bottom:12%;left:7%}
  .docs-brand-lockup{gap:12px;margin-bottom:18px}
  .docs-brand-lockup img{width:63px;height:58px}
}
@media (max-width:365px){
  .project-brand .beach-symbol{width:69px}
  .project-copy .project-brand h3{font-size:67px}
  .beach-title-lockup .beach-page-mark{width:67px}
  .beach-grid .beach-title-lockup h1{font-size:70px}
}

@media (max-width:365px){.project-brand{gap:8px}.project-brand .beach-symbol{width:61px}.project-copy .project-brand h3{font-size:61px}}


/* V3.2 | Beach Day product story — extends V3 without altering the parent website */
.beach-hero-copy{min-width:0}
.beach-signature{font:italic clamp(25px,2.3vw,31px)/1.4 var(--serif);color:var(--atlantic);margin:0 0 13px}
.beach-hero-lead{font:600 clamp(21px,2.2vw,30px)/1.4 var(--body);color:var(--tide);max-width:620px;margin:0 0 12px}
.beach-hero-lead strong{color:var(--atlantic)}
.beach-status{display:inline-flex;align-items:center;gap:10px;font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--atlantic);margin-top:12px}
.beach-status-dot{width:7px;height:7px;border-radius:50%;background:var(--glass);box-shadow:0 0 0 4px rgba(93,202,165,.17)}
.beach-hero-actions{margin-top:30px}
.beach-introduction{background:var(--drift);color:var(--tide);padding:52px 0;border-bottom:1px solid rgba(28,43,45,.1)}
.beach-intro-grid{display:grid;grid-template-columns:.47fr 1fr;align-items:start;gap:8vw}
.beach-intro-grid p{font-size:clamp(18px,2.1vw,26px);line-height:1.6;max-width:830px;margin:0;color:#38484a}
.beach-intro-grid strong{font-weight:700;color:var(--tide)}
.beach-pillars-section{background:var(--tide);color:var(--salt)}
.beach-section-intro{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:40px}
.beach-section-intro h2{margin-bottom:0}
.beach-section-intro>p{max-width:235px;font-size:17px;line-height:1.5;margin:0 0 7px;color:rgba(245,240,232,.75)}
.beach-four-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.beach-pillar{min-height:410px;border:1px solid rgba(245,240,232,.2);padding:25px 22px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;background:linear-gradient(150deg,#264144,#1c2b2d 70%)}
.beach-pillar-know{background:linear-gradient(145deg,#315d70,#243d46 78%)}
.beach-pillar-explore{background:linear-gradient(145deg,#334f50,#213336 76%)}
.beach-pillar-remember{background:linear-gradient(145deg,#504c42,#2e3432 82%)}
.beach-pillar-num{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--glass)}
.beach-pillar-art{font:500 125px/.8 var(--display);color:rgba(93,202,165,.14);position:absolute;right:16px;top:58px;pointer-events:none}
.beach-pillar h3{font:700 clamp(29px,3vw,38px)/.99 var(--display);margin:0 0 19px;max-width:220px}
.beach-pillar p{font-size:13px;line-height:1.7;color:rgba(245,240,232,.77);margin:0}
.beach-decide{background:var(--drift);color:var(--tide)}
.beach-decide-grid{display:grid;grid-template-columns:1fr .86fr;gap:7vw;align-items:center}
.beach-decide h2{font-size:clamp(53px,6vw,88px)}
.beach-decide h2 em{font-style:normal;color:var(--atlantic)}
.beach-decide-copy>p:not(.beach-feature-lede){color:#405255;max-width:575px}
.beach-feature-lede{font:italic clamp(22px,2.25vw,30px)/1.4 var(--serif);color:var(--atlantic)}
.beach-decide-panel{height:455px;border:1px solid rgba(28,43,45,.22);position:relative;overflow:hidden;padding:29px;display:flex;flex-direction:column;justify-content:space-between;background:radial-gradient(circle at 50% 40%,rgba(93,202,165,.16),transparent 50%),linear-gradient(150deg,#26484b,#1c2b2d 85%);color:var(--salt)}
.beach-decide-panel::before,.beach-decide-panel::after{content:'';position:absolute;border:1px solid rgba(93,202,165,.2);width:340px;height:340px;border-radius:50%;left:50%;top:40%;transform:translate(-50%,-50%)}
.beach-decide-panel::after{width:255px;height:255px;border-color:rgba(93,202,165,.1)}
.beach-panel-top,.beach-panel-bottom{display:flex;justify-content:space-between;gap:15px;font-size:10px;font-weight:700;letter-spacing:.16em;color:var(--glass);position:relative;z-index:1}
.beach-panel-bottom{border-top:1px solid rgba(245,240,232,.2);padding-top:20px}
.beach-panel-bottom span:last-child{color:var(--salt);font-size:10px;letter-spacing:.04em;text-align:right}
.beach-panel-center{text-align:center;position:relative;z-index:1}
.beach-panel-number{display:block;font:700 12px/1 var(--body);letter-spacing:.2em;color:var(--glass);margin:0 0 12px}
.beach-panel-center strong{display:block;font:700 clamp(60px,6vw,86px)/.81 var(--display);letter-spacing:.02em}
.beach-panel-center p{font:italic 18px/1.35 var(--serif);color:var(--drift);margin:18px 0 0}
.beach-conditions{background:var(--salt);color:var(--tide)}
.beach-conditions .beach-section-intro>p{color:#506364}
.beach-condition-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.beach-condition-grid article{border-top:2px solid var(--atlantic);padding:25px 8px 5px 0}
.beach-condition-grid article>span{color:var(--atlantic);font-size:11px;font-weight:700;letter-spacing:.17em}
.beach-condition-grid h3{font-size:clamp(31px,3.2vw,47px);margin:18px 0 12px}
.beach-condition-grid p{color:#506364;font-size:15px;line-height:1.8;max-width:330px}
.beach-explore-section{background:radial-gradient(circle at 88% 18%,rgba(93,202,165,.16),transparent 41%),var(--atlantic);color:var(--salt)}
.beach-editorial-grid{display:grid;grid-template-columns:1fr .8fr;gap:9vw;align-items:center}
.beach-editorial-grid h2{font-size:clamp(56px,6.3vw,97px);margin-bottom:0}
.beach-editorial-copy>p:not(.beach-feature-lede):not(.beach-remember-handwritten){font-size:16px;color:rgba(245,240,232,.77)}
.beach-explore-section .beach-feature-lede{color:var(--salt)}
.beach-editorial-keywords{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}
.beach-editorial-keywords span{border:1px solid rgba(245,240,232,.4);padding:9px 12px;font-size:10px;letter-spacing:.12em;font-weight:700}
.beach-remember-section{background:var(--drift);color:var(--tide)}
.beach-remember-section .beach-editorial-copy>p:not(.beach-feature-lede):not(.beach-remember-handwritten){color:#405255}
.beach-remember-handwritten{font:italic clamp(24px,2.7vw,34px)/1.25 var(--serif);color:var(--atlantic);margin-top:35px}
.beach-closing{background:radial-gradient(circle at 47% 40%,rgba(46,93,122,.34),transparent 54%),var(--tide);color:var(--salt);text-align:center;padding:110px 0 72px}
.beach-closing-inner{display:flex;flex-direction:column;align-items:center}
.beach-closing img{width:110px;height:auto;margin:0 0 26px;filter:drop-shadow(0 4px 12px rgba(0,0,0,.16))}
.beach-closing h2{font-size:clamp(64px,8vw,116px);margin:28px 0}
.beach-closing-signature{font:italic clamp(25px,3vw,37px)/1.3 var(--serif);color:var(--drift);margin:0 0 22px}
.beach-closing-inner>p:not(.beach-closing-signature):not(.beach-coming-soon):not(.beach-safety-disclaimer){max-width:620px;color:rgba(245,240,232,.77);margin:0}
.beach-coming-soon{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--glass);font-weight:700;margin:28px 0 0}
.beach-closing-actions{justify-content:center;margin-top:24px}
.beach-safety-disclaimer{font-size:12px;color:rgba(245,240,232,.56);max-width:770px;line-height:1.7;margin:75px 0 0}
@media(max-width:1080px){.beach-four-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}.beach-pillar{min-height:340px}.beach-editorial-grid{gap:5vw}}
@media(max-width:730px){.beach-intro-grid,.beach-decide-grid,.beach-editorial-grid{grid-template-columns:1fr;gap:27px}.beach-introduction{padding:42px 0}.beach-hero-lead{font-size:23px}.beach-pillars-section .beach-section-intro,.beach-conditions .beach-section-intro{display:block}.beach-section-intro>p{max-width:100%;margin:20px 0 0}.beach-four-pillars{grid-template-columns:1fr}.beach-pillar{min-height:275px}.beach-pillar-art{top:43px}.beach-decide-panel{height:355px}.beach-condition-grid{grid-template-columns:1fr;gap:20px}.beach-condition-grid article{padding:22px 0 5px}.beach-editorial-grid h2{font-size:clamp(53px,12vw,75px)}.beach-closing{padding:75px 0 56px}.beach-closing h2{font-size:clamp(53px,12vw,86px)}.beach-safety-disclaimer{margin-top:60px}.beach-intro-grid p{font-size:18px}}

/* Beach Day surf intelligence: V3.3 targeted addition */
.beach-surf-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(26px,6vw,100px);align-items:start;margin-top:68px;padding:44px clamp(22px,3vw,48px);background:linear-gradient(120deg,rgba(46,93,122,.085),rgba(93,202,165,.055));border-top:1px solid rgba(46,93,122,.23);border-bottom:1px solid rgba(46,93,122,.16)}
.beach-surf-intro h3{font:700 clamp(50px,5.3vw,78px)/.93 var(--display);letter-spacing:.005em;margin:26px 0 20px;color:var(--tide)}
.beach-surf-intro p{max-width:440px;font-size:16px;line-height:1.8;color:#415659;margin:0}
.beach-surf-intro p strong{color:var(--tide)}
.beach-surf-details{display:grid;gap:18px}
.beach-surf-detail{border-bottom:1px solid rgba(46,93,122,.2);padding-bottom:16px}
.beach-surf-detail>span{color:var(--atlantic);font-size:11px;font-weight:700;letter-spacing:.17em}
.beach-surf-detail h4{font:700 clamp(25px,2.3vw,31px)/1.06 var(--display);letter-spacing:.012em;margin:11px 0 8px;color:var(--tide)}
.beach-surf-detail p{font-size:14px;line-height:1.7;color:#506364;margin:0}
.beach-surf-note{color:#506364;font-size:12px;line-height:1.6;margin:3px 0 0}
.beach-platform-future{font-weight:500;letter-spacing:normal}
@media(max-width:730px){.beach-surf-feature{grid-template-columns:1fr;gap:31px;margin-top:46px;padding:30px 20px}.beach-surf-intro h3{font-size:58px;margin:18px 0}.beach-surf-intro p{font-size:15px}}

/* V3.4: small copy hierarchy accents, no layout redesign */
.beach-any-coast{font:700 clamp(14px,1.6vw,19px)/1.35 var(--body);color:var(--atlantic);letter-spacing:.16em;text-transform:uppercase;margin:0 0 12px;}
.footer-tagline{font:italic 17px/1.4 var(--serif);color:var(--drift);margin:8px 0 0;max-width:400px;}
@media(max-width:730px){.beach-any-coast{font-size:14px;letter-spacing:.12em}.footer-tagline{font-size:15px}}

/* V3.6.1: Keep decorative symbols as consistent vector line art on iOS Safari.
   iOS otherwise substitutes certain Unicode characters with colorful emoji. */
.beach-pillar-art {
  width: 125px;
  height: 125px;
  font-size: 0;
  line-height: 0;
}
.beach-pillar-art svg,
.pillar-art svg {
  display: block;
  width: 100%;
  height: 100%;
  fill: none;
  stroke: currentColor;
  stroke-width: 4;
  stroke-linecap: square;
  stroke-linejoin: miter;
}
.pillar-art {
  width: clamp(85px, 10vw, 160px);
  height: clamp(85px, 10vw, 160px);
  font-size: 0;
  line-height: 0;
}
@media (max-width: 730px) {
  .beach-pillar-art {
    width: 105px;
    height: 105px;
    right: 18px;
    top: 40px;
  }
}
