
/* ========================================================================== 
   TDA Signature cinematic landing / v58 visual system
   ========================================================================== */
.signature-page{
  --sig-bg:#070a0e;--sig-bg-soft:#0c1016;--sig-card:#15171d;--sig-card-2:#1b1e24;
  --sig-line:rgba(255,255,255,.105);--sig-line-strong:rgba(255,255,255,.18);
  --sig-text:#f4f6f8;--sig-muted:#aeb6c4;--sig-dim:#7e8796;--sig-gold:#c4a360;
  --sig-radius:34px;--sig-radius-sm:22px;--sig-shadow:0 34px 90px rgba(0,0,0,.38);
  padding-top:92px;background:radial-gradient(circle at 72% 0%,rgba(105,122,145,.14),transparent 34%),linear-gradient(180deg,#080b10 0%,#050609 100%);
  color:var(--sig-text);overflow:hidden;isolation:isolate;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.signature-page *{box-sizing:border-box}.signature-page img{display:block;max-width:100%;height:auto}.signature-page a{color:inherit}
.sig-container{width:min(1480px,calc(100% - clamp(28px,5vw,80px)));margin:0 auto;position:relative;z-index:2}.sig-section{position:relative;padding:clamp(78px,9vw,148px) 0;border-bottom:1px solid rgba(255,255,255,.045)}
.sig-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 10%,rgba(196,163,96,.055),transparent 34%);pointer-events:none}.sig-section.is-compact{padding:clamp(54px,7vw,96px) 0}
.sig-overline{display:inline-flex;align-items:center;gap:14px;margin:0 0 24px;color:var(--sig-gold);font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.28em;line-height:1.3}.sig-overline:before{content:"";width:52px;height:1px;background:linear-gradient(90deg,var(--sig-gold),transparent)}
.sig-title{margin:0;color:#fff;font-size:clamp(36px,4.8vw,78px);line-height:.98;font-weight:320;letter-spacing:-.055em;text-transform:uppercase;text-wrap:balance;max-width:1120px;hyphens:auto}.sig-subtitle{margin:clamp(22px,3vw,34px) 0 0;color:#fff;font-size:clamp(21px,2.15vw,34px);line-height:1.16;font-weight:350;letter-spacing:-.02em;max-width:840px;text-wrap:balance}.sig-body{margin-top:clamp(24px,3vw,38px);color:var(--sig-muted);font-size:clamp(16px,1.08vw,20px);line-height:1.72;max-width:820px}.sig-body p{margin:0 0 18px!important;color:inherit!important}.sig-note{margin-top:26px;color:var(--sig-gold);font-size:13px;font-weight:850;line-height:1.45;text-transform:uppercase;letter-spacing:.13em}.sig-divider{height:1px;background:linear-gradient(90deg,var(--sig-gold),transparent);opacity:.72;margin:30px 0}
.sig-panel{position:relative;border-radius:var(--sig-radius);background:linear-gradient(145deg,rgba(32,34,40,.96),rgba(16,18,23,.985));border:1px solid var(--sig-line);box-shadow:var(--sig-shadow);padding:clamp(32px,4.4vw,72px);overflow:hidden}.sig-panel:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 0%,rgba(196,163,96,.15),transparent 31%),linear-gradient(180deg,rgba(255,255,255,.035),transparent);pointer-events:none}.sig-panel>*{position:relative;z-index:1}.sig-panel.wide{width:100%}
.sig-media{position:relative;overflow:hidden;border-radius:var(--sig-radius);background:#0b0d10;border:1px solid var(--sig-line);box-shadow:var(--sig-shadow);min-height:360px;isolation:isolate}.sig-media:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,transparent 38%,rgba(0,0,0,.16) 100%),linear-gradient(180deg,rgba(255,255,255,.04),rgba(0,0,0,.12));pointer-events:none}.sig-media img{width:100%;height:100%;object-fit:cover;filter:saturate(.88) contrast(1.03)}.sig-media.contain img{object-fit:contain;background:#080a0e}.sig-media.logo-like{min-height:260px;background:#020304}.sig-media.logo-like img{object-fit:contain;padding:clamp(28px,6vw,70px)}
/* Hero */
.sig-hero{min-height:calc(100vh - 92px);display:grid;align-items:end;padding:clamp(96px,11vw,180px) 0;background:#030405}.sig-hero:before{content:"";position:absolute;inset:0;background-image:var(--sig-bg-image);background-size:cover;background-position:center;opacity:.64;filter:saturate(.86) contrast(1.05)}.sig-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.88),rgba(0,0,0,.44) 44%,rgba(0,0,0,.74)),linear-gradient(0deg,#070a0e 0%,transparent 34%,rgba(0,0,0,.52) 100%)}.sig-hero-card{max-width:820px;padding:clamp(32px,4.8vw,72px);border-radius:0 32px 32px 0;background:linear-gradient(135deg,rgba(6,7,10,.88),rgba(18,20,25,.78));border:1px solid rgba(255,255,255,.08);border-left:4px solid var(--sig-gold);box-shadow:0 30px 90px rgba(0,0,0,.5);backdrop-filter:blur(18px)}.sig-hero .sig-title{font-size:clamp(42px,5.6vw,92px)}
/* Layouts */
.sig-feature{display:grid;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:clamp(26px,4vw,70px);align-items:center}.sig-feature.reverse{grid-template-columns:minmax(420px,1.1fr) minmax(0,.9fr)}.sig-feature.reverse .sig-copy-wrap{order:2}.sig-feature.reverse .sig-media{order:1}.sig-feature .sig-panel{height:auto}.sig-feature-contained{display:grid;gap:clamp(24px,3vw,42px)}.sig-feature-contained.has-image{grid-template-columns:minmax(0,.88fr) minmax(360px,.72fr);align-items:stretch}.sig-feature-contained.has-image .sig-media{min-height:100%;height:auto}.sig-contained-panel{max-width:1180px;margin:0 auto}.sig-contained-panel .sig-body{max-width:920px}
.sig-statement{min-height:auto;padding:clamp(82px,9vw,142px) 0;background:#05070a}.sig-statement:before{content:"";position:absolute;inset:0;background-image:var(--sig-bg-image);background-size:cover;background-position:center;opacity:.28;filter:grayscale(.15) contrast(1.1)}.sig-statement:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#05070a 0%,rgba(5,7,10,.86) 45%,rgba(5,7,10,.96) 100%)}.sig-statement .sig-panel{max-width:1040px;background:linear-gradient(135deg,rgba(8,10,14,.9),rgba(24,26,32,.92));backdrop-filter:blur(16px)}.sig-statement .sig-title{font-size:clamp(34px,4.3vw,70px)}
/* Cards / process / specs */
.sig-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px;margin-top:clamp(30px,4vw,44px)}.sig-card{min-height:190px;border-radius:26px;padding:28px;background:linear-gradient(145deg,rgba(28,31,38,.98),rgba(13,15,19,.98));border:1px solid rgba(255,255,255,.075);box-shadow:0 18px 54px rgba(0,0,0,.22);overflow:hidden}.sig-card strong{display:block;color:var(--sig-gold);font-size:13px;text-transform:uppercase;letter-spacing:.14em;line-height:1.38;margin-bottom:16px}.sig-card p{color:#dce1e9!important;font-size:clamp(16px,1.02vw,18px);line-height:1.48;margin:0!important;word-break:normal;overflow-wrap:anywhere}.sig-process{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:clamp(30px,4vw,44px)}.sig-step{min-height:230px;border-radius:24px;padding:28px;background:rgba(255,255,255,.035);border:1px solid var(--sig-line);display:flex;flex-direction:column}.sig-step span{color:var(--sig-gold);font-weight:850;letter-spacing:.06em;margin-bottom:22px}.sig-step p{margin:0!important;color:#d4d9e2!important;line-height:1.52}.sig-specs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 28px;margin-top:clamp(30px,4vw,44px)}.sig-spec{padding-top:18px;border-top:1px solid rgba(196,163,96,.45);color:#f2f4f7;font-size:clamp(15px,1vw,17px);line-height:1.52}.sig-spec b{display:block;color:var(--sig-gold);text-transform:uppercase;letter-spacing:.12em;font-size:13px;margin-bottom:8px}.sig-type-process .sig-panel,.sig-type-cards .sig-panel,.sig-type-specs .sig-panel{width:100%}.sig-inset-media{margin:clamp(28px,4vw,48px) 0 0;min-height:360px}.sig-inset-media img{max-height:560px}
/* Gallery */
.sig-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;margin-top:38px}.sig-gallery .sig-media{grid-column:span 4;min-height:280px}.sig-gallery .sig-media:nth-child(1),.sig-gallery .sig-media:nth-child(6){grid-column:span 7;min-height:420px}.sig-gallery .sig-media:nth-child(2),.sig-gallery .sig-media:nth-child(5){grid-column:span 5;min-height:420px}.sig-gallery .sig-media:nth-child(n+9){display:none}
/* CTA */
.sig-cta{text-align:center;background:radial-gradient(circle at center,rgba(196,163,96,.16),transparent 36%),#05070a}.sig-cta .sig-title,.sig-cta .sig-subtitle,.sig-cta .sig-body{margin-left:auto;margin-right:auto}.sig-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:36px}.sig-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);font-weight:850;text-transform:uppercase;letter-spacing:.08em;text-decoration:none!important}.sig-button.primary{background:#fff;color:#05070a;border-color:#fff}.sig-empty{padding:160px 24px;text-align:center}
/* Reveal animations */
.sig-reveal{opacity:0;transform:translateY(36px);filter:blur(6px);transition:opacity .9s cubic-bezier(.2,.8,.2,1),transform .9s cubic-bezier(.2,.8,.2,1),filter .9s cubic-bezier(.2,.8,.2,1)}.sig-reveal.is-visible{opacity:1;transform:none;filter:none}.sig-reveal-delay-1{transition-delay:.08s}.sig-reveal-delay-2{transition-delay:.16s}.sig-reveal-delay-3{transition-delay:.24s}.sig-card,.sig-step,.sig-spec,.sig-gallery .sig-media{transition:transform .35s ease,border-color .35s ease,box-shadow .35s ease}.sig-card:hover,.sig-step:hover,.sig-gallery .sig-media:hover{transform:translateY(-4px);border-color:rgba(196,163,96,.34);box-shadow:0 26px 74px rgba(0,0,0,.32)}
@media (prefers-reduced-motion:reduce){.sig-reveal{opacity:1;transform:none;filter:none;transition:none}.sig-card,.sig-step,.sig-spec,.sig-gallery .sig-media{transition:none}}
@media (max-width:1180px){.sig-feature,.sig-feature.reverse,.sig-feature-contained.has-image{grid-template-columns:1fr}.sig-feature.reverse .sig-copy-wrap,.sig-feature.reverse .sig-media{order:initial}.sig-process{grid-template-columns:repeat(2,minmax(0,1fr))}.sig-specs{grid-template-columns:repeat(2,minmax(0,1fr))}.sig-gallery .sig-media,.sig-gallery .sig-media:nth-child(1),.sig-gallery .sig-media:nth-child(2),.sig-gallery .sig-media:nth-child(5),.sig-gallery .sig-media:nth-child(6){grid-column:span 6;min-height:300px}}
@media (max-width:760px){.signature-page{padding-top:76px}.sig-container{width:min(100% - 26px,1480px)}.sig-section{padding:58px 0}.sig-title{font-size:clamp(31px,11vw,48px);letter-spacing:-.045em}.sig-subtitle{font-size:clamp(19px,6vw,27px)}.sig-body{font-size:16px;line-height:1.62}.sig-panel{border-radius:24px;padding:24px}.sig-media{border-radius:24px;min-height:260px}.sig-hero{min-height:calc(100vh - 76px);padding:82px 0}.sig-hero-card{border-radius:24px;border-left:1px solid rgba(255,255,255,.08);border-top:4px solid var(--sig-gold)}.sig-process,.sig-specs,.sig-card-grid{grid-template-columns:1fr}.sig-gallery{grid-template-columns:1fr}.sig-gallery .sig-media,.sig-gallery .sig-media:nth-child(n){grid-column:auto;min-height:250px}.sig-gallery .sig-media:nth-child(n+7){display:none}}


/* ==========================================================================
   TDA Signature v59 — editorial photo direction
   ========================================================================== */
.signature-page{
  --sig-photo-wash: radial-gradient(circle at 18% 18%, rgba(196,163,96,.10), transparent 28%), linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.10));
}
.sig-section{padding:clamp(92px,9vw,156px) 0}.sig-feature{position:relative;display:grid;grid-template-columns:minmax(500px,1.05fr) minmax(410px,.70fr);gap:0;align-items:center;min-height:clamp(620px,54vw,820px)}
.sig-feature.reverse{grid-template-columns:minmax(410px,.70fr) minmax(500px,1.05fr)}
.sig-copy-wrap{position:relative;z-index:3}.sig-feature:not(.reverse) .sig-copy-wrap{order:1;margin-right:clamp(-120px,-7vw,-56px)}.sig-feature:not(.reverse) .sig-visual-stack{order:2}.sig-feature.reverse .sig-visual-stack{order:1}.sig-feature.reverse .sig-copy-wrap{order:2;margin-left:clamp(-120px,-7vw,-56px)}
.sig-feature .sig-panel{max-width:680px;min-height:0;padding:clamp(38px,4.1vw,66px);border-radius:36px;background:linear-gradient(135deg,rgba(25,28,34,.88),rgba(9,11,15,.94));backdrop-filter:blur(20px);box-shadow:0 40px 110px rgba(0,0,0,.50), inset 0 1px 0 rgba(255,255,255,.06)}
.sig-feature .sig-title{font-size:clamp(36px,4.15vw,70px);line-height:1.01;letter-spacing:-.06em}.sig-feature .sig-subtitle{font-size:clamp(21px,1.75vw,30px);line-height:1.18}.sig-feature .sig-body{font-size:clamp(16px,1.02vw,19px);line-height:1.64;max-width:610px}.sig-feature .sig-body p{margin-bottom:14px!important}.sig-feature .sig-note{font-size:12px;letter-spacing:.16em}
.sig-visual-stack{position:relative;min-height:clamp(560px,52vw,780px);display:flex;align-items:center;isolation:isolate}.sig-main-visual{position:relative;width:100%;height:100%;min-height:inherit}.sig-main-visual .sig-media{width:100%;height:100%;min-height:inherit;border-radius:42px;border-color:rgba(255,255,255,.12);box-shadow:0 44px 120px rgba(0,0,0,.55);background:#0b0d10}.sig-main-visual .sig-media:before{content:"";position:absolute;inset:0;background:var(--sig-photo-wash);z-index:2;pointer-events:none}.sig-main-visual .sig-media img{height:100%;object-fit:cover;object-position:center;transform:scale(1.08);transition:transform 1.2s cubic-bezier(.2,.8,.2,1),filter .5s ease;filter:saturate(.92) contrast(1.06)}.sig-visual-stack:hover .sig-main-visual .sig-media img{transform:scale(1.13)}
.sig-detail-strip{position:absolute;left:clamp(22px,3vw,44px);right:clamp(22px,3vw,44px);bottom:clamp(-54px,-3vw,-30px);z-index:4;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.sig-detail-strip figure{height:clamp(96px,8vw,140px);margin:0;border-radius:22px;overflow:hidden;border:1px solid rgba(255,255,255,.13);background:#080a0d;box-shadow:0 20px 58px rgba(0,0,0,.45)}.sig-detail-strip img{width:100%;height:100%;object-fit:cover;transform:scale(1.05);filter:saturate(.9) contrast(1.05)}
.sig-type-split + .sig-type-split{padding-top:clamp(120px,11vw,180px)}.sig-type-cards .sig-inset-media,.sig-type-specs .sig-inset-media,.sig-type-process .sig-inset-media{margin:clamp(34px,4vw,58px) -4px -4px;min-height:clamp(430px,35vw,620px);border-radius:30px;overflow:hidden}.sig-inset-media .sig-media{height:100%;min-height:inherit}.sig-inset-media .sig-media img{height:100%;object-fit:cover;transform:scale(1.06)}
.sig-feature-contained{max-width:1240px;margin:0 auto}.sig-feature-contained .sig-panel{padding:clamp(38px,4vw,68px);border-radius:38px}.sig-feature-contained .sig-title{font-size:clamp(36px,4.5vw,76px)}
.sig-statement .sig-panel{max-width:1120px}.sig-statement .sig-title{font-size:clamp(38px,5vw,78px)}
@media (min-width:1181px){.sig-feature:not(.reverse) .sig-panel{border-right:1px solid rgba(196,163,96,.25)}.sig-feature.reverse .sig-panel{border-left:1px solid rgba(196,163,96,.25)}.sig-feature:not(.reverse) .sig-visual-stack{padding-left:clamp(54px,7vw,120px)}.sig-feature.reverse .sig-visual-stack{padding-right:clamp(54px,7vw,120px)}}
@media (max-width:1180px){.sig-feature,.sig-feature.reverse{grid-template-columns:1fr;gap:28px;min-height:0}.sig-feature:not(.reverse) .sig-copy-wrap,.sig-feature.reverse .sig-copy-wrap{margin:0;order:2}.sig-feature:not(.reverse) .sig-visual-stack,.sig-feature.reverse .sig-visual-stack{order:1}.sig-feature .sig-panel{max-width:none}.sig-visual-stack{min-height:clamp(420px,62vw,640px)}.sig-detail-strip{position:relative;left:auto;right:auto;bottom:auto;margin-top:14px}.sig-section{padding:clamp(70px,8vw,110px) 0}}
@media (max-width:760px){.sig-feature .sig-title{font-size:clamp(31px,10vw,48px)}.sig-visual-stack{min-height:330px}.sig-detail-strip{grid-template-columns:1fr 1fr}.sig-detail-strip figure:nth-child(3){display:none}.sig-detail-strip figure{height:110px}.sig-feature .sig-panel{border-radius:26px;padding:25px}.sig-main-visual .sig-media{border-radius:28px}.sig-type-cards .sig-inset-media,.sig-type-specs .sig-inset-media,.sig-type-process .sig-inset-media{min-height:280px;border-radius:24px}}



/* ==========================================================================
   TDA Signature v60 — corrected composition, no empty photo cards
   ========================================================================== */
.signature-page{
  --sig-page-max: 1480px;
  --sig-panel-max: 640px;
}
.signature-page .sig-container{
  width:min(var(--sig-page-max), calc(100% - 72px));
}
.sig-section{
  padding:clamp(72px,7vw,128px) 0;
  overflow:visible;
}
.sig-feature{
  grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);
  gap:clamp(34px,5vw,86px);
  min-height:0;
  align-items:center;
}
.sig-feature.reverse{
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
}
.sig-feature:not(.reverse) .sig-copy-wrap,
.sig-feature.reverse .sig-copy-wrap{
  margin:0;
}
.sig-feature .sig-panel{
  max-width:var(--sig-panel-max);
  width:100%;
  min-height:auto;
  padding:clamp(34px,3.8vw,58px);
  border-radius:34px;
}
.sig-feature .sig-title{
  max-width:11ch;
  font-size:clamp(42px,4.35vw,72px);
  line-height:.96;
  letter-spacing:-.075em;
}
.sig-feature .sig-subtitle{
  max-width:520px;
  font-size:clamp(22px,1.55vw,30px);
  line-height:1.22;
}
.sig-feature .sig-body{
  max-width:560px;
  font-size:clamp(16px,.98vw,18px);
  line-height:1.66;
}
.sig-feature .sig-note{
  max-width:560px;
}

/* Visual block becomes a real image composition, not a tall empty frame */
.sig-visual-stack{
  min-height:auto;
  display:grid;
  align-items:center;
  gap:18px;
  padding:0;
}
.sig-main-visual{
  width:100%;
  height:auto;
  min-height:0;
}
.sig-main-visual .sig-media{
  min-height:0;
  width:100%;
  height:auto;
  aspect-ratio:16/10;
  border-radius:34px;
  background:linear-gradient(135deg,#f1f2f4,#dfe1e5);
}
.sig-main-visual .sig-media img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:none;
  filter:saturate(.96) contrast(1.04);
}
.sig-visual-stack:hover .sig-main-visual .sig-media img{
  transform:scale(1.035);
}

/* For product-on-white photos: prevent tiny object on top with huge dark empty bottom */
.sig-main-visual .sig-media.cinematic{
  background:#eef0f2;
}
.sig-main-visual .sig-media.cinematic img{
  object-fit:cover;
}

/* Detail thumbnails are now a neat film strip under/over the image, never floating outside page */
.sig-detail-strip{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  margin:0 auto;
  width:min(92%, 520px);
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  z-index:4;
}
.sig-detail-strip figure{
  height:clamp(86px,7vw,118px);
  border-radius:18px;
  background:#11151b;
  border:1px solid rgba(255,255,255,.16);
  box-shadow:0 18px 44px rgba(0,0,0,.38);
}
.sig-detail-strip img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:none;
}

/* Full-width image blocks are contained and not over-dominant */
.sig-gallery{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
}
.sig-gallery .sig-media{
  min-height:0;
  height:auto;
  aspect-ratio:16/9;
  border-radius:28px;
}
.sig-gallery .sig-media img{
  width:100%;
  height:100%;
  object-fit:cover;
}

/* Cards/specs/process keep images inside the same premium block */
.sig-type-cards .sig-inset-media,
.sig-type-specs .sig-inset-media,
.sig-type-process .sig-inset-media{
  margin:clamp(30px,3vw,48px) 0 0;
  min-height:0;
  aspect-ratio:16/7;
  border-radius:28px;
}
.sig-inset-media .sig-media{
  min-height:0;
  height:100%;
  aspect-ratio:inherit;
}
.sig-inset-media .sig-media img{
  height:100%;
  object-fit:cover;
  transform:none;
}

/* More premium rhythm: alternate sections have light visual offset but same system */
.sig-type-split:nth-of-type(even) .sig-main-visual .sig-media{
  aspect-ratio:16/9;
}
.sig-type-split:nth-of-type(odd) .sig-main-visual .sig-media{
  aspect-ratio:4/3;
}
.sig-type-split + .sig-type-split{
  padding-top:clamp(84px,8vw,132px);
}

/* CTA button label can be longer */
.sig-buttons{
  flex-wrap:wrap;
}
.sig-button{
  min-width:min(100%, 260px);
  justify-content:center;
}

/* Avoid text looking like giant squeezed poster on narrower desktop */
@media (max-width:1320px){
  .sig-feature .sig-title{font-size:clamp(36px,5.4vw,62px)}
  .sig-feature{gap:42px}
}
@media (max-width:1180px){
  .signature-page .sig-container{width:min(100% - 42px, 980px)}
  .sig-feature,
  .sig-feature.reverse{
    grid-template-columns:1fr;
    gap:26px;
  }
  .sig-feature:not(.reverse) .sig-copy-wrap,
  .sig-feature.reverse .sig-copy-wrap{
    order:1;
  }
  .sig-feature:not(.reverse) .sig-visual-stack,
  .sig-feature.reverse .sig-visual-stack{
    order:2;
  }
  .sig-feature .sig-panel{
    max-width:none;
  }
  .sig-feature .sig-title{
    max-width:12ch;
  }
  .sig-main-visual .sig-media,
  .sig-type-split:nth-of-type(even) .sig-main-visual .sig-media,
  .sig-type-split:nth-of-type(odd) .sig-main-visual .sig-media{
    aspect-ratio:16/9;
  }
}
@media (max-width:760px){
  .signature-page .sig-container{width:min(100% - 28px, 680px)}
  .sig-section{padding:58px 0}
  .sig-feature .sig-panel{padding:26px;border-radius:24px}
  .sig-feature .sig-title{
    max-width:11.5ch;
    font-size:clamp(34px,12vw,48px);
  }
  .sig-main-visual .sig-media{border-radius:24px;aspect-ratio:4/3}
  .sig-detail-strip{width:100%;grid-template-columns:repeat(3,1fr);gap:8px}
  .sig-detail-strip figure{height:82px;border-radius:14px}
  .sig-gallery{grid-template-columns:1fr}
  .sig-type-cards .sig-inset-media,.sig-type-specs .sig-inset-media,.sig-type-process .sig-inset-media{aspect-ratio:4/3}
}

/* reduce animations if user/browser asks for it */
@media (prefers-reduced-motion: reduce){
  .sig-reveal{opacity:1!important;transform:none!important;transition:none!important}
  .sig-main-visual .sig-media img{transition:none!important}
}



/* ==========================================================================
   TDA Signature v61 — final gallery carousel
   ========================================================================== */
.sig-gallery-section{
  max-width:1280px;
}
.sig-gallery-section .sig-panel{
  padding:clamp(34px,4vw,62px);
  background:
    radial-gradient(circle at 10% 0%, rgba(196,163,96,.12), transparent 30%),
    linear-gradient(145deg, rgba(25,28,34,.90), rgba(8,10,13,.96));
}
.sig-gallery-section .sig-copy{
  display:grid;
  gap:28px;
}
.sig-gallery-section .sig-copy > .sig-overline,
.sig-gallery-section .sig-copy > .sig-title,
.sig-gallery-section .sig-copy > .sig-subtitle,
.sig-gallery-section .sig-copy > .sig-body,
.sig-gallery-section .sig-copy > .sig-note{
  max-width:860px;
}
.sig-gallery-section .sig-title{
  max-width:900px;
  font-size:clamp(36px,4.6vw,76px);
}
.sig-carousel{
  position:relative;
  width:100%;
  margin-top:clamp(12px,2vw,24px);
  border-radius:34px;
  overflow:hidden;
  background:#07090c;
  border:1px solid rgba(255,255,255,.11);
  box-shadow:0 34px 110px rgba(0,0,0,.50);
}
.sig-carousel-viewport{
  position:relative;
  overflow:hidden;
  outline:none;
}
.sig-carousel-track{
  display:flex;
  transition:transform .65s cubic-bezier(.22,.8,.22,1);
  will-change:transform;
}
.sig-carousel-slide{
  flex:0 0 100%;
  margin:0;
  min-width:0;
  height:clamp(420px,52vw,760px);
  background:linear-gradient(135deg,#f1f2f4,#d9dde3);
  overflow:hidden;
}
.sig-carousel-slide img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transform:scale(1.015);
  filter:saturate(.96) contrast(1.04);
}
.sig-carousel-arrow{
  position:absolute;
  top:50%;
  z-index:6;
  width:54px;
  height:54px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.20);
  background:rgba(8,10,13,.62);
  color:#fff;
  font-size:38px;
  line-height:1;
  display:grid;
  place-items:center;
  cursor:pointer;
  transform:translateY(-50%);
  backdrop-filter:blur(12px);
  transition:background .22s ease, transform .22s ease, border-color .22s ease;
}
.sig-carousel-arrow:hover{
  background:rgba(196,163,96,.22);
  border-color:rgba(196,163,96,.42);
}
.sig-carousel-arrow.prev{left:18px}
.sig-carousel-arrow.next{right:18px}
.sig-carousel-footer{
  position:absolute;
  left:18px;
  right:18px;
  bottom:18px;
  z-index:7;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:14px 16px;
  border-radius:20px;
  background:linear-gradient(135deg,rgba(7,9,12,.78),rgba(17,20,26,.56));
  border:1px solid rgba(255,255,255,.12);
  backdrop-filter:blur(14px);
}
.sig-carousel-counter{
  display:flex;
  align-items:center;
  gap:8px;
  color:#f5f6f8;
  font-size:13px;
  font-weight:800;
  letter-spacing:.18em;
}
.sig-carousel-counter .current{
  color:var(--sig-gold);
}
.sig-carousel-dots{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
.sig-carousel-dots button{
  width:28px;
  height:4px;
  border:0;
  border-radius:999px;
  background:rgba(255,255,255,.28);
  cursor:pointer;
  padding:0;
  transition:background .2s ease, width .2s ease;
}
.sig-carousel-dots button.is-active{
  width:46px;
  background:var(--sig-gold);
}
@media(max-width:760px){
  .sig-carousel{border-radius:24px}
  .sig-carousel-slide{height:clamp(280px,78vw,440px)}
  .sig-carousel-arrow{width:44px;height:44px;font-size:30px}
  .sig-carousel-arrow.prev{left:10px}
  .sig-carousel-arrow.next{right:10px}
  .sig-carousel-footer{
    position:relative;
    left:auto;
    right:auto;
    bottom:auto;
    border-radius:0;
    border-left:0;
    border-right:0;
    border-bottom:0;
  }
  .sig-carousel-dots button{width:20px}
  .sig-carousel-dots button.is-active{width:34px}
}



/* ========================================================================== 
   TDA Signature v62 — forced gallery carousel / legacy list protection
   ========================================================================== */
.sig-gallery-section{max-width:min(1320px,100%)}
.sig-gallery-section .sig-panel{overflow:hidden;padding:clamp(34px,4vw,62px);background:radial-gradient(circle at 10% 0%,rgba(196,163,96,.12),transparent 30%),linear-gradient(145deg,rgba(25,28,34,.90),rgba(8,10,13,.96))}
.sig-gallery-intro{max-width:920px;margin-bottom:clamp(22px,3vw,42px)}
.sig-gallery-intro .sig-title{max-width:860px}
.sig-gallery-carousel{margin-top:0}
.sig-gallery-carousel .sig-carousel-slide{height:clamp(420px,50vw,720px)}
.sig-gallery-carousel .sig-carousel-slide img{object-fit:cover}
/* Fallback: old saved .sig-gallery no longer becomes a long vertical list */
.signature-page .sig-gallery:not(.sig-carousel-track){display:flex!important;grid-template-columns:none!important;gap:0!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;border-radius:32px;border:1px solid rgba(255,255,255,.11);background:#07090c;box-shadow:0 34px 110px rgba(0,0,0,.50);margin-top:clamp(22px,3vw,42px)}
.signature-page .sig-gallery:not(.sig-carousel-track)::-webkit-scrollbar{height:8px}
.signature-page .sig-gallery:not(.sig-carousel-track)::-webkit-scrollbar-track{background:rgba(255,255,255,.08)}
.signature-page .sig-gallery:not(.sig-carousel-track)::-webkit-scrollbar-thumb{background:rgba(196,163,96,.65);border-radius:999px}
.signature-page .sig-gallery:not(.sig-carousel-track) .sig-media{flex:0 0 100%!important;width:100%!important;height:clamp(420px,50vw,720px)!important;aspect-ratio:auto!important;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;scroll-snap-align:start}
.signature-page .sig-gallery:not(.sig-carousel-track) .sig-media img{width:100%!important;height:100%!important;object-fit:cover!important;display:block}
@media(max-width:760px){.sig-gallery-carousel .sig-carousel-slide,.signature-page .sig-gallery:not(.sig-carousel-track) .sig-media{height:clamp(280px,78vw,440px)!important}}



/* ==========================================================================
   TDA Signature v63 — carousel controls click fix
   ========================================================================== */
.sig-carousel{
  position:relative;
}
.sig-carousel-viewport,
.sig-carousel-track,
.sig-carousel-slide,
.sig-carousel-slide img{
  pointer-events:auto;
}
.sig-carousel-arrow,
.sig-carousel-dots button{
  pointer-events:auto!important;
  touch-action:manipulation;
  -webkit-tap-highlight-color:transparent;
  user-select:none;
}
.sig-carousel-arrow{
  z-index:30!important;
}
.sig-carousel-footer{
  z-index:29!important;
  pointer-events:auto!important;
}
.sig-carousel.is-dragging{
  cursor:grabbing;
}
.sig-carousel.is-dragging .sig-carousel-track{
  transition:none;
}


/* ==========================================================================
   TDA Signature v64 — cinematic intro animation
   ========================================================================== */
.sig-intro{
  position:fixed;
  inset:0;
  z-index:999999;
  display:none;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  background:#030507;
  color:#fff;
  pointer-events:auto;
  opacity:0;
  transform:translateZ(0);
}
.sig-intro.is-active{
  display:flex;
  animation:sigIntroIn .7s ease forwards;
}
.sig-intro.is-leaving{
  animation:sigIntroOut 1.35s cubic-bezier(.2,.8,.2,1) forwards;
}
.sig-intro-gradient{
  position:absolute;
  inset:-10%;
  background:
    radial-gradient(circle at 72% 46%, rgba(255,255,255,.14), transparent 24%),
    radial-gradient(circle at 22% 24%, rgba(196,163,96,.16), transparent 26%),
    linear-gradient(135deg,#020305 0%,#090c11 42%,#000 100%);
  transform:scale(1.05);
}
.sig-intro-light{
  position:absolute;
  inset:-40% -20%;
  background:linear-gradient(105deg,transparent 0%,transparent 38%,rgba(255,255,255,.16) 47%,rgba(196,163,96,.20) 50%,transparent 60%,transparent 100%);
  transform:translateX(-44%) rotate(-7deg);
  opacity:0;
  mix-blend-mode:screen;
}
.sig-intro.is-running .sig-intro-light{
  animation:sigIntroLight 2.8s cubic-bezier(.2,.8,.2,1) 1.7s forwards;
}
.sig-intro-product-wrap{
  position:absolute;
  inset:auto auto 7vh 32vw;
  width:min(72vw,1280px);
  height:min(64vh,780px);
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  transform:translate3d(5vw,3vh,0) scale(1.04);
  filter:blur(12px) saturate(.8);
}
.sig-intro-product-wrap picture{display:block;width:100%;height:100%}
.sig-intro-product{
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center;
  display:block;
  filter:drop-shadow(0 34px 80px rgba(0,0,0,.62));
}
.sig-intro-logo{
  position:absolute;
  left:clamp(28px,6vw,110px);
  top:50%;
  width:min(48vw,760px);
  max-height:42vh;
  object-fit:contain;
  object-position:left center;
  opacity:0;
  transform:translate3d(-22px,-50%,0) scale(.98);
  filter:drop-shadow(0 0 22px rgba(255,255,255,.22));
}
.sig-intro.is-running .sig-intro-logo{
  animation:sigIntroLogo 2.1s cubic-bezier(.2,.8,.2,1) .25s forwards;
}
.sig-intro.is-running .sig-intro-product-wrap{
  animation:sigIntroProduct 3.5s cubic-bezier(.18,.82,.22,1) 1.05s forwards;
}
.sig-intro-progress{
  position:absolute;
  left:clamp(28px,6vw,110px);
  right:clamp(28px,6vw,110px);
  bottom:clamp(28px,5vw,72px);
  height:1px;
  background:rgba(255,255,255,.12);
  overflow:hidden;
  opacity:.88;
}
.sig-intro-progress span{
  display:block;
  width:100%;
  height:100%;
  transform-origin:left center;
  transform:scaleX(0);
  background:linear-gradient(90deg,rgba(196,163,96,.2),rgba(255,255,255,.85),rgba(196,163,96,.45));
}
.sig-intro.is-running .sig-intro-progress span{
  animation:sigIntroProgress var(--sig-intro-duration,5.6s) linear forwards;
}
.sig-intro-skip{
  position:absolute;
  right:clamp(24px,4vw,72px);
  top:clamp(20px,3vw,48px);
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.055);
  color:rgba(255,255,255,.76);
  border-radius:999px;
  padding:11px 18px;
  font:700 11px/1 var(--sig-sans,inherit);
  letter-spacing:.12em;
  text-transform:uppercase;
  cursor:pointer;
  backdrop-filter:blur(12px);
  transition:background .25s ease,color .25s ease,border-color .25s ease;
}
.sig-intro-skip:hover{background:rgba(196,163,96,.14);border-color:rgba(196,163,96,.42);color:#fff}
html.signature-intro-lock,html.signature-intro-lock body{overflow:hidden!important}
html.signature-intro-lock .signature-page > .sig-section:not(.sig-intro-placeholder){
  opacity:.001;
  transform:translateY(22px) scale(.994);
  filter:blur(10px);
}
html.signature-intro-unveiling .signature-page > .sig-section:not(.sig-intro-placeholder),
html.signature-intro-done .signature-page > .sig-section:not(.sig-intro-placeholder){
  opacity:1;
  transform:none;
  filter:none;
  transition:opacity 1.15s cubic-bezier(.2,.8,.2,1), transform 1.15s cubic-bezier(.2,.8,.2,1), filter 1.15s ease;
}
@keyframes sigIntroIn{from{opacity:0}to{opacity:1}}
@keyframes sigIntroOut{0%{opacity:1;filter:blur(0)}60%{opacity:.42;filter:blur(3px)}100%{opacity:0;filter:blur(8px);visibility:hidden}}
@keyframes sigIntroLogo{0%{opacity:0;transform:translate3d(-28px,-50%,0) scale(.965);filter:blur(8px) drop-shadow(0 0 0 rgba(255,255,255,0))}42%{opacity:1;filter:blur(0) drop-shadow(0 0 18px rgba(255,255,255,.18))}100%{opacity:.92;transform:translate3d(0,-50%,0) scale(1)}}
@keyframes sigIntroProduct{0%{opacity:0;transform:translate3d(6vw,3vh,0) scale(1.04);filter:blur(16px) saturate(.78)}38%{opacity:1;filter:blur(0) saturate(.95)}100%{opacity:1;transform:translate3d(0,0,0) scale(1);filter:blur(0) saturate(.98)}}
@keyframes sigIntroLight{0%{opacity:0;transform:translateX(-52%) rotate(-7deg)}28%{opacity:1}100%{opacity:0;transform:translateX(54%) rotate(-7deg)}}
@keyframes sigIntroProgress{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:820px){
  .sig-intro-logo{left:50%;top:28%;width:min(82vw,520px);max-height:28vh;transform:translate3d(-50%,-50%,0) scale(.98);object-position:center}
  .sig-intro.is-running .sig-intro-logo{animation:sigIntroLogoMobile 1.9s cubic-bezier(.2,.8,.2,1) .2s forwards}
  .sig-intro-product-wrap{left:50%;bottom:10vh;width:110vw;height:55vh;transform:translate3d(-50%,5vh,0) scale(1.06)}
  .sig-intro-skip{top:18px;right:18px}
}
@keyframes sigIntroLogoMobile{0%{opacity:0;transform:translate3d(-50%,-56%,0) scale(.96);filter:blur(8px)}48%{opacity:1;filter:blur(0)}100%{opacity:.92;transform:translate3d(-50%,-50%,0) scale(1)}}
@media(prefers-reduced-motion:reduce){
  .sig-intro,.sig-intro *{animation-duration:.01ms!important;transition:none!important}
}

.tda-signature-intro-admin{background:#fff;border:1px solid #dbe2ea;border-radius:20px;margin:18px 0 22px;padding:18px;box-shadow:0 12px 36px rgba(15,23,42,.06)}
.tda-signature-intro-admin h2{margin:.2em 0 .35em}.tda-signature-intro-admin p{max-width:760px;color:#64748b}.tda-signature-intro-grid{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:14px;margin-top:16px}.tda-signature-intro-grid label{display:flex;flex-direction:column;gap:7px;font-weight:800}.tda-signature-intro-grid input,.tda-signature-intro-grid select{width:100%}.tda-signature-intro-grid small{color:#64748b;font-weight:500}.tda-signature-intro-grid .tda-intro-check{justify-content:center;align-items:flex-start;flex-direction:row;font-weight:700;padding-top:28px}.tda-signature-intro-grid .button{width:max-content}@media(max-width:900px){.tda-signature-intro-grid{grid-template-columns:1fr}.tda-signature-intro-grid .tda-intro-check{padding-top:0;justify-content:flex-start}}
