/* The opening follows a photographic editorial composition. */
.header{position:fixed;top:0;left:0;right:0;height:88px;grid-template-columns:auto 1fr auto;color:#f3eee5;background:linear-gradient(#08080875,transparent);border:0;transition:background .2s}
.header.scrolled,.header.menu-open{background:#111111f2;backdrop-filter:blur(12px)}
.header .brand{grid-column:1;font:400 28px/1 Georgia,serif;letter-spacing:7px}
.header .nav{grid-column:2;justify-self:end;justify-content:flex-end;gap:36px}
.header .nav>div{gap:36px}.header .nav-right{padding-right:0}
.header .nav a{font-size:10px;letter-spacing:1.8px}
.header .header-contact{grid-column:3;margin-left:36px;border-color:#f3eee548;color:#f3eee5}
.hero{height:100svh;min-height:660px;max-height:1080px;background:#151515;color:#f3eee5;position:relative;isolation:isolate}
.hero-background{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:0}
.hero:before{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#080808aa 0%,#08080844 39%,transparent 70%),linear-gradient(0deg,#080808dd 0%,transparent 56%);pointer-events:none}
.hero-copy{position:absolute;left:var(--gutter);bottom:clamp(132px,16svh,180px);z-index:2;width:max-content;max-width:52%}
.hero-kicker{position:static;font-size:10px;letter-spacing:2.3px;margin:0 0 26px;color:#d1c7b7}
.hero-wordmark{position:static;inset:auto;font:400 clamp(90px,9.2vw,160px)/.92 Georgia,'Times New Roman',serif;letter-spacing:.04em;text-align:left;transform:none;margin:0;z-index:auto}
.hero-signature{position:static;right:auto;top:auto;margin:27px 0 32px;max-width:420px;font:italic clamp(21px,2vw,31px)/1.4 Georgia,serif;color:#f3eee5}
.hero-actions{position:static;left:auto;bottom:auto;flex-direction:row;align-items:center;gap:20px}
.hero-actions .button{min-height:50px;font-size:10px;letter-spacing:1.4px;gap:30px}
.hero-primary{background:transparent;border:1px solid #b6a181;color:#f3eee5;padding:14px 25px}
.hero-primary:hover{background:#b6a18120}.hero-primary .icon{color:#b6a181}
.hero-actions .text-button{border:0;padding:14px 12px;color:#f3eee5;gap:13px}
.hero-actions .text-button:hover{color:#cfbea3}
.hero-foot{position:absolute;z-index:2;left:var(--gutter);right:var(--gutter);bottom:29px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff30;padding-top:14px;gap:24px}
.hero-foot>.eyebrow{font-size:9px;letter-spacing:2px;color:#d3cbc0}
.hero-foot .portrait-choices{align-items:center;flex-direction:row;gap:8px}
.hero-foot .portrait-choice{display:grid;place-items:center;width:40px;height:44px;min-width:40px;border:0;border-radius:0;background:none;font-size:11px;color:#c1bbb3;position:relative}
.hero-foot .portrait-choice:after{inset:auto;bottom:4px;left:9px;right:9px;height:1px;background:transparent;border:0;border-radius:0}
.hero-foot .portrait-choice.active{background:none;color:#f3eee5}.hero-foot .portrait-choice.active:after{background:#b6a181}
.portrait-rule{display:block;width:60px;height:1px;background:#b6a181;opacity:.8}
.hero-explore{display:flex;align-items:center;gap:20px;font-size:10px;letter-spacing:1px}.hero-explore .icon{width:17px;height:17px}
@media(min-width:1800px){.hero-wordmark{font-size:160px;letter-spacing:.04em}.hero-copy{bottom:175px}}
@media(max-width:1100px) and (min-width:761px){.header .nav,.header .nav>div{gap:22px}.header .header-contact{margin-left:24px}.hero{height:100svh;min-height:660px}.hero-wordmark{font-size:clamp(80px,10vw,112px)}.hero-signature{font-size:24px;max-width:350px}.hero-copy{max-width:56%}}
@media(max-width:760px){
  .header{height:74px;grid-template-columns:auto 1fr auto;padding:0 24px}
  .header .brand{grid-column:1;font-size:25px;letter-spacing:6px}
  .header .menu-toggle{grid-column:3;grid-row:1;justify-self:end;display:flex;color:#f3eee5;padding:12px 0;background:none}
  .header .header-contact{display:none}
  .header .nav{display:none;position:absolute;grid-column:1/-1;top:74px;left:0;right:0;margin:0;padding:12px 24px 28px;background:#111;box-shadow:none;border-bottom:1px solid #ffffff20}
  .header .nav.open{display:block}.header .nav>div{gap:0;flex-direction:column}.header .nav-right{padding:0}
  .header .nav a{font-size:12px;letter-spacing:1.5px;border-color:#ffffff20;padding:18px 0}
  .hero{height:100svh;min-height:700px;max-height:1000px}
  .hero-background{object-position:64% center}
  .hero:before{background:linear-gradient(0deg,#070707f2 0%,#070707c0 20%,transparent 66%),linear-gradient(90deg,#08080825,transparent 80%)}
  .hero-copy{left:24px;right:24px;max-width:none;width:auto;bottom:110px}
  .hero-kicker{position:static;margin-bottom:20px;font-size:8px;letter-spacing:1.8px}
  .hero-wordmark{position:static;font-size:clamp(60px,16vw,88px);letter-spacing:.05em;transform:none;line-height:1}
  .hero-signature{position:static;font-size:21px;max-width:310px;margin:18px 0 25px;line-height:1.4}
  .hero-actions{position:static;flex-direction:row;gap:14px}
  .hero-actions .button{font-size:9px;min-height:46px;padding:11px 20px;letter-spacing:1px;gap:22px}
  .hero-actions .text-button{font-size:9px;padding:11px 0;gap:12px}
  .hero-foot{left:24px;right:24px;bottom:20px;padding-top:9px;gap:10px}
  .hero-foot>.eyebrow{font-size:7px;max-width:90px;letter-spacing:1.1px}
  .hero-foot .portrait-choices{gap:2px;flex-direction:row}
  .hero-foot .portrait-choice{width:36px;min-width:36px;font-size:10px}
  .portrait-rule{width:20px}
  .hero-explore{font-size:0;gap:0}
}
@media(max-width:380px){.hero-wordmark{font-size:58px}.hero-signature{font-size:19px}.hero-actions .button{font-size:8px;gap:18px}.hero-foot .portrait-choice{width:32px;min-width:32px}}
@media(prefers-reduced-motion:reduce){.header{transition:none}}
