/* ============================================================
   Den-SHOW Technology Page / v0.9.1
   Page Philosophy: Technology for Possibility.
   Technology HERO uses fixed image + subtle blue atmospheric overlay. No HERO motion.
   ============================================================ */

body.denshow-technology-page{
  background:#f7f7f4;
}

/* Technology HERO: business-page fixed-image hierarchy. TOP alone uses HERO v2 motion. */
.ds-page--technology .ds-business-hero--technology{
  min-height:clamp(520px,72vh,780px) !important;
  padding-top:clamp(128px,12vw,170px) !important;
  padding-bottom:clamp(64px,7vw,108px) !important;
  background:#06111f !important;
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__image{
  z-index:0;
  transform:translateZ(0);
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__image img{
  object-position:center center;
  filter:saturate(.72) contrast(1.08) brightness(.58) !important;
  transform:scale(1.055) !important;
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__overlay{
  z-index:1;
  background:
    radial-gradient(circle at 74% 32%, rgba(82,170,255,.24), transparent 38%),
    radial-gradient(circle at 18% 70%, rgba(112,210,255,.12), transparent 34%),
    linear-gradient(90deg, rgba(3,8,18,.90), rgba(4,13,26,.58) 48%, rgba(3,8,18,.80)),
    linear-gradient(180deg, rgba(3,8,18,.30), rgba(3,8,18,.88)) !important;
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__content{
  max-width:980px;
}
.ds-page--technology .ds-business-hero__category{
  margin:0 0 clamp(18px,2vw,28px);
  font-family:var(--ds-serif, 'Cormorant Garamond', serif);
  font-size:clamp(52px,7.8vw,118px);
  line-height:.9;
  letter-spacing:-.055em;
  color:rgba(255,255,255,.94);
  text-shadow:0 24px 78px rgba(0,0,0,.55);
}
.ds-page--technology .ds-business-hero--technology .ds-kicker{
  color:rgba(222,242,255,.78);
  letter-spacing:.42em;
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__title{
  font-size:clamp(42px,5.8vw,88px);
  color:#fffdf5;
  text-shadow:0 24px 78px rgba(0,0,0,.58);
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__lead{
  color:rgba(236,247,255,.88);
  max-width:760px;
}
.ds-page--technology .ds-business-hero--technology::after{
  content:"Technology";
  position:absolute;
  right:max(24px,5vw);
  bottom:clamp(18px,4vw,54px);
  z-index:1;
  pointer-events:none;
  font-family:var(--ds-serif, 'Cormorant Garamond', serif);
  font-size:clamp(58px,12vw,190px);
  line-height:.8;
  letter-spacing:-.08em;
  color:rgba(255,255,255,.045);
  white-space:nowrap;
}

/* Technology common sections */
.ds-page--technology .ds-business-section{
  position:relative;
  overflow:hidden;
  isolation:isolate;
}
.ds-page--technology .ds-section-watermark{
  color:rgba(10,20,36,.045);
  letter-spacing:-.06em;
}
.ds-technology-story .ds-business-copy p{
  font-size:clamp(16px,1.35vw,19px);
  line-height:2.15;
}
.ds-technology-values{background:#fff;}
.ds-technology-value-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
  margin-top:56px;
}
.ds-technology-card-en{
  margin:0 0 12px;
  font-family:var(--ds-serif, 'Cormorant Garamond', serif);
  font-size:clamp(28px,3vw,44px);
  line-height:1;
  color:#101417;
  opacity:.86;
}
.ds-technology-value-grid .ds-service-card{
  min-height:300px;
}

.ds-technology-message{
  position:relative;
  min-height:520px;
  overflow:hidden;
  isolation:isolate;
  display:flex;
  align-items:center;
  background:
    radial-gradient(circle at 75% 30%, rgba(68,154,255,.12), transparent 34%),
    linear-gradient(135deg,#05070d 0%,#0b111b 48%,#030409 100%);
}
.ds-technology-message__grid{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.22;
  background-image:
    linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);
  background-size:72px 72px;
  mask-image:radial-gradient(circle at center, #000, transparent 70%);
}
.ds-section-light-trails--technology{
  position:absolute;
  inset:0;
  z-index:1;
  overflow:hidden;
  pointer-events:none;
  mix-blend-mode:screen;
}
.ds-section-light-trails--technology span{
  position:absolute;
  left:-50vw;
  height:1px;
  border-radius:999px;
  background:linear-gradient(90deg, transparent, rgba(120,205,255,.18), rgba(235,250,255,.78), rgba(120,205,255,.16), transparent);
  box-shadow:0 0 18px rgba(82,170,255,.28);
  animation:ds-tech-section-trail 12s linear infinite;
}
.ds-section-light-trails--technology span:nth-child(1){top:28%;width:62vw;animation-delay:-8s;transform:rotate(3deg);}
.ds-section-light-trails--technology span:nth-child(2){top:48%;width:76vw;animation-delay:-3s;transform:rotate(-4deg);}
.ds-section-light-trails--technology span:nth-child(3){top:66%;width:54vw;animation-delay:-6s;transform:rotate(5deg);}

.ds-technology-message__content{
  position:relative;
  z-index:2;
  text-align:center;
}
.ds-technology-message__content p{
  margin:0;
  font-family:var(--ds-serif, 'Noto Serif JP', serif);
  font-size:clamp(36px,5.2vw,86px);
  line-height:1.35;
  letter-spacing:-.07em;
  color:#fffdf5;
  text-shadow:0 24px 72px rgba(0,0,0,.7);
}

.ds-technology-solutions{background:#f7f7f4;}
.ds-technology-solution-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin-top:54px;
}
.ds-technology-solution-card{
  position:relative;
  min-height:250px;
  padding:34px 30px;
  border:1px solid rgba(10,18,28,.09);
  border-radius:26px;
  background:rgba(255,255,255,.78);
  box-shadow:0 20px 60px rgba(0,0,0,.045);
  overflow:hidden;
}
.ds-technology-solution-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:1px;
  background:linear-gradient(90deg, transparent, rgba(38,56,78,.22), transparent);
}
.ds-technology-solution-card span{
  display:block;
  margin-bottom:28px;
  font-family:var(--ds-sans, Inter, sans-serif);
  font-size:12px;
  font-weight:800;
  letter-spacing:.28em;
  color:rgba(12,20,32,.45);
}
.ds-technology-solution-card h3{
  margin:0 0 14px;
  font-size:clamp(20px,1.7vw,25px);
  letter-spacing:-.04em;
}
.ds-technology-solution-card p{
  margin:0;
  line-height:1.9;
  color:rgba(20,24,28,.72);
}
.ds-technology-future{
  padding-top:150px;
  padding-bottom:150px;
  background:#fff;
}
.ds-technology-cta{
  padding-top:160px;
}

@media (max-width:1100px){
  .ds-technology-value-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .ds-technology-solution-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:760px){
  .ds-page--technology .ds-business-hero--technology{min-height:560px !important;padding-top:128px !important;padding-bottom:58px !important;}
  .ds-page--technology .ds-business-hero__category{font-size:clamp(46px,16vw,78px);margin-bottom:18px;}
  .ds-page--technology .ds-business-hero--technology::after{right:18px;bottom:22px;font-size:clamp(54px,20vw,96px);opacity:.72;}
  .ds-technology-value-grid,
  .ds-technology-solution-grid{grid-template-columns:1fr;gap:16px;margin-top:38px;}
  .ds-technology-value-grid .ds-service-card{min-height:auto;}
  .ds-technology-message{min-height:390px;}
  .ds-technology-message__content p{font-size:clamp(34px,10vw,50px);}
  .ds-technology-future{padding-top:96px;padding-bottom:96px;}
  .ds-technology-cta{padding-top:110px;}
}

/* v0.9.2 Technology Polish -------------------------------------------------
   Commerce-aligned HERO, refined typography, section rhythm, and CTA divider.
*/
.ds-page--technology .ds-business-hero--technology .ds-business-hero__content{
  max-width:min(1120px, calc(100% - 48px));
}
.ds-page--technology .ds-business-hero--technology .ds-kicker{
  margin-bottom:clamp(22px,2.4vw,34px);
  color:rgba(232,246,255,.88);
}
.ds-page--technology .ds-business-hero--technology .ds-kicker span{
  letter-spacing:.08em;
  opacity:.82;
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__category{
  display:none !important;
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__title{
  max-width:880px;
  font-size:clamp(44px,5.8vw,86px);
  line-height:1.08;
  letter-spacing:-.07em;
}
.ds-page--technology .ds-business-hero--technology .ds-business-hero__lead{
  max-width:820px;
  margin-top:clamp(24px,2.6vw,36px);
  font-size:clamp(15px,1.35vw,18px);
  line-height:2;
}
.ds-page--technology .ds-technology-card-en{
  font-size:clamp(22px,2.2vw,32px);
  letter-spacing:-.035em;
}
.ds-page--technology .ds-technology-values .ds-business-section-head h2{
  max-width:980px;
  margin-left:auto;
  margin-right:auto;
}
.ds-page--technology .ds-technology-message__content p{
  font-size:clamp(34px,4.7vw,76px);
  line-height:1.42;
}
.ds-technology-divider{
  width:min(1120px, calc(100% - 48px));
  height:1px;
  margin:0 auto;
  background:linear-gradient(90deg, transparent, rgba(15,24,36,.16), transparent);
}
.ds-page--technology .ds-technology-cta{
  padding-top:clamp(104px,10vw,150px);
}

@media (max-width:760px){
  .ds-page--technology .ds-business-hero--technology .ds-business-hero__content{
    max-width:calc(100% - 40px);
  }
  .ds-page--technology .ds-business-hero--technology .ds-business-hero__title{
    font-size:clamp(38px,11vw,56px);
  }
  .ds-page--technology .ds-business-hero--technology .ds-business-hero__lead{
    line-height:1.9;
  }
  .ds-page--technology .ds-technology-card-en{
    font-size:clamp(24px,9vw,34px);
  }
  .ds-technology-divider{
    width:calc(100% - 40px);
  }
}
