/* Approved standalone first page, integrated into the full site. */
@font-face {
  font-family: PremierePrata;
  src: url("prata.woff2") format("woff2");
  font-weight: 400;
  font-display: swap;
}

#home { position: relative; isolation: isolate; overflow: hidden; width: 100%; height: 100svh; min-height: 0; }
#home .hero-picture { position: absolute; inset: 0; z-index: -2; display: block; overflow: hidden; }
#home .hero-picture .hero-image { position: absolute; inset: 0; width: 111%; height: 111%; max-width: none; object-fit: cover; object-position: 54% 43%; filter: saturate(.92); }
#home .hero-shade { position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg,rgba(16,11,7,.29),transparent 33%,transparent 64%,rgba(16,11,7,.4) 100%); }
#home .age-badge { position: absolute; z-index: 3; left: max(12px,1.4vw); bottom: max(14px,2svh,env(safe-area-inset-bottom,0px)); margin: 0; padding: 0; color: var(--cream); font: 400 clamp(20px,1.8vw,30px)/1 ScapinCormorant,Georgia,serif; letter-spacing: .04em; text-shadow: 0 2px 6px rgba(0,0,0,.8); }
#home::after { content: ""; position: absolute; inset: 0; z-index: 0; pointer-events: none; background: radial-gradient(ellipse 26vw 17svh at 19vw 54svh,rgba(8,5,4,.58) 0%,rgba(8,5,4,.38) 50%,transparent 100%); }

#home .hero-brand-lockup { position: absolute; z-index: 2; top: 6.778576321svh; left: 2.105250888vw; width: min(37.297092014vw,60svh); display: flex; flex-direction: column; align-items: center; gap: 2svh; container-type: inline-size; }
#home .hero-brand-lockup .tagline { width: 88%; margin: 0; text-align: center; text-transform: uppercase; white-space: nowrap; line-height: 1.25; }
#home .hero-brand-lockup .tagline-text { font-size: 6.60115cqw; line-height: 1.25; text-shadow: 0 2px 2px #000,0 4px 6px #000,0 8px 12px rgba(0,0,0,.95); }
#home .cover-logo { position: absolute; z-index: 2; left: auto; top: auto; right: 1.841227214vw; bottom: 3.076388889svh; width: 11.574435764vw; height: 5.555555556svh; opacity: .75; filter: drop-shadow(0 2px 5px rgba(0,0,0,.55)); }
#home .cover-logo img { display: block; width: 100%; height: auto; opacity: 1; }
#home .cover-logo::after { content: none; }

#home .premiere-note { position: absolute; z-index: 2; left: 3.2vw; top: 45svh; width: min(34vw,490px); margin: 0; font-size: clamp(14px,1.55vw,23px); line-height: 1.3; letter-spacing: .035em; text-align: center; text-transform: uppercase; text-wrap: balance; text-shadow: 0 2px 4px #100d0b,0 5px 14px #100d0b; }
#home .premiere-option { position: absolute; z-index: 2; left: 3.2vw; top: 53svh; bottom: auto; transform: none; display: inline-flex; align-items: center; justify-content: center; width: min(34vw,490px); max-width: none; min-height: 48px; margin: 0; padding: 6px 8px; border: 0; background: none; appearance: none; color: var(--cream); font-family: PremierePrata,Georgia,serif !important; font-weight: 400; font-size: clamp(30px,3.2vw,50px); line-height: 1.2; letter-spacing: .035em; white-space: nowrap; cursor: pointer; text-shadow: 0 2px 3px rgba(10,7,5,.95),0 4px 12px rgba(10,7,5,.9),0 8px 24px rgba(10,7,5,.75); }
#home .premiere-option:hover { color: #fff8e7; }
#home .premiere-option:focus-visible { outline: 2px solid var(--cream); outline-offset: 6px; }

