html,body{width:100%;max-width:100%;overflow-x:hidden}
body{position:relative}
img{max-width:100%}
header,main,section,footer{max-width:100%}
.logo{display:inline-flex;align-items:center;gap:7px;font-size:25px;letter-spacing:-1.5px}
.logo-mark{display:inline-grid;place-items:center;min-width:43px;height:38px;padding:0 9px;border-radius:11px;background:var(--pink);color:#fff;font-size:19px;font-weight:800;letter-spacing:-1px}
.logo-name{color:#fff;font-weight:800}
.brand-logo{display:block;width:166px;height:auto;max-height:48px}
.hero{min-height:calc(100vh - 100px);padding:42px 5.3vw;grid-template-columns:minmax(0,1.15fr) minmax(340px,.78fr);gap:clamp(48px,7vw,110px);overflow:hidden}
.hero-copy{min-width:0}
.hero-copy h1{font-size:clamp(48px,4.4vw,72px);max-width:780px}
.hero-copy>p{max-width:820px;margin-bottom:20px}
.hero-action{display:inline-block;margin-top:8px}
.hero-demo{width:min(100%,465px);height:min(560px,calc(100vh - 184px));min-height:430px;justify-self:center;padding:12px;overflow:hidden;background:#352b36}
.hero-demo>img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:10px}
.cards{max-width:1280px;padding:110px 5vw;align-items:stretch}
.cards article{min-height:0;text-align:left;padding:38px 32px}
.cards p{margin:0 0 16px;line-height:1.65}
.community{overflow:hidden}
.community>p{margin-bottom:28px}
.gallery,.gallery-full{width:100%;max-width:100%;transform:none;padding:0 4vw;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px}
.gallery-full .gallery-img{height:auto;aspect-ratio:3/4;background-size:cover;background-position:center}
.dark-section{max-width:1440px;padding:100px 7vw 50px}
.section-heading{max-width:900px;margin:0 auto}
.section-heading p{max-width:780px;margin:0 auto 18px}
.section-heading p:last-of-type{margin-bottom:74px}
.showcase,.showcase.flip{grid-template-columns:minmax(220px,.46fr) minmax(0,1.18fr);gap:clamp(48px,7vw,96px);align-items:start;margin:0 auto 100px}
.showcase.flip{grid-template-columns:minmax(0,1.18fr) minmax(220px,.46fr)}
.showcase>div:not(.compare){max-width:780px}
.showcase p,.use-row p{max-width:none;margin-bottom:18px}
.result-preview{width:min(100%,240px)!important;height:auto!important;aspect-ratio:3/4;justify-self:center;overflow:hidden;background:transparent!important}
.result-preview img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:16px}
.light-section{padding:78px 5vw 48px}
.steps{max-width:1280px;gap:28px;align-items:stretch}
.steps article{height:100%}
.step-art{height:230px;min-height:230px}
.steps p{margin-bottom:14px;line-height:1.65}
.use-cases{padding:52px 7vw 110px}
.case-list{max-width:1280px}
.use-row,.use-row.reverse{grid-template-columns:minmax(220px,.46fr) minmax(0,1.18fr);gap:clamp(48px,7vw,96px);align-items:start;margin:92px auto 0}
.use-row.reverse{grid-template-columns:minmax(0,1.18fr) minmax(220px,.46fr)}
.use-row>div:not(.compare):not(.case-art){max-width:780px}
.faq{padding:86px 7vw}
.faq-list{max-width:980px}
.cta{padding:92px 24px}
.cta p{max-width:720px}
@media(max-width:800px){
  body{padding-top:72px}
  header{position:fixed;top:0;left:0;right:0;z-index:1000;width:100%}
  .logo-mark{min-width:36px;height:32px;font-size:16px}
  .brand-logo{width:130px;max-height:38px}
  .hero{display:flex;flex-direction:column;min-height:auto;padding:64px 22px 32px;gap:38px}
  .hero-copy h1{font-size:clamp(42px,13vw,58px)}
  .hero-demo{width:100%;height:470px;min-height:0;margin-top:0}
  .cards{padding-top:38px}
  .gallery,.gallery-full{display:flex;width:100%;overflow-x:auto;gap:14px;padding:0 22px 10px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .gallery::-webkit-scrollbar{display:none}
  .gallery .gallery-img,.gallery .a,.gallery .b,.gallery .c,.gallery .d,.gallery .e,.gallery .portrait{display:block;flex:0 0 72vw;width:72vw;scroll-snap-align:center}
  .dark-section,.light-section,.use-cases,.faq{padding-left:22px;padding-right:22px}
  .showcase,.showcase.flip,.use-row,.use-row.reverse{display:flex;flex-direction:column;gap:28px;margin-bottom:72px}
  .showcase.flip>div:first-child,.use-row.reverse>div:first-child{order:2}
  .result-preview{
    width:min(100%,240px)!important;
    align-self:center!important;
    justify-self:center!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .showcase>.result-preview,
  .use-row>.result-preview{
    flex:none;
  }
}

/* Ebony AI black-and-gold brand palette. */
:root{
  --pink:#d6a84b;
  --gold:#d6a84b;
  --gold-light:#f0cf83;
  --gold-dark:#9c6b20;
}
.hero{
  background:
    radial-gradient(ellipse 46% 54% at 56% 15%,rgba(187,133,35,.34),transparent 72%),
    var(--bg);
}
.logo-mark,
.pink-button,
.upload button{
  background:linear-gradient(135deg,var(--gold-light),var(--gold) 56%,var(--gold-dark));
  color:#100c05;
  box-shadow:0 9px 28px rgba(184,128,28,.18);
}
.pink-button:hover,
.upload button:hover{
  background:linear-gradient(135deg,#f7dda2,#dfb354 58%,#ad7725);
}
.icon{
  color:var(--gold-light);
  text-shadow:0 0 20px rgba(214,168,75,.34);
}
.compare .after{border-left-color:var(--gold)}
.handle{
  border-color:var(--gold);
  color:var(--gold-light);
  box-shadow:0 0 22px rgba(214,168,75,.22);
}
.faq summary:after{color:var(--gold-light)}
.cards article{
  border-color:rgba(214,168,75,.18);
  background:linear-gradient(140deg,#17140f,#100f0c);
}
.cards article:hover{
  border-color:rgba(214,168,75,.42);
  box-shadow:0 18px 48px rgba(0,0,0,.28),0 0 26px rgba(184,128,28,.06);
}
.hero-demo{
  background:#2b2519;
  border-color:rgba(214,168,75,.32);
  box-shadow:0 24px 65px rgba(0,0,0,.34),0 0 28px rgba(184,128,28,.07);
}
.before-label,.after-label{
  border:1px solid rgba(214,168,75,.28);
}
.cta{
  background:
    radial-gradient(ellipse at center,rgba(154,105,28,.62) 0%,#241c0f 44%,#0d0b0e 76%);
}
.button.white:hover{
  background:var(--gold-light);
  color:#100c05;
}
