@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#103c42;--deep:#092f36;--aqua:#069fb3;--sea:#d9f5f5;--paper:#fbfcfa;--line:#b9d8d8;--gold:#d8bd80;--font:'DM Sans','Avenir Next',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.58 var(--font)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:'Manrope',var(--font);line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(3.2rem,6.8vw,7rem)}h2{font-size:clamp(2.15rem,4.2vw,4.8rem)}h3{font-size:clamp(1.25rem,2vw,2rem)}p{max-width:72ch}.eyebrow,.kicker,.meta,.button,.nav-link,.door-label,.tiny{font-family:'Manrope',var(--font);font-weight:800;text-transform:uppercase;letter-spacing:.16em}.eyebrow,.kicker,.tiny{font-size:.76rem}.container{width:min(1300px,calc(100% - 8vw));margin-inline:auto}.skip{position:absolute;top:-100px;left:15px;z-index:99;background:white;padding:10px}.skip:focus{top:10px}.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;border:1px solid currentColor;padding:15px 23px;font-size:.76rem;transition:background .25s,color .25s,transform .25s}.button:hover{transform:translateY(-2px);background:var(--aqua);border-color:var(--aqua);color:#fff}.button.solid{background:var(--aqua);border-color:var(--aqua);color:white}.button.solid:hover{background:var(--deep);border-color:var(--deep)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #efb64f;outline-offset:4px}
/* The home route is deliberately a single-screen entrance. */
.home{height:100svh;min-height:620px;overflow:hidden;background:#dceef1}.entrance{height:100%;display:grid;grid-template-rows:minmax(210px,42%) minmax(0,1fr) auto}.entrance-brand{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#bce6ec url('assets/coast.png') center 58%/cover no-repeat}.entrance-brand:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.45) 76%,rgba(255,255,255,.73));pointer-events:none}.brand-center{position:relative;width:min(780px,72vw);text-align:center;}.brand-center img{width:100%;mix-blend-mode:multiply;filter:contrast(1.18)}.entrance-kicker{position:absolute;top:22px;left:27px;color:#10434c;z-index:2;font-size:.69rem;font-weight:800;letter-spacing:.19em;text-transform:uppercase}.doors{display:grid;grid-template-columns:1fr 1fr;min-height:0}.door{position:relative;display:flex;overflow:hidden;align-items:end;min-height:0;background:#204d54;color:white}.door img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.door.wedding img{object-position:center 44%}.door.hospitality img{object-position:center 36%}.door:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(4,22,27,.08) 18%,rgba(4,27,34,.20) 47%,rgba(2,22,29,.74))}.door:hover img,.door:focus-visible img{transform:scale(1.045)}.door+.door{border-left:3px solid #fff}.door-body{position:relative;z-index:2;width:100%;padding:clamp(22px,3.1vw,55px)}.door .tiny{color:#bde9e8}.door-label{font-size:clamp(1.7rem,3vw,3.65rem);line-height:1.07;letter-spacing:-.035em;margin:6px 0 10px}.door-row{display:flex;justify-content:space-between;align-items:end;gap:10px}.door-description{font-size:.93rem;line-height:1.35;margin:0;max-width:420px;color:#f3ffff}.door-arrow{border:1px solid rgba(255,255,255,.8);width:43px;height:43px;display:grid;place-items:center;flex:none;font-size:1.35rem;line-height:1}.home-base{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 27px;background:#f6fbf9;font-size:.74rem;font-weight:600}.home-base span:last-child{color:#456c71}.home-base a{text-decoration:underline;text-underline-offset:3px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(250,252,250,.96);backdrop-filter:blur(14px);border-bottom:1px solid #d7e6e5}.header-inner{width:min(1400px,calc(100% - 5vw));height:84px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:22px}.wordmark{display:block;width:207px;height:63px;overflow:hidden;flex:none}.wordmark img{max-width:none;width:230px;height:115px;mix-blend-mode:multiply;filter:contrast(1.18);transform:translate(-12px,-24px)}.desktop-nav{display:flex;align-items:center;gap:clamp(12px,1.65vw,29px)}.nav-link{font-size:.68rem;letter-spacing:.10em;white-space:nowrap;transition:color .2s}.nav-link:hover,.nav-link[aria-current=page]{color:var(--aqua)}.nav-contact{padding:11px 14px;border:1px solid var(--aqua);color:var(--aqua)}.menu-toggle{display:none;background:none;border:0;color:var(--ink);font-size:.82rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.mobile-nav{display:none}.page{overflow:hidden}.page-hero{position:relative;min-height:540px;display:flex;align-items:end;color:#fff;background:var(--deep)}.page-hero .hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.page-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,31,38,.81),rgba(3,31,38,.28) 66%,rgba(3,31,38,.08)),linear-gradient(0deg,rgba(3,31,38,.35),transparent 65%)}.page-hero .hero-content{position:relative;z-index:2;width:min(1300px,calc(100% - 8vw));margin:0 auto;padding:100px 0 65px}.page-hero h1{max-width:920px;margin:.35em 0 .25em}.page-hero p{font-size:clamp(1.05rem,1.5vw,1.28rem);line-height:1.45;max-width:670px}.page-hero .eyebrow{color:#aeeaf0}.page-hero.wedding-hero .hero-photo{object-position:center 44%}.page-hero.hospitality-hero .hero-photo{object-position:center 41%}.section{padding:clamp(72px,8vw,130px) 0}.section.compact{padding:65px 0}.section.tint{background:#e9f6f4}.section.deep{background:var(--deep);color:#effafa}.lead{font-size:clamp(1.1rem,1.55vw,1.4rem);line-height:1.5}.section-heading{max-width:1000px;margin-bottom:48px}.section-heading h2{margin:8px 0 22px}.section-heading p{color:#49696b}.section-heading .eyebrow{color:var(--aqua)}.columns{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(28px,5vw,82px);align-items:center}.columns>img{width:100%;height:560px;object-fit:cover}.columns h2{margin-bottom:24px}.columns p{font-size:1.08rem;color:#456469}.detail-list{list-style:none;padding:0;margin:30px 0;border-top:1px solid var(--line)}.detail-list li{display:flex;gap:15px;align-items:baseline;border-bottom:1px solid var(--line);padding:15px 0}.detail-list li:before{content:'✦';color:var(--aqua);font-size:.8rem}.media-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:16px;min-height:460px}.media-grid img{width:100%;height:100%;object-fit:cover}.media-grid .media-stack{display:grid;grid-template-rows:1fr 1fr;gap:16px;min-height:0}.video-shell{background:#0b252b;padding:14px;box-shadow:0 20px 50px rgba(0,0,0,.13)}.video-shell video{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}.caption{font-size:.82rem;color:#648185;margin-top:12px}.triad{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{border-top:2px solid var(--aqua);padding:26px 10px 0 0}.service-card .meta{color:var(--aqua);font-size:.72rem}.service-card h3{margin:20px 0 14px}.service-card p{color:#4b6b70}.quote{padding:35px 0;border-top:1px solid var(--line)}.quote blockquote{font:400 clamp(1.35rem,2.5vw,2.25rem)/1.4 Georgia,serif;margin:0 0 18px;max-width:800px}.quote cite{font-style:normal;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.13em}.pricing{display:grid;grid-template-columns:1fr 1fr;gap:20px}.price-card{background:#fff;border:1px solid #c9dedf;padding:clamp(25px,3vw,48px)}.price-card .price{font-size:2.2rem;font-family:'Manrope',sans-serif;font-weight:800;letter-spacing:-.05em;margin:20px 0}.price-card small{font-size:.82rem;font-weight:500;letter-spacing:0}.draft-tag{display:inline-block;border:1px solid #87c5c9;padding:5px 9px;color:#17616b;font-size:.68rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.cta-band{background:var(--aqua);color:#fff;padding:62px 0}.cta-band .container{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta-band h2{font-size:clamp(2rem,3.5vw,4rem);margin:0}.cta-band .button:hover{background:#fff;color:var(--ink);border-color:white}
.soundscape-hero{padding:110px 0 90px;color:#f4f8f2;background:linear-gradient(115deg,rgba(3,29,37,.96),rgba(5,41,48,.78)),url('assets/soundscapes-acoustic.jpg') center/cover}.soundscape-hero h1{margin:10px 0}.soundscape-hero p{font-size:1.25rem}.menu-page{background:#102e35;color:#e9f4f0;padding:80px 0 120px}.menu-top{border-top:1px solid var(--gold);border-bottom:1px solid var(--gold);padding:20px 0;display:flex;justify-content:space-between;gap:15px;color:var(--gold);font-size:.75rem;text-transform:uppercase;letter-spacing:.2em}.menu-intro{max-width:780px;margin:55px auto;text-align:center}.menu-intro h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em}.menu-intro p{margin:auto;color:#c5d8d5}.cocktail-list{display:grid;grid-template-columns:1fr 1fr;gap:0 7vw}.cocktail{border-top:1px solid rgba(216,189,128,.45);padding:35px 0 40px}.cocktail:nth-last-child(-n+2){border-bottom:1px solid rgba(216,189,128,.45)}.cocktail .meta{color:var(--gold);font-size:.71rem}.cocktail h3{font:400 clamp(1.85rem,3vw,3.1rem)/1.13 Georgia,serif;letter-spacing:-.025em;margin:10px 0}.cocktail p{color:#c7dbd8;line-height:1.55}.cocktail .ingredients{font-size:.84rem;color:#91cdd1;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.menu-note{margin-top:47px;color:#b9d2d0;font-size:.95rem;text-align:center}.soundscape-photo{height:310px;width:100%;object-fit:cover}.selfie-hero{background:#d5f2ef}.selfie-hero .hero-photo{object-position:center 43%}.selfie-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:6vw;align-items:center}.selfie-layout .image-combo{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:16px}.selfie-layout .image-combo img{width:100%;height:500px;object-fit:cover}.selfie-layout .image-combo img:last-child{height:360px}.about-hero{background:#11444d;color:white;padding:100px 0}.about-hero .columns>img{height:550px}.about-hero .columns p{color:#daf0ee}.about-story{font-size:1.13rem}.about-story p{max-width:760px}.contact-hero{background:linear-gradient(110deg,rgba(5,54,62,.87),rgba(7,85,96,.5)),url('assets/coast.png') center/cover;color:white;padding:90px 0}.contact-hero h1{margin:12px 0}.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:7vw}.contact-intro p{font-size:1.12rem}.contact-form{background:#fff;border:1px solid #bdd9da;padding:clamp(25px,4vw,55px);display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{display:grid;gap:7px;font-size:.79rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.contact-form .full{grid-column:1/-1}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #a9ccce;border-radius:0;background:#f8fbfa;color:var(--ink);padding:12px 14px;min-height:48px;font-size:1rem;font-weight:400;letter-spacing:0;text-transform:none}.contact-form textarea{min-height:130px;resize:vertical}.contact-form .button{justify-self:start}.form-status{display:none;color:#176773;font-weight:700;margin:0}.form-status.show{display:block}.preview-note{font-size:.82rem;color:#637d7e;margin:0}.footer{background:#082e35;color:#d6e8e7;padding:56px 0 25px}.footer-inner{display:flex;justify-content:space-between;gap:35px;align-items:start}.footer-name{font-weight:800;font-size:1.35rem;line-height:1.1;letter-spacing:-.04em;color:#a8e8ea}.footer-links{display:flex;gap:12px 23px;flex-wrap:wrap;justify-content:end;max-width:760px;font-size:.85rem}.footer-links a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid rgba(255,255,255,.19);margin-top:50px;padding-top:16px;font-size:.73rem;color:#a8c6c7}
@media(max-width:1050px){.desktop-nav{gap:9px}.nav-link{font-size:.58rem}.wordmark{width:170px}.header-inner{height:74px}}
@media(max-width:800px){.desktop-nav{display:none}.menu-toggle{display:block}.header-inner{height:70px}.mobile-nav{display:none;position:absolute;top:70px;left:0;right:0;background:#f7fcfa;padding:12px 5vw 24px;box-shadow:0 15px 25px rgba(0,0,0,.12)}.mobile-nav.open{display:grid}.mobile-nav a{padding:10px 0;border-bottom:1px solid var(--line);font-size:.9rem;font-weight:700}.columns,.selfie-layout,.contact-layout{grid-template-columns:1fr}.columns>img{height:430px}.triad{grid-template-columns:1fr 1fr}.contact-layout{gap:20px}.media-grid{min-height:380px}}
@media(max-width:640px){.home{min-height:0}.entrance{grid-template-rows:minmax(145px,32%) minmax(0,1fr) auto}.entrance-kicker{top:12px;left:14px;font-size:.52rem}.brand-center{width:min(620px,100vw)}.doors{grid-template-columns:1fr;grid-template-rows:1fr 1fr}.door+.door{border-left:0;border-top:2px solid #fff}.door.wedding img{object-position:center 53%}.door.hospitality img{object-position:center 41%}.door-body{padding:15px 19px}.door-label{font-size:clamp(1.38rem,6.3vw,2.4rem);margin:3px 0 4px}.door .tiny{font-size:.53rem}.door-description{font-size:.72rem;max-width:275px}.door-arrow{width:32px;height:32px;font-size:1rem}.home-base{font-size:.59rem;padding:7px 12px;line-height:1.2}.home-base span:last-child{display:none}.page-hero{min-height:520px}.page-hero .hero-content{padding:100px 0 45px}.page-hero h1{font-size:clamp(2.65rem,13vw,4.4rem)}.section{padding:70px 0}.section.compact{padding:48px 0}.container{width:calc(100% - 38px)}.columns>img{height:310px}.media-grid{grid-template-columns:1fr;min-height:0}.media-grid>img{height:300px}.media-grid .media-stack{grid-template-columns:1fr 1fr;grid-template-rows:1fr;height:180px}.triad,.pricing,.cocktail-list{grid-template-columns:1fr}.price-card{padding:30px}.cta-band .container,.footer-inner{display:block}.cta-band .button{margin-top:25px}.footer-links{justify-content:start;margin-top:25px}.cocktail:nth-last-child(2){border-bottom:0}.cocktail:last-child{border-bottom:1px solid rgba(216,189,128,.45)}.menu-top{font-size:.57rem;letter-spacing:.13em}.selfie-layout .image-combo img{height:300px}.selfie-layout .image-combo img:last-child{height:225px}.contact-form{grid-template-columns:1fr}.contact-form .full{grid-column:auto}}
@media(max-height:730px) and (max-width:640px){.entrance{grid-template-rows:minmax(125px,28%) minmax(0,1fr) auto}.brand-center{width:min(530px,87vw)}.door-body{padding:10px 17px}.door-description{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Interior-page refinements: show the complete stacked mark and wedding package details. */
.header-inner{height:104px}.wordmark{width:200px;height:100px;overflow:visible;display:flex;align-items:center}.wordmark img{width:200px;height:100px;max-width:100%;object-fit:contain;transform:none;filter:none}
.package-list{list-style:none;padding:0;margin:22px 0 0;border-top:1px solid var(--line)}.package-list li{padding:10px 0;border-bottom:1px solid var(--line);line-height:1.4}.package-list li:before{content:'•';color:var(--aqua);margin-right:10px}.package-note{margin:26px 0 0;color:#456469}
@media(max-width:1050px){.header-inner{height:96px}.wordmark{width:180px;height:90px}.wordmark img{width:180px;height:90px}}
@media(max-width:800px){.header-inner{height:84px}.wordmark{width:160px;height:80px}.wordmark img{width:160px;height:80px}.mobile-nav{top:84px}}

.selfie-hero{background:#174f56}.selfie-hero .hero-photo{left:auto;right:0;width:50%;object-position:center 12%}
@media(max-width:640px){.selfie-hero .hero-photo{width:100%;opacity:.58;object-position:center 19%}}

/* The supplied brand presentation places the exact logo in its top ocean panel.
   Scale the full image to the panel's height so only that top panel is visible. */
.entrance{grid-template-rows:clamp(190px,32svh,320px) minmax(0,1fr)}
.entrance-brand{background:#082e39 url('assets/brand-ocean-no-tagline.png') center top / auto 281% no-repeat}
.entrance-brand:before{display:none}
.entrance-brand:after{content:'EXCEPTIONAL MUSIC ENTERTAINMENT';position:absolute;top:81%;left:0;right:0;text-align:center;color:#fff;font-family:'Manrope',Arial,sans-serif;font-weight:600;font-size:clamp(.64rem,1.1vw,.95rem);letter-spacing:.33em;line-height:1.4;text-shadow:0 1px 8px #08313a}
.wordmark img{mix-blend-mode:multiply}
@media(max-width:640px){.entrance-brand:after{font-size:.56rem;letter-spacing:.2em;top:81.5%}}

/* Soundscapes reads as one printed menu rather than a grid of mood cards. */
.soundscape-hero{padding:88px 0 80px;background:linear-gradient(105deg,rgba(4,33,40,.96),rgba(4,41,48,.7)),url('assets/soundscapes-acoustic.jpg') center 45%/cover}.soundscape-hero h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em}.menu-page{padding:70px 0 110px;background:radial-gradient(circle at 50% 0%,#184b51,#102e35 65%)}.menu-page>.container{max-width:1040px;border:1px solid rgba(216,189,128,.65);padding:clamp(25px,5.2vw,72px);box-shadow:0 35px 70px rgba(0,0,0,.18);background:#10353b}.menu-top{padding-top:0;border-top:0}.menu-intro{margin:52px auto 60px}.menu-intro p{max-width:580px}.cocktail-list{gap:0 5vw}.cocktail{padding:36px 0 39px}.cocktail .meta{font-size:.8rem;letter-spacing:.15em}.cocktail h3{font-size:clamp(2.1rem,3vw,3rem);margin:8px 0 14px}.cocktail p{max-width:390px}.cocktail .ingredients{font-size:.75rem}.menu-bottom{border-top:1px solid var(--gold);display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:32px;margin-top:28px}.menu-bottom p{margin:0;max-width:530px;color:#c5d8d5}.menu-bottom .button{flex:none}
@media(max-width:640px){.menu-page{padding:30px 12px 70px}.menu-page>.container{width:100%;padding:27px 22px}.menu-top{font-size:.65rem}.menu-top span:last-child{display:none}.menu-intro{margin:36px auto}.menu-bottom{display:block}.menu-bottom .button{margin-top:25px}}
@media(max-width:640px){
  body.home{height:auto;min-height:100svh;overflow:visible}
  .entrance{height:auto;min-height:100svh;grid-template-rows:clamp(160px,22svh,185px) minmax(720px,1fr)}
  .doors{min-height:720px;grid-template-rows:repeat(2,minmax(360px,1fr))}
}

/* Keep the Hospitality & Events headline within the hero on every screen. */
.page-hero.hospitality-hero h1{font-size:clamp(1.75rem,7.5vw,4.8rem)}

/* Give the Soundscapes introduction a natural reading measure and paragraph rhythm. */
.menu-intro p{max-width:700px;font-size:clamp(1rem,1.3vw,1.125rem);line-height:1.65}
.menu-intro p+p{margin-top:1rem}

/* Mobile spacing and readability pass; desktop layout stays unchanged. */
@media(max-width:640px){
  body.home{height:auto;min-height:100svh;overflow:visible}
  .entrance{height:100svh;min-height:600px;grid-template-rows:clamp(160px,22svh,185px) minmax(440px,1fr)}
  .doors{min-height:0;grid-template-rows:repeat(2,minmax(220px,1fr))}
  .door-body{padding:20px 19px}
  .door-description{display:block;font-size:.875rem;line-height:1.4;max-width:32ch}
  .door-label{font-size:clamp(1.65rem,7vw,2rem);margin-bottom:10px}
  .section{padding:48px 0}
  .section.compact{padding:36px 0}
  .page-hero .hero-content{padding:64px 0 40px}
  .page-hero h1{font-size:clamp(2.2rem,10.5vw,3.4rem)}
  .soundscape-hero h1,.page>.section:first-child h1{font-size:clamp(2.25rem,9vw,3rem)}
  .soundscape-hero{padding:64px 0 56px}
  .contact-hero{padding:56px 0}
  .contact-hero h1{font-size:clamp(2.25rem,9vw,3rem)}
  .columns,.selfie-layout{gap:28px}
  .service-card{padding-top:22px}
  .price-card{padding:24px}
  .quote{padding:28px 0}
  .quote cite{display:block;line-height:1.6;letter-spacing:.08em}
  .button{max-width:100%;text-align:center;line-height:1.4;white-space:normal}
  .cta-band{padding:44px 0}
  .cta-band p{margin-top:16px}
  .contact-form{padding:22px;min-width:0}
  .contact-form label,.contact-form input,.contact-form select{min-width:0}
  .footer{padding-top:40px}
  .footer-links{gap:4px 20px;margin-top:20px}
  .footer-links .nav-link{font-size:.875rem;letter-spacing:.06em;min-height:44px;display:inline-flex;align-items:center}
  .footer-bottom{margin-top:28px}
}

/* Hospitality copy and its Soundscapes link share one column. */
.hospitality-description .columns{grid-template-columns:1fr}
.hospitality-description .button{margin-top:12px}

/* Gentle emphasis for the Soundscapes introduction. */
.menu-intro .soundscapes-intro-heading{font-weight:600}

/* Approved Soundscape lettering and fine-line artwork, with readable live copy. */
.soundscapes-gallery{background:#fff;color:var(--ink);padding:64px 0 88px}
.soundscapes-gallery>.container{max-width:1140px;border:0;box-shadow:none;background:transparent;padding:0 28px}
.soundscapes-gallery .menu-intro{max-width:780px;margin:0 auto 48px}
.soundscapes-gallery .menu-intro p{max-width:720px;color:#34545a}
.soundscapes-gallery .menu-intro .soundscapes-intro-heading{color:#102e35;font-size:1.2rem}
.soundscapes-gallery .menu-intro p:last-child{font-size:.8rem;font-weight:600;letter-spacing:.13em;line-height:1.8;margin-top:28px;color:#286e76}
.soundscape-collection{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:64px;row-gap:20px}
.soundscape-entry{min-width:0;padding:24px 0 30px;border-top:1px solid #d6e3e4}
.soundscape-entry h3{position:relative;margin:0 0 16px;display:flex;align-items:center;min-height:140px}
.soundscape-art{display:block;width:100%;height:auto}
.soundscape-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.soundscape-entry p{font-size:1.0625rem;line-height:1.75;color:#34545a;margin:0;max-width:52ch}
@media(max-width:760px){
 .soundscapes-gallery{padding:44px 0 56px}
 .soundscapes-gallery>.container{padding:0 22px}
 .soundscapes-gallery .menu-intro{margin-bottom:30px}
 .soundscape-collection{grid-template-columns:1fr;gap:0}
 .soundscape-entry{padding:24px 0 30px}
 .soundscape-entry h3{min-height:0;margin-bottom:18px}
 .soundscape-entry p{font-size:1rem;line-height:1.7;max-width:none}
}

/* On desktop, give the entrance a definite viewport height through its main wrapper. */
@media(min-width:641px){
 body.home #main{height:100svh;min-height:620px}
 body.home .entrance{height:100%;min-height:0}
}

/* La Vie sits above the Live Set / Remix pair on desktop and in the mobile sequence. */
.soundscape-entry--la-vie{grid-column:1/-1;width:100%;max-width:calc((100% - 64px)/2);justify-self:center}
.soundscape-entry--la-vie .soundscape-art{max-height:175px;object-fit:contain}
@media(max-width:760px){.soundscape-entry--la-vie{max-width:100%}}

/* Compact Soundscapes branding fits naturally into existing text and controls. */
.soundscapes-wordmark{display:inline-block;position:relative;width:6.35em;height:1.4em;vertical-align:-.28em;line-height:1;letter-spacing:normal;text-transform:none;white-space:nowrap}
.soundscapes-wordmark--full{width:10.72em}
.soundscapes-wordmark img{display:block;width:100%;height:100%;object-fit:contain}
.soundscapes-wordmark-text{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.nav-link .soundscapes-wordmark{width:6.5em;height:1.6em;vertical-align:-.38em}
.button .soundscapes-wordmark{margin-left:.15em;width:6.5em;height:1.6em;vertical-align:middle}
.footer .soundscapes-wordmark img,.button:hover .soundscapes-wordmark img{filter:brightness(0) invert(1)}
@media print{.soundscapes-wordmark{width:auto;height:auto;vertical-align:baseline}.soundscapes-wordmark img{display:none}.soundscapes-wordmark-text{position:static;width:auto;height:auto;margin:0;clip:auto;white-space:normal}}