@media (min-width: 1800px) and (min-height: 900px) {
  #home .premiere-note { left: 5.12svh; width: 54.45svh; font-size: 2.48svh; }
  #home .premiere-option { left: 5.12svh; width: 54.45svh; min-height: 5.33svh; padding: .67svh .89svh; font-size: 5.12svh; }
}
@media (min-aspect-ratio: 101/100) and (max-aspect-ratio: 8/5) and (max-width: 1799px) and (min-height: 501px) {
  #home .premiere-note { top: calc(12.5svh + 20.3125vw); }
  #home .premiere-option { top: calc(13.9svh + 24.4vw); }
}
@media (max-aspect-ratio: 1/1), (max-height: 500px) {
  #home { --footer-height: clamp(125px,16svh,160px); }
  #home .hero-shade { background: linear-gradient(180deg,rgba(16,11,7,.12),transparent 60%,rgba(16,13,11,.2) 80%,rgba(16,13,11,.42) 100%); }
  #home::after { background: linear-gradient(180deg,transparent 71%,rgba(8,5,4,.2) 79%,rgba(8,5,4,.38) 100%); }
  #home .hero-picture .hero-image { width: 100%; height: 100%; }
  #home .hero-brand-lockup { top: 2svh; width: 37.297092014vw; gap: 1svh; }
  #home .cover-logo { display: none; }
  #home .premiere-footer { position: absolute; z-index: 2; inset: auto 0 0; height: var(--footer-height); display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 8px; padding: 10px 22px max(10px,env(safe-area-inset-bottom,0px)); text-align: center; }
  #home .premiere-note { position: static; width: min(90vw,590px); margin: 0; font-size: clamp(17px,2.1vw,21px); line-height: 1.3; text-shadow: none; }
  #home .premiere-option { position: static; width: auto; min-height: 42px; padding: 0; font-size: clamp(29px,4vw,44px); text-shadow: none; }
}
@media (max-aspect-ratio: 17/20) {
  #home .hero-picture .hero-image { object-position: 50% 0; }
  #home .hero-shade { background: linear-gradient(180deg,rgba(16,11,7,.19),transparent 32%,transparent 73%,rgba(16,13,11,.28) 80%,rgba(16,13,11,.5) 87%); }
  #home::after { background: none; }
  #home .hero-brand-lockup { top: 2svh; left: 50%; transform: translateX(-50%); width: min(90vw,max(37svh,55.5vw)); gap: 0; }
  #home .hero-brand-lockup .tagline { width: 90%; margin-top: 2cqw; }
  #home .hero-brand-lockup .tagline-text { font-size: 5.8cqw; }
  #home .premiere-note { font-size: clamp(16px,4vw,18px); text-shadow: 0 2px 3px rgba(0,0,0,.9),0 4px 12px rgba(0,0,0,.85); }
  #home .premiere-option { font-size: clamp(30px,7.2vw,40px); text-shadow: 0 2px 3px rgba(0,0,0,.9),0 4px 14px rgba(0,0,0,.85); }
}
@media (max-aspect-ratio: 3/5) {
  #home .hero-picture .hero-image { left: -29.499454942%; top: -10.428262473svh; right: auto; bottom: auto; width: 158.997093023%; height: 158.999463519svh; object-position: 50% 50%; }
  #home .hero-brand-lockup { top: min(10.561409884vw,4.872753488svh); width: min(97.561773256vw,45.01369367svh); }
  #home .hero-brand-lockup .tagline { width: 84.048%; margin-top: 2.98cqw; }
  #home .hero-brand-lockup .tagline-text { font-size: 5.482cqw; }
}
@media (max-height: 700px) and (max-aspect-ratio: 17/20) {
  #home { --footer-height: 125px; }
  #home .premiere-note { font-size: 16px; }
  #home .premiere-footer { gap: 8px; }
}

