/* Homepage monument: self-contained composition, independent of the old line gate. */
.triumph{position:relative;isolation:isolate;overflow:hidden;padding:104px 24px 44px;background:radial-gradient(ellipse at 50% 43%,#30271b 0,#161410 37%,#090908 73%);text-align:center;}
.triumph::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 95%,#91744322,transparent 48%);pointer-events:none;}
.triumph-stage{position:relative;width:min(1100px,100%);aspect-ratio:1200/940;margin:0 auto;container-type:inline-size;}
.triumph-stone{position:absolute;inset:0;width:100%;height:100%;filter:brightness(.72) saturate(.7) drop-shadow(0 24px 36px #0009);pointer-events:none;}
/* Inscription dimensions follow the stone panel at every viewport width. */
.triumph-brand{
  position:absolute;top:14.6%;left:25%;width:50%;height:12%;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:.55cqw;color:#e4d4b2;text-shadow:0 1px 2px #0008;
}
.triumph-brand img{width:3.6cqw;height:auto;opacity:.9;}
.triumph-brand > div{display:flex;flex-direction:column;align-items:center;gap:.55cqw;}
.triumph-word{
  display:block;font-family:var(--disp);font-size:3.25cqw;font-weight:400;
  letter-spacing:.3em;line-height:1;text-indent:.3em;white-space:nowrap;
}
.triumph-name{
  display:block;margin:0;font-family:var(--serif);font-size:.95cqw;
  line-height:1.4;letter-spacing:.42em;text-indent:.42em;color:#bba47e;white-space:nowrap;
}
.triumph-copy{position:relative;margin:0 auto 22px;max-width:600px;}
.triumph-kicker{margin:0 0 10px;font-family:var(--disp);font-size:11px;letter-spacing:.3em;color:#c5ac7f;text-transform:uppercase;}
.triumph-title{margin:0;color:#eee2cc;font-family:var(--serif);font-size:clamp(20px,2.2vw,28px);font-weight:400;line-height:1.65;letter-spacing:.15em;text-shadow:0 3px 24px #000;}
.triumph-title span{display:inline-block;}.triumph-title span + span{margin-left:.65em;}
.triumph-elevation{position:absolute;z-index:1;bottom:6.6%;left:30.5%;width:39%;height:42%;object-fit:contain;object-position:center bottom;opacity:1;filter:drop-shadow(0 0 16px #b69a5822);}
.triumph-foot{position:relative;margin:12px auto 0;}
.triumph-location{margin:0;color:#ac9671;font-size:10px;letter-spacing:.34em;}
.triumph-links{display:flex;justify-content:center;gap:16px;margin-top:25px;}
.triumph-links .btn{min-width:152px;padding:15px 26px;}
.triumph-links .btn--solid{background:linear-gradient(125deg,#baa17a,#7d6543);border-color:#b39b74;color:#100e0a;}
.triumph-links a:focus-visible{outline:2px solid #ead9b7;outline-offset:5px;}
@media(min-width:1000px){.triumph-stage{width:min(1100px,calc((100svh - 230px)*1.277));min-width:780px;}.triumph{min-height:100svh;}.triumph-title{font-size:26px;}}
/* A full mobile opening screen. Minimum height allows short screens and large text to scroll. */
@media(max-width:650px){
  .triumph{
    min-height:100vh;min-height:100svh;
    /* Share spare height 1:2 above/below the composition, keeping its internal gap fixed. */
    display:grid;grid-template-columns:minmax(0,1fr);
    grid-template-rows:minmax(12px,1fr) auto 12px auto minmax(24px,2fr);
    align-items:start;justify-items:center;
    gap:0;padding:calc(82px + env(safe-area-inset-top,0px)) 0 calc(20px + env(safe-area-inset-bottom,0px));
    background:radial-gradient(ellipse at 50% 42%,#30271b,#11100d 55%,#090908 85%);
  }
  /* Reserve room for the header, caption and both buttons before sizing the artwork. */
  .triumph-stage{
    width:120vw;
    width:min(120vw, max(300px, calc((100svh - 290px - env(safe-area-inset-top,0px) - env(safe-area-inset-bottom,0px)) * 1.2766)));
    grid-row:2;max-width:none;margin:0;
  }
  .triumph-brand{top:14.3%;height:12.5%;}
  .triumph-copy{margin:0 auto 12px;width:100%;}
  .triumph-kicker{font-size:9px;letter-spacing:.2em;margin-bottom:10px;}
  .triumph-title{font-size:clamp(17px,4.4vw,24px);line-height:1.7;letter-spacing:.04em;}
  .triumph-elevation{height:42%;width:39%;left:30.5%;opacity:1;}
  .triumph-foot{grid-row:4;width:calc(100% - 48px);margin:0;}
  .triumph-location{font-size:8px;letter-spacing:.18em;color:#bba784;}
  .triumph-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px auto 0;max-width:380px;}
  .triumph-links .btn{width:100%;min-width:0;min-height:48px;padding:14px 10px;font-size:11px;letter-spacing:.12em;}
  .triumph-links .btn--solid{background:linear-gradient(115deg,#c5af87,#a08860);color:#19160f;}
  .triumph-links .btn--ghost{border-color:#bca47c66;color:#d7c8ac;}
}
@media(max-width:650px) and (max-height:700px){
  .triumph{grid-template-rows:minmax(4px,1fr) auto 10px auto minmax(12px,2fr);padding-bottom:calc(18px + env(safe-area-inset-bottom,0px));}
  .triumph-copy{margin-bottom:12px;}
  .triumph-kicker{margin-bottom:6px;}
  .triumph-links{margin-top:12px;}
}
@media(prefers-reduced-motion:no-preference){.triumph-stage{animation:triumph-appear 1.5s ease-out both;}@keyframes triumph-appear{from{opacity:0;transform:translateY(12px);}to{opacity:1;transform:none;}}}





