/* Homepage-only hero: portrait film, one viewport, and a bounded entrance. */
#one-loader{display:none;position:fixed;inset:0;z-index:90;place-items:center;background:#efe5d5;color:#3c3025;transition:opacity 420ms cubic-bezier(.22,1,.36,1);}
html.one-booting #one-loader,html.one-boot-leaving #one-loader{display:grid}
html.one-booting{overflow:hidden}
html.one-boot-leaving #one-loader{opacity:0;pointer-events:none}
.one-loader-inner{display:flex;align-items:center;flex-direction:column;text-align:center;gap:24px;padding:32px}
.one-loader-seal{position:relative;display:grid;place-items:center;width:70px;height:70px;border:1px solid #982b2430;border-radius:50%}
.one-loader-seal::before{content:'';position:absolute;inset:-8px;border:1px solid #982b2430;border-radius:50%;animation:one-seal-breathe 1.6s ease-in-out infinite}
.one-loader-seal>span{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:var(--red,#982b24)}
.one-loader-seal img{display:block;width:28px;height:29px}
.one-loader-name{font:500 17px/1.2 var(--sans,Arial,sans-serif);letter-spacing:.2em}
.one-loader-name em{font-style:normal;letter-spacing:-.04em;font-weight:400;margin-left:9px;padding-left:12px;border-left:1px solid #b3a38b}
.one-loader-note{margin:0;font:400 12px/1.5 var(--sans,Arial,sans-serif);color:#776c5b}
.one-loader-line{height:1px;width:112px;background:#982b2424;overflow:hidden}
.one-loader-line::after{content:'';display:block;height:1px;width:48px;background:#982b24;animation:one-loader-drift 1.4s ease-in-out infinite}
.one-loader-continue{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));border:0;border-bottom:1px solid #bdad96;background:none;min-height:44px;padding:10px 3px;font-size:12px;color:#685744;cursor:pointer}
@keyframes one-seal-breathe{0%,100%{transform:scale(.98);opacity:.45}50%{transform:scale(1.07);opacity:1}}
@keyframes one-loader-drift{0%{transform:translateX(-50px)}100%{transform:translateX(114px)}}
.one-hero .hero-media picture{display:contents}
.one-hero .hero-media{background:#efe5d5}
/* Base content is visible if the deferred controller cannot be delivered. */
html.js:not(.one-booting):not(.one-boot-leaving) .one-hero:not(.hero-managed) .hero-content,
html.js:not(.one-booting):not(.one-boot-leaving) .one-hero:not(.hero-managed) [data-reveal="details"]{visibility:visible}
html.js:not(.one-booting):not(.one-boot-leaving) .one-hero:not(.hero-managed) .hero-poster{opacity:1}
@media(max-width:767px) and (orientation:portrait){
  .one-offer-strip{min-height:38px;padding:8px 18px;font-size:10px;line-height:1.5}
  .one-offer-strip a{display:none}
  .one-hero{--hero-top:109px;height:auto;min-height:calc(100svh - var(--one-strip-height,38px));max-height:none;display:flex;flex-direction:column}
  .one-hero .hero-media{inset:0;width:100%;height:100%;aspect-ratio:auto}
  .one-hero .hero-media img,.one-hero .hero-media video{object-fit:cover;object-position:40% 100%}
  .one-hero .reading-light{background:linear-gradient(0deg,rgba(21,21,16,.63),transparent 13%),linear-gradient(180deg,rgba(239,229,213,.1) 42%,transparent 63%)}
  .one-hero .hero-frame{inset:8px}
  .one-hero .hero-ui{position:relative;inset:auto;flex:1;display:flex;flex-direction:column;padding:var(--hero-top) max(24px,env(safe-area-inset-left)) 0}
  html.has-one-mega .one-hero .hero-content,html:not(.js) .one-hero .hero-content,.one-hero .hero-content{position:relative;inset:auto;top:auto;left:auto;width:100%;max-width:430px;margin:0}
  .one-hero .hero-eyebrow{font-size:9px;letter-spacing:.085em;line-height:1.5;gap:9px;max-width:330px;margin-bottom:15px}
  .one-hero h1{font-size:clamp(40px,11.5vw,64px);line-height:1.04;letter-spacing:-.065em}
  .one-hero .hero-invitation{margin-top:17px}
  .one-hero .red-rule{width:27px}
  .one-hero .hero-caption{font-size:14px;line-height:1.55;margin:13px 0 17px;max-width:330px}
  .one-hero .hero-actions{gap:7px 14px;align-items:center}
  .one-hero .action-mask{flex-shrink:1}
  .one-hero .button{min-height:49px}
  .one-hero .button-text{font-size:13px;padding:14px 16px}
  .one-hero .button-arrow{min-height:47px;width:38px}
  .one-hero .secondary-link{font-size:11px;min-height:44px}
  .one-hero .invitation-note{margin-top:11px;padding:0;font-size:10px;line-height:1.6;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:0}
  .one-hero .hero-captionline{position:relative;inset:auto;margin-top:auto;padding:178px 0 max(27px,env(safe-area-inset-bottom));gap:9px;max-width:55%}
  .one-hero .caption-title{font-size:8px;letter-spacing:.12em}
  .one-hero .caption-subtitle{font-size:12px;line-height:1.3;max-width:150px}
  .one-hero .caption-line{display:none}
  .one-hero .scroll-cue{display:none}
  .one-hero .motion-controls{right:max(24px,env(safe-area-inset-right));bottom:max(20px,env(safe-area-inset-bottom));gap:6px}
  .one-hero .motion-button{font-size:10px;min-height:44px;min-width:44px}
  .one-hero .side-inscription{display:none}
}
@media(max-width:767px) and (orientation:portrait) and (max-height:720px){
  .one-hero{--hero-top:99px}
  .one-hero h1{font-size:clamp(38px,10.4vw,46px)}
  .one-hero .hero-eyebrow{margin-bottom:11px}
  .one-hero .hero-invitation{margin-top:12px}
  .one-hero .hero-caption{margin:10px 0 13px;font-size:13px}
  .one-hero .hero-captionline{padding-top:134px}
}
@media(max-width:360px) and (orientation:portrait){
  .one-hero .hero-ui{padding-inline:20px}
  .one-hero .hero-actions{gap:5px 10px}
  .one-hero .button-text{padding-inline:12px;font-size:12px}
  .one-hero .secondary-link{font-size:10px;gap:4px}
  .one-hero .motion-controls{right:20px;gap:3px}
}
@media(max-width:767px) and (orientation:landscape){
  .one-hero{height:auto;min-height:calc(100svh - var(--one-strip-height,38px));max-height:none}
  .one-hero .hero-media{inset:0;width:100%;height:100%;aspect-ratio:auto}
  .one-hero .hero-ui{position:relative;padding:110px 26px 110px}
  html.has-one-mega .one-hero .hero-content,html:not(.js) .one-hero .hero-content,.one-hero .hero-content{position:relative;inset:auto;width:min(80%,520px);margin:0}
  .one-hero h1{font-size:46px}
  .one-hero .hero-eyebrow{margin-bottom:16px}
  .one-hero .hero-invitation{margin-top:18px}
  .one-hero .hero-caption{margin-block:14px 18px;font-size:14px}
  .one-hero .reading-light{background:linear-gradient(90deg,#efe5d5f5,#efe5d5ba 45%,#efe5d522 80%),linear-gradient(0deg,#15151099,transparent 16%)}
  .one-hero .hero-captionline{bottom:30px;left:26px}
  .one-hero .scroll-cue{display:none}
}
@media(prefers-reduced-motion:reduce){
  #one-loader{transition:none}
  .one-loader-seal::before,.one-loader-line::after{animation:none}
}