/* Compact landscape: keep the whole message beside the portrait. */
@media (max-height:500px) and (min-aspect-ratio:3/2){
  #home .hero-shade{background:linear-gradient(90deg,rgba(16,11,7,.25),transparent 57%)}
  #home::after{background:radial-gradient(ellipse 38vw 65svh at 18vw 52svh,rgba(8,5,4,.55),transparent 100%)}
  #home .hero-picture .hero-image{object-position:54% 35%}
  #home .hero-brand-lockup{top:2svh;left:2vw;width:min(30vw,105svh);gap:0}
  #home .hero-brand-lockup .tagline{width:96%;margin-top:-.5svh}
  #home .hero-brand-lockup .tagline-text{font-size:6.2cqw}
  #home .premiere-footer{position:absolute;left:2vw;top:63svh;right:auto;bottom:auto;width:min(30vw,105svh);height:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:0;padding:0}
  #home .premiere-note{position:static;width:100%;font-size:clamp(12px,1.25vw,15px);line-height:1.08;text-shadow:0 2px 6px #100d0b}
  #home .premiere-option{position:static;width:100%;min-height:0;margin-top:1svh;padding:0;font-size:clamp(23px,3.5vw,34px);line-height:1.1;text-shadow:0 2px 8px #100d0b}
}
/* Near-square landscape: keep the announcement with the title. */
@media (min-aspect-ratio:1/1) and (max-aspect-ratio:5/4) and (min-height:501px){
  #home .premiere-note{top:34svh}
  #home .premiere-option{top:40svh}
}
/* Short square windows: retain the photo under the footer. */
@media (max-height:500px) and (max-aspect-ratio:3/2){
  #home .hero-shade{background:linear-gradient(180deg,rgba(16,11,7,.12),transparent 62%,rgba(16,13,11,.18) 80%,rgba(16,13,11,.42) 100%)}
  #home::after{background:none}
}

/* Keep text in a single left column on square screens. */
@media (min-aspect-ratio:1/1) and (max-aspect-ratio:5/4) and (min-width:768px) and (min-height:501px){
  #home .hero-brand-lockup{top:6.778576321svh;left:2.105250888vw;width:min(37.297092014vw,60svh);transform:none;gap:2svh}
  #home .premiere-footer{position:static;display:contents;height:auto;padding:0}
  #home .premiere-note{position:absolute;left:3.2vw;top:34svh;width:min(34vw,490px);font-size:clamp(14px,1.55vw,23px);line-height:1.3}
  #home .premiere-option{position:absolute;left:3.2vw;top:calc(34svh + max(70px,5svh));width:min(34vw,490px);min-height:48px;padding:6px 8px;font-size:clamp(30px,3.2vw,50px);line-height:1.2}
}
/* Smaller laptops: let the two text lines determine button position. */
@media (min-aspect-ratio:101/100) and (max-aspect-ratio:8/5) and (min-width:601px) and (max-width:900px) and (min-height:501px){
  #home .premiere-footer{position:absolute;left:3.2vw;top:calc(12.5svh + 20.3125vw);right:auto;bottom:auto;width:min(34vw,490px);height:auto;display:flex;flex-direction:column;align-items:center;gap:8px;padding:0}
  #home .premiere-note{position:static;width:100%;margin:0;font-size:clamp(13px,1.5vw,14px)}
  #home .premiere-option{position:static;width:100%;margin:0}
}

/* Final responsive grouping: the announcement follows the brand without fixed text-to-button offsets. */
@media (min-height:501px) and (min-aspect-ratio:5/4),
       (min-height:501px) and (min-width:768px) and (min-aspect-ratio:1/1){
  #home .premiere-footer{position:absolute;left:3.2vw;top:calc(10.28svh + min(21.725vw,34.95svh));right:auto;bottom:auto;width:min(34vw,490px);height:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:clamp(5px,1svh,16px);padding:0}
  #home .premiere-note{position:static;width:100%;margin:0;font-size:clamp(14px,1.55vw,23px);line-height:1.3}
  #home .premiere-option{position:static;width:100%;min-height:48px;margin:0;padding:6px 8px;font-size:clamp(30px,3.2vw,50px);line-height:1.2}
}
@media (min-width:1800px) and (min-height:900px) and (min-aspect-ratio:1/1){
  #home .premiere-footer{left:5.12svh;width:54.45svh}
  #home .premiere-note{font-size:2.48svh}
  #home .premiere-option{min-height:5.33svh;padding:.67svh .89svh;font-size:5.12svh}
}
@media (max-height:500px) and (min-aspect-ratio:3/2){
  #home{height:100dvh;min-height:100dvh}
  #home .age-badge{left:auto;right:max(12px,1.4vw)}
}
@media (max-height:500px) and (min-aspect-ratio:3/2) and (max-width:600px){
  #home .premiere-footer{top:calc(3svh + min(16.9vw,59svh) + 14px);width:min(34vw,190px)}
}

