:root{--blue:#123aa4;--deep:#071d5b;--gold:#caa758;--gold-light:#f2dfaa;--white:#fff;--ink:#0b1532}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--white)}
body{font-family:"DM Sans",sans-serif;color:var(--ink)}
a{color:inherit;text-decoration:none}
.coming-soon{min-height:100svh;display:grid;grid-template-columns:minmax(460px,.84fr) minmax(0,1.16fr);background:var(--white)}
.message-panel{position:relative;z-index:2;min-height:100svh;padding:clamp(28px,4vw,62px) clamp(28px,5.7vw,100px) 34px;display:flex;flex-direction:column;background:linear-gradient(145deg,#fff 0%,#fff 58%,#f5f8ff 100%)}
.message-panel:after{content:"";position:absolute;right:-1px;top:0;width:6px;height:100%;background:linear-gradient(180deg,#a77018,#f2dfaa 48%,#a77018)}
.brand{display:inline-flex;align-items:center;gap:13px;width:max-content;color:var(--blue);font-family:"Playfair Display",serif;font-weight:700;letter-spacing:.1em;font-size:clamp(.9rem,1.2vw,1.18rem)}
.brand img{width:clamp(50px,5vw,72px);height:64px;object-fit:contain}
.message{margin:auto 0;max-width:680px;padding:54px 0}
.eyebrow{margin:0 0 18px;color:#9a6d1f;font-size:.78rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
h1{margin:0;color:var(--deep);font-family:"Playfair Display",serif;font-size:clamp(4rem,7.2vw,8.2rem);font-weight:600;letter-spacing:-.055em;line-height:.82}
h1 em{color:var(--blue);font-weight:600}
.gold-rule{width:110px;height:4px;margin:36px 0 28px;background:linear-gradient(90deg,#9c6814,#f2dfaa,#b17b21)}
.intro{max-width:590px;margin:0;color:#536078;font-size:clamp(1.05rem,1.35vw,1.28rem);line-height:1.75}
.role{max-width:600px;color:var(--deep);font-size:1rem;font-weight:700;line-height:1.55;margin:0 0 18px}
.intro.more{margin-top:14px}
.social-caption{color:#536078;font-size:.92rem;line-height:1.5}
.coming-label{margin:28px 0 0;color:var(--deep);font-family:"Playfair Display",serif;font-size:1.35rem;font-weight:700}
.social-links{display:flex;align-items:center;gap:14px;margin-top:34px}
.social-link{display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center;border:1px solid rgba(202,167,88,.62);border-radius:50%;color:var(--gold);background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(242,223,170,.2));box-shadow:0 8px 22px rgba(7,29,91,.08);transition:color .2s ease,border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.social-link svg{width:21px;height:21px;fill:currentColor}
a.social-link:hover,a.social-link:focus-visible{color:var(--blue);border-color:var(--blue);transform:translateY(-3px);box-shadow:0 12px 26px rgba(18,58,164,.16);outline:none}
.social-link.pending{cursor:default;opacity:.72}
.social-link.pending:hover{color:var(--blue);border-color:var(--blue)}
footer{display:flex;justify-content:space-between;gap:24px;border-top:1px solid rgba(18,58,164,.15);padding-top:20px;color:#7d8492;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}
.portrait-panel{position:relative;min-height:100svh;overflow:hidden;background:var(--deep)}
.portrait-panel img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.portrait-panel img{object-position:center 38%}
.portrait-wash{position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,29,91,.16),transparent 34%),linear-gradient(0deg,rgba(7,29,91,.62),transparent 40%)}
.side-note{position:absolute;right:clamp(26px,4vw,66px);bottom:clamp(28px,5vw,70px);margin:0;padding-left:22px;border-left:3px solid var(--gold-light);color:#fff;text-align:right;font-family:"Playfair Display",serif;font-size:clamp(1.2rem,2vw,2rem);line-height:1.2;text-shadow:0 2px 20px rgba(7,29,91,.55)}
@media(max-width:900px){
  .coming-soon{grid-template-columns:1fr}
  .message-panel{min-height:auto;padding-bottom:30px}
  .message-panel:after{right:0;top:auto;bottom:-1px;width:100%;height:5px}
  .message{padding:70px 0 58px}
  h1{font-size:clamp(3.8rem,14vw,7.5rem)}
  .portrait-panel{min-height:72svh}
  .portrait-panel img{object-position:61% center}
}
@media(max-width:560px){
  .message-panel{padding:24px 22px 26px}
  .brand img{width:48px;height:50px}
  .message{padding:58px 0 48px}
  h1{font-size:clamp(3.25rem,17vw,5.2rem)}
  .intro{font-size:1rem}
  footer{flex-direction:column;gap:7px}
  .portrait-panel{min-height:62svh}
  .portrait-panel img{object-position:66% center}
  .side-note{left:22px;right:22px;text-align:left;font-size:1.35rem}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
