/* SA IMMO holding page. Static build of the Claude Design template
   templates/coming-soon/ComingSoon.dc.html (SAIMMO Design System).
   Tokens copied from the design system's tokens/*.css. */

/* Fonts: self-hosted (no request to Google), SIL Open Font License */
@font-face{font-family:'Lato';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/lato-400.woff2') format('woff2')}
@font-face{font-family:'Lato';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/lato-700.woff2') format('woff2')}
@font-face{font-family:'Lora';font-style:normal;font-weight:400 700;font-display:swap;src:url('../fonts/lora-variable.woff2') format('woff2')}
@font-face{font-family:'Lora';font-style:italic;font-weight:400 700;font-display:swap;src:url('../fonts/lora-italic-variable.woff2') format('woff2')}

:root{
  --navy-ink:#121833;
  --navy-lift:#1E2A4A;
  --gold:#C9A35B;
  --gold-muted:#6E6450;
  --white:#FFFFFF;
  --mist:#C5CAD8;
  --font-serif:'Lora',Georgia,'Times New Roman',serif;
  --font-sans:'Lato','Helvetica Neue',Arial,sans-serif;
  --fs-label:12px;
  --tracking-label:1.5px;
  --tracking-wide:0.3em;
  --content-max:1080px;
  --band:26px;
  --nav-h:88px;
  --ease-out:cubic-bezier(.2,.7,.2,1);
  --dur-fast:160ms;
  --gradient-wallpaper:linear-gradient(135deg,var(--navy-ink) 0%,var(--navy-lift) 50%,var(--navy-ink) 100%);
  --gradient-band:linear-gradient(90deg,#D9BA78 0%,var(--gold) 60%,#B8924C 100%);
  --texture-diagonal:repeating-linear-gradient(135deg,rgba(255,255,255,0.018) 0 1px,transparent 1px 22px);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{margin:0;background:var(--navy-ink)}
body{color:var(--white);font-family:var(--font-sans)}
img{max-width:100%}
a{transition:color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* Navbar */
.nav{position:sticky;top:0;z-index:10;background:var(--navy-ink);border-bottom:1px solid var(--gold-muted)}
.nav__bar{height:var(--nav-h);padding:0 48px 0 56px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.nav__logo{display:block;line-height:0}
.nav__logo img{height:60px;width:auto;display:block;margin:0 -10px}
.nav__actions{display:flex;align-items:center;gap:28px}
.nav__langs{display:flex;gap:12px}
.nav__langs button,.nav__cta{font-family:var(--font-sans);font-weight:700;font-size:var(--fs-label);letter-spacing:var(--tracking-label)}
.nav__langs button{background:none;border:0;border-bottom:1px solid transparent;padding:6px 2px;cursor:pointer;color:var(--mist)}
.nav__langs button[aria-pressed="true"]{color:var(--gold);border-bottom-color:var(--gold)}
.nav__cta{text-transform:uppercase;text-decoration:none;padding:12px 20px;border:1px solid var(--gold);color:var(--gold);white-space:nowrap}
.nav__cta:hover{background:var(--gold);color:var(--navy-ink)}

/* Hero */
.hero{position:relative;min-height:calc(100vh - var(--nav-h));min-height:calc(100svh - var(--nav-h));padding-left:var(--band);display:flex;flex-direction:column;background:var(--texture-diagonal),var(--gradient-wallpaper)}
.hero__band{position:absolute;top:0;bottom:0;left:0;width:var(--band);background:var(--gradient-band)}
.hero__corner{position:absolute;width:110px;height:110px;border:0 solid var(--gold);opacity:.65;pointer-events:none}
.hero__corner--tl{top:40px;left:66px;border-top-width:1.5px;border-left-width:1.5px}
.hero__corner--tr{top:40px;right:40px;border-top-width:1.5px;border-right-width:1.5px}
.hero__corner--bl{bottom:40px;left:66px;border-bottom-width:1.5px;border-left-width:1.5px}
.hero__corner--br{bottom:40px;right:40px;border-bottom-width:1.5px;border-right-width:1.5px}
.hero__main{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:72px 64px;gap:36px}
.hero__crest{height:190px;width:auto;display:block}

.wordmark{display:flex;flex-direction:column;align-items:center;gap:14px}
.wordmark__name{font-family:var(--font-serif);font-weight:700;font-size:60px;letter-spacing:.12em;line-height:1}
.wordmark__name span{color:var(--gold);font-weight:400}
.wordmark__rule{width:340px;max-width:70vw;height:2px;background:var(--gold)}
.wordmark__sub{font-family:var(--font-serif);font-size:17px;letter-spacing:.9em;margin-right:-.9em;color:var(--mist)}

.message{display:flex;flex-direction:column;align-items:center;gap:16px;max-width:620px}
.message__eyebrow{font-weight:700;font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--gold)}
.message h1{margin:0;font-family:var(--font-serif);font-weight:400;font-style:italic;font-size:30px;line-height:1.3;color:var(--white);text-wrap:balance}
.message p{margin:0;font-size:17px;line-height:1.6;color:var(--mist);text-wrap:pretty}

.contact{display:flex;flex-direction:column;align-items:center;gap:14px;scroll-margin-top:110px}
.contact__caps{font-family:var(--font-serif);font-size:14px;letter-spacing:var(--tracking-wide);color:var(--gold)}
.contact__rule{width:120px;height:1px;background:var(--gold);opacity:.8}
.contact__name{font-family:var(--font-serif);font-weight:700;font-size:19px;letter-spacing:.04em}
.contact__links{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;align-items:center;font-size:16px}
.contact__links a,.footer a{color:var(--gold);text-decoration:none;overflow-wrap:anywhere}
.contact__links a:hover,.footer a:hover{color:var(--white)}
.contact__dot{width:4px;height:4px;background:var(--gold);border-radius:50%}

/* Footer */
.footer{background:var(--navy-ink);border-top:1px solid var(--gold-muted);color:var(--white)}
.footer__grid{max-width:var(--content-max);margin:0 auto;padding:56px 32px 40px;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:40px}
.footer__brand{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.footer__brand img{height:84px;width:auto;display:block;margin-left:-8px}
.footer__motto{font-family:var(--font-serif);font-size:12px;letter-spacing:var(--tracking-wide);color:var(--gold)}
.footer__col{display:flex;flex-direction:column;gap:12px}
.footer__caps{font-weight:700;font-size:var(--fs-label);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--gold)}
.footer__body{font-size:14px;line-height:1.7;color:var(--mist)}
.footer__name{font-family:var(--font-serif);font-weight:700;font-size:16px;color:var(--white)}
.footer__legal{border-top:1px solid var(--gold-muted)}
.footer__legal-inner{max-width:var(--content-max);margin:0 auto;padding:18px 32px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:var(--fs-label);color:var(--mist)}

/* Narrow (the design system's Navbar switches at 1180px) */
@media (max-width:1180px){
  :root{--nav-h:72px}
  .nav__bar{padding:0 20px 0 24px}
  .nav__logo img{height:48px}
  .nav__actions{gap:16px}
}

/* Phones: additions to the design, which was drawn for desktop */
@media (max-width:640px){
  :root{--band:12px}
  .hero__corner{width:56px;height:56px}
  .hero__corner--tl,.hero__corner--bl{left:28px}
  .hero__corner--tl,.hero__corner--tr{top:20px}
  .hero__corner--bl,.hero__corner--br{bottom:20px}
  .hero__corner--tr,.hero__corner--br{right:16px}
  .hero__main{padding:56px 28px;gap:28px}
  .hero__crest{height:140px}
  .wordmark__name{font-size:clamp(36px,11vw,60px)}
  .wordmark__sub{font-size:14px;letter-spacing:.6em;margin-right:-.6em}
  .message h1{font-size:24px}
  .message p{font-size:16px}
  .contact__links{flex-direction:column;gap:8px}
  .contact__dot{display:none}
  .footer__grid{padding:40px 24px 32px;gap:32px}
  .footer__legal-inner{padding:18px 24px}
}
@media (max-width:480px){
  .nav__cta{display:none}
  .nav__logo img{height:40px}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  a{transition:none}
}
