/* Premium public look: calmer editorial layout, fewer heavy cards. */
html,body{overflow-x:clip}
main,section,article,div,h1,h2,h3,p,button,a{min-width:0}
.home-layout{gap:clamp(28px,4vw,54px)}
.hero-stage{
  grid-template-columns:minmax(0,1fr) minmax(380px,.52fr);
  gap:clamp(36px,5vw,76px);
  padding:clamp(38px,5vw,76px);
  border-radius:18px;
  border-color:rgba(240,206,118,.12);
  background:linear-gradient(135deg,rgba(5,30,24,.72),rgba(2,9,7,.34));
  box-shadow:0 18px 54px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.025);
}
.hero-stage.panel::before,.hero-stage.panel::after{display:none}
.hero-copy{gap:18px;max-width:780px}
.hero-copy h1{
  max-width:13.8ch;
  font-size:clamp(2.55rem,3.55vw,4rem);
  line-height:1.03;
  overflow-wrap:normal;
}
.hero-text{max-width:680px;font-size:1.03rem;line-height:1.78}
.hero-actions{gap:12px;margin-top:6px}
.hero-actions .primary,.hero-actions .secondary{min-width:164px}
.hero-frame{
  width:min(100%,540px);
  aspect-ratio:4/3;
  border-radius:12px;
  border-color:rgba(240,206,118,.18);
  background:#010302;
}
.hero-image{width:100%;height:100%;max-height:none;object-fit:cover}
.hero-caption{width:min(100%,540px);font-size:.9rem}
.section-title{margin:0 0 12px}
.section-title h2{font-size:clamp(1.85rem,2.35vw,2.55rem)}
.start-band .section-title{display:flex}
.path-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.path-card{
  min-height:118px;
  padding:22px 0 0;
  border:0;
  border-top:1px solid rgba(240,206,118,.22);
  border-radius:0;
  background:transparent;
}
.path-card:hover{background:transparent;border-color:rgba(240,206,118,.54)}
.path-card strong{font-size:1.65rem}
.path-card span{max-width:360px;color:var(--muted)}
.trust-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  padding:18px 0;
  border-top:1px solid rgba(240,206,118,.14);
  border-bottom:1px solid rgba(240,206,118,.14);
}
.trust-strip .trust-card{
  min-height:0;
  padding:0 22px;
  border:0;
  border-right:1px solid rgba(240,206,118,.12);
  border-radius:0;
  background:transparent;
}
.trust-strip .trust-card:first-child{padding-left:0}
.trust-strip .trust-card:last-child{padding-right:0;border-right:0}
.trust-strip .trust-card span{
  font-family:var(--sans);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.trust-strip .trust-card p{margin-top:4px;color:var(--ink-2)}
.editorial-featured{
  grid-template-columns:minmax(0,1.35fr) minmax(280px,.68fr);
  grid-auto-rows:minmax(136px,auto);
  gap:14px;
}
.editorial-featured .content-card{
  border-radius:14px;
  border-color:rgba(240,206,118,.16);
  background:rgba(4,20,16,.52);
  box-shadow:none;
}
.editorial-featured .content-card::before,.editorial-featured .content-card::after{display:none}
.editorial-featured .content-card.is-featured{
  grid-row:span 2;
  min-height:320px;
  padding:22px;
}
.editorial-featured .content-card.is-featured h2{font-size:clamp(1.8rem,2.4vw,2.55rem)}
.editorial-featured .content-card.is-secondary{min-height:0;padding:18px}
.faq-band{gap:10px}
.faq-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.faq-grid details{
  padding:14px 0;
  border:0;
  border-top:1px solid rgba(240,206,118,.16);
  border-radius:0;
  background:transparent;
}
.faq-grid summary{color:var(--ink);font-weight:800}
.faq-grid summary::marker{color:var(--gold-2)}
.home-contact{
  padding:26px 0 0;
  border:0;
  border-top:1px solid rgba(240,206,118,.18);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.home-contact::before,.home-contact::after{display:none}
.site-footer{
  position:fixed;
  left:clamp(16px,4vw,32px);
  right:auto;
  bottom:14px;
  z-index:4;
  width:max-content;
  max-width:calc(100vw - 32px);
  padding:0;
  color:rgba(221,211,190,.48);
}
.site-footer nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start;
  gap:12px;
}
.site-footer a{
  color:inherit;
  font-size:.72rem;
  font-weight:500;
  line-height:1.4;
  text-decoration:none;
}
.site-footer a:hover,.site-footer a:focus-visible{
  color:rgba(240,206,118,.78);
}
.section-services .section-hero{
  padding:clamp(30px,4vw,48px);
  margin-bottom:10px;
  border-radius:18px;
}
.section-services .section-hero h1{font-size:clamp(3rem,4.2vw,4.9rem)}
.section-services .section-hero p{max-width:640px}
.section-services .section-role{margin:2px 0 8px}
.premium-process{
  position:relative;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:0;
  margin:8px 0 22px;
  padding:14px 0;
  border-top:1px solid rgba(240,206,118,.14);
  border-bottom:1px solid rgba(240,206,118,.14);
}
.premium-process article{
  padding:0 22px;
  border:0;
  border-right:1px solid rgba(240,206,118,.12);
  border-radius:0;
  background:transparent;
}
.premium-process article:first-child{padding-left:0}
.premium-process article:last-child{padding-right:0;border-right:0}
.premium-process span{width:26px;height:26px;margin-bottom:8px;font-size:.85rem}
.premium-process strong{font-size:1.28rem}
.premium-process p{font-size:.96rem;line-height:1.55}
.section-grid-services{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.content-card.card-services{
  min-height:0;
  padding:22px;
  border-radius:14px;
  border-color:rgba(240,206,118,.18);
  background:linear-gradient(145deg,rgba(6,31,25,.7),rgba(3,12,10,.58));
  box-shadow:0 12px 28px rgba(0,0,0,.14);
}
.content-card.card-services::before,.content-card.card-services::after{display:none}
.content-card.card-services h2{font-size:clamp(1.45rem,2.2vw,1.95rem)}
.content-card.card-services p{max-width:620px}
.service-card-action{
  position:relative;
  z-index:2;
  justify-self:start;
  min-height:38px;
  margin-top:14px;
  padding:0 16px;
  border:1px solid rgba(240,206,118,.32);
  border-radius:999px;
  background:rgba(240,206,118,.08);
  color:var(--gold-2);
  font-weight:800;
}
.service-card-action:hover{background:rgba(201,151,67,.14)}

@media (max-width:1240px){
  .hero-stage{grid-template-columns:minmax(0,1fr) minmax(320px,.58fr)}
  .editorial-featured{grid-template-columns:1fr}
  .editorial-featured .content-card.is-featured{grid-row:auto}
}
@media (max-width:860px){
  .shell{width:100%;overflow:hidden}
  .home-layout{gap:28px}
  .hero-stage{
    grid-template-columns:1fr;
    gap:22px;
    padding:24px 20px 26px;
    border-radius:18px;
  }
  .hero-copy{gap:14px}
  .hero-copy h1{
    max-width:100%;
    font-size:clamp(1.86rem,7.2vw,2.42rem);
    line-height:1.08;
    overflow-wrap:anywhere;
  }
  .hero-text{font-size:.98rem;line-height:1.68}
  .hero-actions .primary,.hero-actions .secondary{width:100%}
  .hero-media{width:100%;max-width:100%;justify-items:stretch}
  .hero-frame,.hero-caption{width:100%;max-width:100%;justify-self:stretch}
  .hero-frame{max-height:320px}
  .path-grid,.trust-strip,.faq-grid,.premium-process,.section-grid-services{grid-template-columns:1fr}
  .path-card{min-height:0;padding:16px 0 0}
  .trust-strip{gap:10px;padding:14px 0}
  .trust-strip .trust-card,.trust-strip .trust-card:first-child,.trust-strip .trust-card:last-child{
    padding:0;
    border-right:0;
  }
  .premium-process article,.premium-process article:first-child,.premium-process article:last-child{
    padding:12px 0;
    border-right:0;
    border-bottom:1px solid rgba(240,206,118,.1);
  }
  .premium-process article:last-child{border-bottom:0}
  .section-title{display:grid;gap:6px}
  .section-title p{max-width:100%}
  .section-services .section-hero h1{font-size:clamp(2.35rem,9vw,3.1rem)}
  .site-footer{grid-template-columns:1fr}
  .site-footer nav{justify-content:flex-start}
}
@media (max-width:430px){
  .hero-copy h1{font-size:clamp(1.78rem,7vw,2.12rem)}
  .hero-frame{max-height:260px}
  .hero-caption{font-size:.86rem}
  .path-card strong{font-size:1.42rem}
  .content-card.card-services{padding:18px}
}

/* Visible background texture: keep it quiet, but let the site breathe. */
body{
  background:
    linear-gradient(180deg,rgba(2,8,6,.68),rgba(2,8,6,.48) 34%,rgba(2,8,6,.32) 66%,rgba(2,8,6,.58));
}
.atmosphere{
  z-index:0;
  background:
    linear-gradient(180deg,rgba(2,6,5,.28),rgba(2,8,6,.34) 42%,rgba(2,6,5,.78)),
    radial-gradient(ellipse at 50% 0%,rgba(31,86,70,.3),transparent 48%),
    linear-gradient(180deg,#020504,#07150f 58%,#020504);
}
.deep-bg{
  background-image:
    linear-gradient(180deg,rgba(2,7,6,.16),rgba(2,7,6,.5) 38%,rgba(2,7,6,.32) 70%,rgba(2,7,6,.66)),
    url('../ember-threads.webp');
  background-position:50% 0;
  opacity:.78;
  filter:contrast(1.05) saturate(1.02);
  transform:scale(1.02);
}
.grain{opacity:.062}
.shell{z-index:1}
.hero-stage{
  background:linear-gradient(135deg,rgba(5,30,24,.66),rgba(2,9,7,.38));
  box-shadow:0 18px 54px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.028);
}
.section-hero{
  background:linear-gradient(145deg,rgba(9,34,28,.82),rgba(3,13,11,.68));
}
.editorial-featured .content-card,
.content-card.card-services{
  background:linear-gradient(145deg,rgba(6,31,25,.68),rgba(3,12,10,.54));
}
.home-contact{
  background:linear-gradient(180deg,transparent,rgba(2,8,6,.16));
}
@media (max-width:860px){
  .hero-stage{background:linear-gradient(145deg,rgba(5,30,24,.74),rgba(2,9,7,.5))}
  .deep-bg{opacity:.72;filter:contrast(1.03) saturate(1)}
}

/* Cleanup pass: remove decorative labels and make public sections direct. */
.eyebrow,.trust-strip,.section-role,.content-card .tag{display:none!important}
.path-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin:clamp(18px,3vw,34px) 0 clamp(16px,2.5vw,28px);
  padding:0 2px clamp(10px,1.4vw,16px);
  border-bottom:1px solid rgba(240,206,118,.18);
}
.section-head h1{
  font-size:clamp(2.25rem,4.6vw,4.7rem);
  letter-spacing:0;
}
.section-head .secondary{min-height:38px}
.public-section{display:grid;gap:0}
.section-grid{margin-top:0}
.gate-closed{
  min-height:min(56vh,520px);
  display:grid;
  place-items:center;
}
.gate-card.compact{
  width:min(680px,100%);
  padding:clamp(26px,4vw,46px);
}
.gate-card.compact h1{
  font-size:clamp(2.05rem,4.2vw,4rem);
  letter-spacing:0;
}
@media (max-width:860px){
  .path-grid{grid-template-columns:1fr}
  .section-head{
    display:grid;
    gap:12px;
    align-items:start;
    margin:20px 0 16px;
  }
  .section-head h1{font-size:clamp(2.15rem,10vw,3.35rem)}
  .gate-closed{min-height:48vh;place-items:start}
}

/* Emergency cleanup: no giant home material block, no duplicated section title block. */
.home-layout{gap:clamp(18px,2.4vw,30px)}
.hero-featured{
  display:grid;
  gap:8px;
  max-width:720px;
  margin-top:8px;
  padding-top:14px;
  border-top:1px solid rgba(240,206,118,.16);
}
.hero-featured-title{
  color:var(--gold-2);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.hero-featured-list{
  display:grid;
  gap:8px;
}
.hero-featured-item{
  position:relative;
  border:1px solid rgba(240,206,118,.14);
  border-radius:10px;
  background:rgba(3,13,11,.34);
  overflow:hidden;
  transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease;
}
.hero-featured-main{
  width:100%;
  display:grid;
  justify-items:center;
  gap:3px;
  padding:10px 12px;
  border:0;
  background:transparent;
  color:inherit;
  text-align:center;
  cursor:pointer;
  transition:color .16s ease,background-color .16s ease;
}
.hero-featured-main strong{
  max-width:min(100%,620px);
  font-family:var(--serif);
  font-size:clamp(1.04rem,1.25vw,1.24rem);
  font-weight:500;
  line-height:1.12;
}
.hero-featured-main p{
  max-width:680px;
  margin:0 auto;
  color:var(--muted);
  font-size:.9rem;
  line-height:1.45;
}
@media (hover:hover) and (pointer:fine){
  .hero-featured-item:hover,
  .hero-featured-item:has(.hero-featured-main:focus-visible){
    border-color:rgba(240,206,118,.46);
    background:rgba(201,151,67,.075);
    box-shadow:0 0 0 1px rgba(240,206,118,.08) inset;
  }
  .hero-featured-main:hover,
  .hero-featured-main:focus-visible{
    color:var(--gold-2);
    background:rgba(240,206,118,.035);
    outline:0;
  }
}
.hero-featured-edit{
  position:absolute;
  right:8px;
  top:8px;
  min-height:28px;
  padding:0 9px;
  border:1px solid rgba(240,206,118,.2);
  border-radius:999px;
  background:rgba(3,13,11,.82);
  color:var(--gold-2);
  font-size:.78rem;
  font-weight:700;
}
.home-materials{
  display:grid;
  gap:12px;
  padding:18px 0 0;
  border-top:1px solid rgba(240,206,118,.16);
}
.home-materials h2{
  font-size:clamp(1.45rem,2vw,2rem);
  letter-spacing:0;
}
.home-material-list{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
  gap:10px;
}
.home-material{
  position:relative;
  min-height:0;
  border:1px solid rgba(240,206,118,.16);
  border-radius:10px;
  background:rgba(4,20,16,.42);
  overflow:hidden;
}
.home-material-main{
  width:100%;
  min-height:0;
  display:grid;
  gap:6px;
  padding:14px 16px;
  border:0;
  background:transparent;
  color:inherit;
  text-align:left;
}
.home-material-main span{
  color:var(--gold-2);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.home-material-main strong{
  font-family:var(--serif);
  font-size:clamp(1.22rem,1.55vw,1.55rem);
  font-weight:500;
  line-height:1.1;
}
.home-material-main p{
  max-width:760px;
  color:var(--ink-2);
  font-size:.95rem;
  line-height:1.55;
}
.home-material-edit{
  position:absolute;
  right:10px;
  top:10px;
  min-height:30px;
  padding:0 10px;
  border:1px solid rgba(240,206,118,.2);
  border-radius:999px;
  background:rgba(3,13,11,.78);
  color:var(--gold-2);
  font-size:.8rem;
  font-weight:700;
}
.public-section{padding-top:clamp(10px,1.6vw,18px)}
.section-head{display:none!important}
.section-tools{
  display:flex;
  justify-content:flex-end;
  margin:0 0 8px;
}
.section-tools .plain{
  min-height:32px;
  padding:0 12px;
  border:1px solid rgba(240,206,118,.18);
  border-radius:999px;
  color:var(--gold-2);
  font-size:.86rem;
}
.section-grid{margin-top:0!important}
@media (max-width:860px){
  .hero-featured{margin-top:4px;padding-top:12px}
  body[data-route="home"] .hero-copy{
    justify-items:center;
    text-align:center;
  }
  body[data-route="home"] .hero-copy h1,
  body[data-route="home"] .hero-text{
    margin-inline:auto;
    text-align:center;
  }
  body[data-route="home"] .hero-featured{
    text-align:center;
  }
  body[data-route="home"] .hero-featured-title{
    width:100%;
    text-align:center;
  }
  .hero-featured-main strong{max-width:100%;padding-right:0}
  .hero-featured-main p{font-size:.88rem}
  .home-material-list{grid-template-columns:1fr}
  .home-material-main{padding:13px 14px}
  .public-section{padding-top:8px}
  .section-tools{justify-content:flex-start}
}
.hero-stage.has-media{
  grid-template-columns:minmax(0,1fr) minmax(260px,360px);
}
.hero-media{justify-items:center}
.hero-frame{
  width:min(100%,360px);
  max-height:460px;
  aspect-ratio:3/4;
}
.hero-image{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:50% 36%;
}
.section-grid .content-card.no-cover{
  min-height:0;
  padding:18px;
}
.section-grid .content-card-main{
  min-height:0;
}
.section-grid .content-card-copy{
  gap:8px;
}
@media (min-width:861px){
  .section-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
  }
}
@media (max-width:860px){
  .hero-stage.has-media{grid-template-columns:1fr}
  .hero-frame{width:min(100%,340px);max-height:440px}
  .section-grid .content-card.no-cover{padding:15px}
}

/* Home first screen: tighter block, larger portrait, no tiny desktop scroll. */
@media (min-width:861px){
  body[data-route="home"] .shell{
    padding-bottom:14px;
  }
  body[data-route="home"] main{
    padding-top:8px;
  }
  body[data-route="home"] .home-layout{
    gap:0;
  }
  body[data-route="home"] .hero-stage{
    min-height:min(612px,calc(100svh - 148px));
    padding:clamp(28px,4.4vh,42px) clamp(38px,4.4vw,72px);
    gap:clamp(42px,6vw,94px);
  }
  body[data-route="home"] .hero-stage.has-media{
    grid-template-columns:minmax(0,1fr) minmax(410px,500px);
  }
  body[data-route="home"] .hero-copy{
    gap:clamp(12px,2vh,17px);
    max-width:720px;
  }
  body[data-route="home"] .hero-copy h1{
    max-width:12.8ch;
    font-size:clamp(2.85rem,3.95vw,4.55rem);
  }
  body[data-route="home"] .hero-text{
    max-width:690px;
    font-size:clamp(.98rem,1vw,1.04rem);
    line-height:1.67;
  }
  body[data-route="home"] .hero-actions{
    margin-top:3px;
  }
  body[data-route="home"] .hero-frame{
    width:min(100%,500px);
    height:clamp(438px,59svh,548px);
    max-height:calc(100svh - 236px);
    aspect-ratio:auto;
  }
}

@media (max-width:860px){
  body[data-route="home"] .shell{
    padding-bottom:18px;
  }
  body[data-route="home"] main{
    padding-top:8px;
  }
  body[data-route="home"] .home-layout{
    gap:0;
  }
  body[data-route="home"] .hero-stage{
    min-height:0;
    padding:22px 18px;
    gap:18px;
  }
  body[data-route="home"] .hero-frame{
    width:min(100%,360px);
    max-height:430px;
  }
}

