:root{
  /*--navy:#0E3049;*/
  --navy:#1B365D;
  --cream:#F9F0DA;
  --cream-2:#EADFC2;
  --olive:#566B25;
  --olive-dark:#41531B;
  /*--terra:#E4552C;*/
  -terra-dark:#C8451F;
  --terra:#B67233;
  --peach:#F1975C;
  --sand:#EFE0BE;
  --muted-on-navy:#D8CDB2;
  --faint-on-navy:#B9AE96;
}
*{box-sizing:border-box;}
body{margin:0;background:var(--cream);color:var(--navy);font-family:Figtree,system-ui,sans-serif;}
a{color:var(--terra);text-decoration:none;}
a:hover{color:var(--terra-dark);}
:focus-visible{outline:2px solid var(--terra);outline-offset:2px;}
.frame{max-width:1180px;margin:0 auto;background:var(--cream);}
.bigword{font-weight:900;letter-spacing:-0.035em;line-height:.92;margin:0;}
h1,h2,h3{font-weight:900;letter-spacing:-0.025em;margin:0;}
.cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--olive);color:var(--cream);
  font-weight:800;font-size:17px;padding:16px 30px;border:none;border-radius:12px;cursor:pointer;
  transition:background .18s ease,transform .18s ease;}
.cta:hover{background:var(--olive-dark);color:var(--cream);transform:translateY(-2px);}
.cta.terra{background:var(--terra);} .cta.terra:hover{background:var(--terra-dark);}
.cta.outline{background:transparent;border:2px solid currentColor;}
.navlite{display:flex;align-items:center;gap:30px;padding:22px 60px;font-weight:600;font-size:15.5px;}
.navlite a{text-decoration:none;opacity:.85;}
.navlite a:hover{opacity:1;}
.ic{display:grid;place-content:center;width:52px;height:52px;border-radius:999px;}
.ic svg{width:26px;height:26px;stroke-width:2.75;}
.door{display:flex;flex-direction:column;gap:10px;text-decoration:none;padding:26px;border-radius:16px;
  transition:transform .18s ease,box-shadow .18s ease;}
.door:hover{transform:translateY(-4px);box-shadow:0 14px 34px rgba(14,48,73,.18);}
.doorname{font-weight:900;font-size:22px;letter-spacing:-0.02em;}
image-slot{display:block;width:100%;height:100%;background:var(--sand);}
@media (max-width:860px){
  .frame > div{padding-left:24px !important;padding-right:24px !important;}
  .frame [style*="grid-template-columns"]{grid-template-columns:1fr !important;}
  .navlite{flex-wrap:wrap;gap:16px;}
  .bigword{font-size:52px !important;}
}
