/* Separate the original painting, transparent wordmark, live type and vector button. */
.coastal-home .approved-hero{background:#061815}
.approved-visual{object-fit:cover;object-position:50% 48%;z-index:-2}
.coastal-home .approved-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(0,14,10,.8) 0%,rgba(0,13,10,.74) 27%,rgba(0,16,12,.38) 47%,transparent 68%),linear-gradient(0deg,rgba(3,17,14,.42),transparent 35%);z-index:0}
.approved-content{z-index:1}
.coastal-home .home-header .desktop-nav{font-size:1vw}
.coastal-home .header-discord{position:absolute;right:3%;top:0;height:100%;display:flex;align-items:center;color:#f7f0dd;font:700 1vw Georgia,'Times New Roman',serif;letter-spacing:.025em;text-transform:uppercase;text-shadow:0 1px 3px #000}
.coastal-home .header-discord:hover{color:#f1d17a}
.coastal-home .header-discord .discord-logo{display:block;width:clamp(25px,1.8vw,48px);height:auto}
.approved-content .hero-brand img{opacity:1}
.approved-content #hero-title:after{display:none}
.approved-content .approved-enter{isolation:isolate;display:flex;align-items:center;justify-content:center;gap:0;background:none;border:0;clip-path:none;box-shadow:none;color:#211300;text-shadow:0 1px 0 #fff6cb;font-family:Georgia,'Times New Roman',serif;font-weight:700;letter-spacing:.015em;transition:filter .15s}
.approved-content .approved-enter:hover{filter:brightness(1.12);background:none}
.approved-enter .button-frame{position:absolute;inset:0;width:100%;height:100%;max-width:none;z-index:-1;overflow:visible}
.approved-content .approved-enter .button-label{color:#211300;font:inherit;text-shadow:0 1px 0 #fff6cb}
.approved-content .approved-enter:focus-visible{outline:3px solid #fff1bc;outline-offset:6px}
@media(min-width:1001px){
 .coastal-home .home-header{height:4.365vw}
 .coastal-home .approved-hero{aspect-ratio:1672/941}
 .approved-content .hero-brand{left:8.7%;top:11.5%;width:38.4%;height:14.6%;overflow:hidden;filter:drop-shadow(0 .18vw .25vw #000)}
 .approved-content .hero-brand img{position:absolute;width:100%;height:auto;top:50%;transform:translateY(-50%)}
 .approved-content #hero-title,.approved-content .approved-invitation,.approved-content .hero-copy{position:absolute!important;width:auto!important;height:auto!important;padding:0!important;margin:0!important;overflow:visible!important;clip:auto!important;clip-path:none!important;white-space:normal!important;border:0!important}
 .approved-content #hero-title{left:9.5%;top:27.6%;max-width:none;font-family:Georgia,'Times New Roman',serif;font-size:4.12vw;font-weight:400;line-height:1.02;letter-spacing:-.035em;color:#fffaf1;text-shadow:0 .12vw .3vw #000}
 .approved-content .approved-invitation{left:9.5%;top:42%;font:italic 2.92vw/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.025em;color:#f9df88;text-shadow:0 .1vw .25vw #000}
 .approved-content .hero-copy{left:9.6%;top:49%;max-width:57%;font:1.27vw/1.75 Georgia,'Times New Roman',serif;color:#fff7e9;text-shadow:0 .1vw .2vw #000}
 .approved-content .hero-copy strong{font-size:1em;text-transform:uppercase;letter-spacing:.035em;color:#f4d47d}
 .approved-content .approved-enter{left:12.35%;top:62.4%;width:23.6%;height:7.8%;padding:0 2.5vw;font-size:1.65vw;white-space:nowrap}
}
/* Reflow on tablets as well as phones so the live type stays readable. */
@media(max-width:1000px){
 .coastal-home .header-discord{display:none}
 .coastal-home .home-header{height:70px;padding:0 22px;display:flex;align-items:center;justify-content:flex-end;background:#041411ee}
 .coastal-home .home-header .desktop-nav{display:none}
 .coastal-home .home-header .menu-toggle{display:flex}
 .coastal-home .mobile-nav{top:70px}
 .coastal-home .approved-hero{aspect-ratio:auto;height:auto;min-height:780px;padding:0 0 60px;background-image:none}
 .approved-visual{display:block;object-position:64% center}
 .mobile-coastal-art,.mobile-coastal-shade{display:none}
 .approved-content{position:relative;inset:auto;padding:100px clamp(25px,5vw,50px) 25px;max-width:760px}
 .approved-content .hero-brand{position:relative;left:auto;top:auto;width:100%;max-width:580px;height:auto;aspect-ratio:4.55;margin:0 0 30px;overflow:hidden;filter:drop-shadow(0 3px 5px #000)}
 .approved-content .hero-brand img{position:absolute;width:100%;height:auto;top:50%;transform:translateY(-50%)}
 .approved-content #hero-title,.approved-content .approved-invitation,.approved-content .hero-copy{position:static!important;width:auto!important;height:auto!important;clip:auto!important;overflow:visible!important;white-space:normal!important;padding:0!important;border:0!important}
 .approved-content #hero-title{margin:0 0 20px!important;max-width:none;font:400 clamp(31px,6.6vw,64px)/1.08 Georgia,'Times New Roman',serif;letter-spacing:-.035em;color:#fff8e9;text-shadow:0 2px 5px #000}
 .approved-content .approved-invitation{margin:0 0 30px!important;font:italic clamp(23px,4.5vw,39px)/1.25 Georgia,'Times New Roman',serif;color:#f1d17a;text-shadow:0 2px 4px #000}
 .approved-content .hero-copy{margin:0 0 34px!important;font:clamp(14px,1.9vw,19px)/1.85 Georgia,'Times New Roman',serif;color:#fff5e4;text-shadow:0 2px 5px #000}
 .approved-content .hero-copy strong{font-size:1em;text-transform:uppercase;letter-spacing:.03em;color:#f1cd76}
 .approved-content .approved-enter{position:relative;left:auto;top:auto;width:min(390px,100%);height:74px;min-height:0;padding:12px 20px;font-size:clamp(18px,3vw,24px)}
}
/* Match CinematicLaunchButton: gold frame crop, 650:84 ratio, cream Georgia text. */
.approved-content .launcher-enter{aspect-ratio:650/84;height:auto;min-height:44px;padding:0;overflow:visible;background:url("assets/coastal-launch-frame.png") center 44.897959%/100% 196.078431% no-repeat;filter:none;container-type:inline-size}
.approved-content .launcher-enter .launcher-label{color:#ffe8ab;font-family:Georgia,'Times New Roman',serif;font-size:4.307692cqw;font-weight:700;letter-spacing:0;text-transform:uppercase;text-shadow:none;line-height:1}
.approved-content .launcher-enter:hover{background:url("assets/coastal-launch-frame.png") center 44.897959%/100% 196.078431% no-repeat;filter:drop-shadow(0 0 7px #f6c262a6)}
.approved-content .launcher-enter:active{opacity:.75}
@media(min-width:1001px){.approved-content .launcher-enter{left:9.5%;width:29%;height:auto}}
@media(max-width:1000px){.approved-content .launcher-enter{width:100%;height:auto;padding:0}}/* Reserve room for the original welcome strip in the first desktop viewport. */
@media(min-width:1001px){
 .coastal-home .approved-hero{height:calc(100svh - 69px);aspect-ratio:auto;container-type:size}
 .approved-content #hero-title{font-size:min(4.12vw,7.32cqh)}
 .approved-content .approved-invitation{font-size:min(2.92vw,5.19cqh)}
 .approved-content .hero-copy{font-size:min(1.27vw,2.26cqh)}
 .approved-content .hero-brand{width:min(38.4%,68.23cqh)}
 .approved-content .launcher-enter{width:min(29%,51.53cqh)}
 .coastal-home .welcome-strip{height:69px;min-height:69px;gap:clamp(16px,2.2vw,42px);font-size:clamp(14px,1vw,17px)}
}@media(min-width:1001px){.coastal-home .approved-visual{z-index:0}.coastal-home .approved-hero:before{z-index:1}.coastal-home .approved-content{z-index:2}}
/* Keep the original strip anchored to the browser edge, including while scrolling. */
.coastal-home .welcome-strip{position:fixed;inset:auto 0 0;width:100%;z-index:30}
.coastal-home{padding-bottom:69px}

.coastal-home .home-header{background:#14211d}

/* Neutral black surfaces and a little more room above the opening content. */
:root{--deep:#000;--ink:#171717}
.coastal-home,.coastal-home .home-header,.coastal-home .welcome-strip,.coastal-home .mobile-nav,.coastal-home .manifesto,.coastal-home .download,.coastal-home footer{background:#000}
.coastal-home .approved-hero{background:#000}
.coastal-home .approved-hero:before{background:linear-gradient(90deg,rgba(0,0,0,.8) 0%,rgba(0,0,0,.74) 27%,rgba(0,0,0,.38) 47%,transparent 68%),linear-gradient(0deg,rgba(0,0,0,.42),transparent 35%)}
@media(min-width:1001px){.coastal-home .approved-content{transform:translateY(clamp(24px,3svh,40px))}}
@media(max-width:1000px){.coastal-home .approved-content{padding-top:132px}}

@media(min-width:1001px){.approved-content .launcher-enter{left:13%}}

