/* Commercial presentation refinement, 2026-10-11.
 * Trust comes from readable existing content, clear navigation and considered
 * photography. Never add business claims, qualifications or customer data.
 * Loaded for the six validated designs only; O-LAND Original is excluded.
 * Modern Portal hero/search is owned by PR118 and intentionally untouched.
 */
html[data-site-design] main#main :is(#about,#contact) :is(p,.about-copy) {
  text-wrap:pretty;
  overflow-wrap:break-word;
}
html[data-site-design] main#main #about .about-copy h3 {
  font-size:clamp(25px,2.6vw,38px);
  line-height:1.65;
  text-wrap:pretty;
}
html[data-site-design] main#main #about .about-copy > p {
  max-width:42em;
  font-size:16px;
  line-height:1.95;
}
html[data-site-design] .site-header .menu-toggle {
  background:transparent;
  color:inherit;
}
html[data-site-design] .site-header .menu-toggle span {background:currentColor}
html[data-site-design] .site-header .menu-toggle small {color:inherit}
html[data-site-design] :is(.menu-toggle,.page-inline-links a,.company-table a):focus-visible {
  outline:3px solid var(--action);
  outline-offset:4px;
}
html[data-site-design] .subpage .page-lead {
  max-width:42em;
  font-size:16px;
  line-height:1.9;
  text-wrap:pretty;
}
html[data-site-design] .subpage .page-inline-links {
  gap:12px 24px;
}
html[data-site-design] .subpage .page-inline-links a {
  min-height:44px;
  display:inline-flex;
  align-items:center;
  font-size:14px;
  line-height:1.6;
}
html[data-site-design] .subpage :is(.company-table,.company-facts,.page-prose) {
  font-size:16px;
  line-height:1.9;
}
html[data-site-design] .subpage :is(.form-field input,.form-field select,.form-field textarea) {
  font-size:16px;
}
/* 01 / useful property information and clear routes to the company. */
html[data-site-design="modern-portal"] main#main #about .about-copy h3 {
  font-family:var(--font-sans,system-ui);
  font-weight:700;
}
html[data-site-design="modern-portal"] .subpage .page-inline-links a {
  border-bottom-width:2px;
}
/* 02 / a quieter title, a deliberate edge between text and photograph. */
html[data-site-design="minimal-corporate"] main#main .hero h1 {
  font-size:clamp(34px,3.2vw,48px);
  line-height:1.55;
  font-weight:500;
  letter-spacing:.005em;
}
html[data-site-design="minimal-corporate"] main#main .hero .hero-copy {
  font-size:16px;
  line-height:1.95;
}
html[data-site-design="minimal-corporate"] .subpage .editorial-hero h1 {
  font-size:clamp(32px,3.2vw,48px);
  letter-spacing:.015em;
}
/* 03 / warm paper and a readable Japanese editorial column. */
html[data-site-design="editorial-warm"] main#main .hero h1 {
  font-size:clamp(34px,3.1vw,46px);
  line-height:1.58;
  letter-spacing:.015em;
}
html[data-site-design="editorial-warm"] main#main .hero .hero-copy {
  font-size:16px;
  line-height:1.95;
}
html[data-site-design="editorial-warm"] main#main .hero .nayuta-template-mosaic {
  transform:translate(6%,5%);
  box-shadow:0 8px 24px #2c1f1926;
}
html[data-site-design="editorial-warm"] .subpage .editorial-hero h1 {
  font-size:clamp(32px,3.5vw,50px);
  line-height:1.6;
}
/* 04 / keep the photographic gallery, give its text a dependable surface. */
html[data-site-design="lifestyle-gallery"] main#main .hero > .hero-copy-block {
  background:linear-gradient(180deg,rgba(12,37,46,.92),rgba(12,37,46,.96))!important;
  padding:40px clamp(28px,4.5vw,68px)!important;
}
html[data-site-design="lifestyle-gallery"] main#main .hero h1 {
  font-size:clamp(36px,3.5vw,52px);
  line-height:1.5;
  letter-spacing:.02em;
  text-shadow:none;
}
html[data-site-design="lifestyle-gallery"] main#main .hero .hero-copy {
  font-size:16px;
  line-height:1.85;
  text-shadow:none;
}
html[data-site-design="lifestyle-gallery"] .subpage .editorial-hero h1 {
  font-size:clamp(32px,3.4vw,49px);
  line-height:1.5;
}
/* 05 / restore the intended vertical decision index; avoid two-character rows. */
html[data-site-design="performance-tech"] {
  --ny-type-body:16px;
  --ny-type-body-leading:1.85;
}
html[data-site-design="performance-tech"] main#main .hero .nayuta-template-details {
  grid-template-columns:minmax(0,1fr);
  gap:12px;
  padding:24px clamp(20px,3vw,44px);
}
html[data-site-design="performance-tech"] main#main .hero .nayuta-template-detail {
  min-height:76px;
  padding:18px 22px;
}
html[data-site-design="performance-tech"] main#main .hero .nayuta-template-detail strong {
  font-size:16px;
  word-break:normal;
}
html[data-site-design="performance-tech"] main#main .hero h1 {
  font-size:clamp(36px,3.6vw,54px);
  line-height:1.35;
}
html[data-site-design="performance-tech"] main#main .hero .hero-copy {
  font-size:16px;
  line-height:1.85;
}
/* 06 / reserve grandeur for the photograph, keep the copy comfortably readable. */
html[data-site-design="trust-premium"] main#main .hero h1 {
  font-size:clamp(38px,4vw,58px);
  line-height:1.55;
  letter-spacing:.04em;
}
html[data-site-design="trust-premium"] main#main .hero .hero-copy {
  font-size:16px;
  line-height:1.95;
}
html[data-site-design="trust-premium"] .subpage .editorial-hero h1 {
  font-size:clamp(34px,3.8vw,54px);
  line-height:1.6;
}
@media (max-width:760px) {
  html[data-site-design="minimal-corporate"] main#main .hero > .hero-copy-block {
    padding:110px 24px 36px!important;
  }
  html[data-site-design] main#main #about .about-copy h3 {font-size:26px}
  html[data-site-design] .subpage .page-inline-links {gap:8px 20px}
  html[data-site-design="minimal-corporate"] main#main .hero h1,
  html[data-site-design="editorial-warm"] main#main .hero h1,
  html[data-site-design="lifestyle-gallery"] main#main .hero h1,
  html[data-site-design="performance-tech"] main#main .hero h1,
  html[data-site-design="trust-premium"] main#main .hero h1 {
    font-size:clamp(28px,7.7vw,34px)!important;
    line-height:1.5!important;
  }
  html[data-site-design="minimal-corporate"] main#main .hero .hero-copy,
  html[data-site-design="editorial-warm"] main#main .hero .hero-copy,
  html[data-site-design="lifestyle-gallery"] main#main .hero .hero-copy,
  html[data-site-design="performance-tech"] main#main .hero .hero-copy,
  html[data-site-design="trust-premium"] main#main .hero .hero-copy {font-size:15px}
  /* These three photograph-first designs get a separate reading area.
   * Long genuine customer copy can grow without covering faces or clipping. */
  html[data-site-design="lifestyle-gallery"] main#main .hero > .hero-visual,
  html[data-site-design="performance-tech"] main#main .hero > .hero-visual,
  html[data-site-design="trust-premium"] main#main .hero > .hero-visual {
    grid-row:1!important;
    height:280px!important;
    min-height:0;
  }
  html[data-site-design="lifestyle-gallery"] main#main .hero > .hero-visual::after,
  html[data-site-design="performance-tech"] main#main .hero > .hero-visual::after,
  html[data-site-design="trust-premium"] main#main .hero > .hero-visual::after {background:none}
  html[data-site-design="lifestyle-gallery"] main#main .hero > .hero-copy-block,
  html[data-site-design="performance-tech"] main#main .hero > .hero-copy-block,
  html[data-site-design="trust-premium"] main#main .hero > .hero-copy-block {
    grid-row:2!important;
    align-self:stretch;
    background:var(--brand-dark)!important;
    padding:32px 24px 36px!important;
  }
  html[data-site-design="lifestyle-gallery"] main#main .hero .nayuta-template-mosaic {
    grid-row:3!important;
    height:190px;
  }
  html[data-site-design="performance-tech"] main#main .hero .nayuta-template-details,
  html[data-site-design="trust-premium"] main#main .hero .nayuta-template-details {grid-row:3!important}
  html[data-site-design="lifestyle-gallery"] main#main .hero .hero-search-panel,
  html[data-site-design="performance-tech"] main#main .hero .hero-search-panel,
  html[data-site-design="trust-premium"] main#main .hero .hero-search-panel {grid-row:4!important}
  html[data-site-design="lifestyle-gallery"] main#main .hero .hero-service-links,
  html[data-site-design="performance-tech"] main#main .hero .hero-service-links,
  html[data-site-design="trust-premium"] main#main .hero .hero-service-links {grid-row:5!important}
  html[data-site-design="editorial-warm"] main#main .hero .nayuta-template-mosaic {transform:none}
  html[data-site-design] .subpage .editorial-hero h1 {font-size:clamp(28px,7.7vw,34px)}
}
@media (prefers-reduced-motion:reduce) {
  html[data-site-design] .menu-toggle {transition:none}
}