@media (max-height:240px) and (min-aspect-ratio:3/2) and (min-width:601px){
  #home .hero-brand-lockup{width:min(30vw,100svh)}
  #home .premiere-footer{top:60svh}
}

/* Very small emulator and split-screen windows. */
@media (max-width:360px) and (max-height:240px){
  #home{height:100dvh;min-height:100dvh}
  #home .hero-picture .hero-image{object-position:0 38%}
  #home .hero-brand-lockup{top:4px;left:4px;width:min(44vw,120px);gap:0}
  #home .hero-brand-lockup .tagline{width:100%;margin-top:0;line-height:1.05}
  #home .hero-brand-lockup .tagline-text{font-size:7.2cqw;line-height:1.05}
  #home .premiere-footer{position:absolute;left:4px;top:min(40svh,80px);right:auto;bottom:auto;width:min(50vw,140px);height:auto;display:flex;flex-direction:column;align-items:center;gap:2px;padding:0}
  #home .premiere-note{position:static;width:100%;font-size:9px;line-height:1.05;letter-spacing:0;text-shadow:0 1px 3px #100d0b}
  #home .premiere-option{position:static;width:100%;min-height:0;margin:0;padding:0;font-size:clamp(15px,6.3vw,18px);line-height:1.1;text-shadow:0 1px 4px #100d0b}
  #home .age-badge{left:auto;right:5px;top:auto;bottom:5px;font-size:14px;line-height:1}
}
@media (max-width:280px) and (min-height:241px){
  #home .hero-picture .hero-image{object-position:50% 100%}
  #home .hero-brand-lockup{top:2px;width:min(47vw,120px)}
  #home .hero-brand-lockup .tagline-text{font-size:7cqw}
  #home{--footer-height:min(95px,33svh)}
  #home .premiere-footer{height:var(--footer-height);gap:2px;padding:4px 8px 8px}
  #home .premiere-note{width:100%;font-size:clamp(10px,4.4vw,12px);line-height:1.05;letter-spacing:0}
  #home .premiere-option{min-height:28px;font-size:clamp(21px,9vw,24px);line-height:1.1}
  #home .age-badge{left:8px;bottom:8px;font-size:15px;line-height:1}
}

@media (max-width:360px) and (max-height:240px){
  #home .premiere-footer{top:calc(24px + min(22vw,60px))}
}
@media (min-width:361px) and (max-height:200px) and (min-aspect-ratio:3/2){
  #home .hero-brand-lockup{top:2px;left:2vw;width:min(30vw,80svh);gap:0}
  #home .hero-brand-lockup .tagline{width:100%;margin-top:0;line-height:1.05}
  #home .hero-brand-lockup .tagline-text{font-size:6.8cqw;line-height:1.05}
  #home .premiere-footer{left:2vw;top:calc(2px + min(15vw,40svh) + 14px);width:min(34vw,110svh);gap:2px}
  #home .premiere-note{font-size:10px;line-height:1.05;letter-spacing:0}
  #home .premiere-option{min-height:0;padding:0;font-size:clamp(16px,2vw,22px);line-height:1.1}
  #home .age-badge{font-size:14px;line-height:1}
}

/* The added date needs a little more room in narrow first screens. */
@media (min-width:281px) and (max-width:340px) and (min-height:241px),
       (min-width:341px) and (max-width:360px) and (min-height:241px) and (max-height:375px){
  #home .premiere-footer{gap:4px;padding:6px 12px max(7px,env(safe-area-inset-bottom,0px))}
  #home .premiere-note{font-size:clamp(12px,4.3vw,14px);line-height:1.12}
  #home .premiere-option{min-height:34px;font-size:clamp(25px,8vw,28px);line-height:1.1}
}

/* Extra-short landscape windows retain the title inside the viewport. */
@media (min-width:601px) and (max-height:260px) and (min-aspect-ratio:3/2){
  #home .premiere-note{font-size:12px;line-height:1.06}
  #home .premiere-option{font-size:28px;line-height:1.05}
}
@media (min-width:601px) and (max-height:180px) and (min-aspect-ratio:3/2){
  #home .premiere-note{font-size:10px}
  #home .premiere-option{font-size:22px}
}

#home .date-number{font-family:PremierePrata,Georgia,serif;font-size:1em;line-height:0;letter-spacing:0}
