/*
Theme Name: Integrated Smart Spaces
Author: Integrated Smart Spaces
Description: Premium architectural WordPress theme for smart-home integration, dedicated home theater and professional collaborations.
Version: 2.1.5
Requires at least: 6.8
Tested up to: 7.0
Requires PHP: 7.4
Text Domain: integrated-smart-spaces
*/

@font-face { font-family: "GFS Didot"; src: url("assets/fonts/gfs-didot-greek-400.woff2") format("woff2"); font-style: normal; font-weight: 400; font-display: swap; }
@font-face { font-family: Manrope; src: url("assets/fonts/manrope-greek-variable.woff2") format("woff2"); font-style: normal; font-weight: 200 800; font-display: swap; unicode-range: U+0370-03FF, U+1F00-1FFF; }
@font-face { font-family: Manrope; src: url("assets/fonts/manrope-latin-variable.woff2") format("woff2"); font-style: normal; font-weight: 200 800; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122; }
@font-face { font-family: Inter; src: url("assets/fonts/inter-greek-400.woff2") format("woff2"); font-style: normal; font-weight: 400; font-display: swap; unicode-range: U+0370-03FF, U+1F00-1FFF; }
@font-face { font-family: Inter; src: url("assets/fonts/inter-latin-400.woff2") format("woff2"); font-style: normal; font-weight: 400; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122; }
@font-face { font-family: Inter; src: url("assets/fonts/inter-greek-500.woff2") format("woff2"); font-style: normal; font-weight: 500; font-display: swap; unicode-range: U+0370-03FF, U+1F00-1FFF; }
@font-face { font-family: Inter; src: url("assets/fonts/inter-latin-500.woff2") format("woff2"); font-style: normal; font-weight: 500; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122; }
@font-face { font-family: Inter; src: url("assets/fonts/inter-greek-600.woff2") format("woff2"); font-style: normal; font-weight: 600; font-display: swap; unicode-range: U+0370-03FF, U+1F00-1FFF; }
@font-face { font-family: Inter; src: url("assets/fonts/inter-latin-600.woff2") format("woff2"); font-style: normal; font-weight: 600; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122; }
@font-face { font-family: Inter; src: url("assets/fonts/inter-greek-700.woff2") format("woff2"); font-style: normal; font-weight: 700; font-display: swap; unicode-range: U+0370-03FF, U+1F00-1FFF; }
@font-face { font-family: Inter; src: url("assets/fonts/inter-latin-700.woff2") format("woff2"); font-style: normal; font-weight: 700; font-display: swap; unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+20AC, U+2122; }

:root {
  --iss-ink: #0b0d0e;
  --iss-charcoal: #151819;
  --iss-ivory: #f2eee5;
  --iss-paper: #e9e2d7;
  --iss-muted: #bdb7ad;
  --iss-amber: #c8874a;
  --iss-line: rgba(242, 238, 229, 0.2);
  --iss-max: 1440px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--iss-ivory);
  background: var(--iss-ink);
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}
body.admin-bar .site-header { top: 32px; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; height: auto; }
button, input, textarea { font: inherit; }

.screen-reader-text {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0;
}
.skip-link:focus {
  z-index: 9999; top: 12px; left: 12px; width: auto; height: auto; padding: 12px 18px;
  clip: auto; background: var(--iss-ivory); color: var(--iss-ink);
}
.container { width: min(calc(100% - 96px), var(--iss-max)); margin-inline: auto; }
.eyebrow {
  margin: 0 0 24px; color: var(--iss-amber); font-size: .72rem; font-weight: 600;
  letter-spacing: .22em; text-transform: uppercase;
}
.display {
  margin: 0; max-width: 900px; font-family: "GFS Didot", Georgia, serif;
  font-size: clamp(3.4rem, 7vw, 7.8rem); font-weight: 400; line-height: .9; letter-spacing: -.045em;
}
.section-title {
  margin: 0; font-family: "GFS Didot", Georgia, serif;
  font-size: clamp(2.7rem, 5.2vw, 5.7rem); font-weight: 400; line-height: .95; letter-spacing: -.035em;
}
.lede { max-width: 620px; color: var(--iss-muted); font-size: clamp(1rem, 1.4vw, 1.25rem); }

.site-header {
  position: fixed; z-index: 100; inset: 0 0 auto; height: 84px; transition: background .35s ease, border-color .35s ease;
  border-bottom: 1px solid transparent;
}
.site-header.is-scrolled { background: rgba(11, 13, 14, .92); border-color: var(--iss-line); backdrop-filter: blur(16px); }
.header-inner { height: 100%; display: flex; align-items: center; justify-content: space-between; }
.site-branding { display: flex; align-items: center; gap: 14px; font-size: .84rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.custom-logo { max-height: 40px; width: auto; }
.site-nav { display: flex; align-items: center; gap: 34px; }
.language-switcher { display:flex; align-items:center; gap:7px; margin-left:4px; font-size:11px; letter-spacing:.16em; text-transform:uppercase; list-style:none; }
.language-switcher li { display:inline-flex; list-style:none; }
.language-switcher a,.language-switcher span { opacity:.55; }
.language-switcher .current-lang a,.language-switcher .current-lang { opacity:1; }
.site-menu { display: flex; align-items: center; gap: 34px; padding: 0; margin: 0; list-style: none; }
.site-nav a { position: relative; color: rgba(242, 238, 229, .82); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
.site-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 1px; background: var(--iss-amber); transition: right .25s ease; }
.site-nav a:hover::after, .site-nav a:focus-visible::after { right: 0; }
.menu-toggle { display: none; padding: 8px; color: var(--iss-ivory); background: none; border: 0; }
.menu-toggle span { display: block; width: 26px; height: 1px; margin: 6px 0; background: currentColor; }

.hero {
  position: relative; min-height: 100svh; display: flex; align-items: flex-end; overflow: hidden;
  background: var(--iss-charcoal) center / cover no-repeat;
}
.hero::before { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(7,9,10,.98) 0%, rgba(7,9,10,.82) 36%, rgba(7,9,10,.18) 72%, rgba(7,9,10,.12) 100%); }
.hero::after { content: ""; position: absolute; inset: auto 0 0; height: 32%; background: linear-gradient(transparent, var(--iss-ink)); }
.hero-content { position: relative; z-index: 2; width: 100%; padding: 170px 0 88px; }
.hero .display { max-width: 800px; }
.hero-copy { max-width: 560px; margin: 32px 0 0; color: rgba(242,238,229,.74); font-size: clamp(1.05rem, 1.5vw, 1.3rem); }
.hero-actions { display: flex; align-items: center; gap: 30px; margin-top: 42px; }
.button {
  display: inline-flex; align-items: center; justify-content: center; min-height: 56px; padding: 0 28px;
  border: 1px solid var(--iss-amber); color: var(--iss-ink); background: var(--iss-amber);
  font-size: .76rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
  transition: transform .25s ease, background .25s ease, color .25s ease;
}
.button:hover { transform: translateY(-2px); background: #dda367; }
.text-link { display: inline-flex; gap: 12px; align-items: center; font-size: .76rem; letter-spacing: .12em; text-transform: uppercase; }
.text-link::after { content: "→"; color: var(--iss-amber); transition: transform .25s ease; }
.text-link:hover::after { transform: translateX(6px); }
.hero-index { position: absolute; z-index: 3; right: 48px; bottom: 48px; display: grid; grid-template-columns: repeat(4, 1fr); gap: 8px; width: 300px; }
.hero-index span { height: 1px; background: rgba(242,238,229,.24); }
.hero-index span:first-child { background: var(--iss-amber); }

.intro { padding: 150px 0 130px; }
.intro-grid { display: grid; grid-template-columns: 1fr 1.5fr; gap: 100px; align-items: start; }
.intro .section-title { max-width: 850px; }
.intro-copy { max-width: 620px; margin: 42px 0 0; color: var(--iss-muted); font-size: 1.1rem; }

.feature { display: grid; min-height: 820px; grid-template-columns: 1.15fr .85fr; background: var(--iss-paper); color: var(--iss-ink); }
.feature-media { min-height: 560px; background: center / cover no-repeat; }
.feature-content { display: flex; flex-direction: column; justify-content: center; padding: 90px clamp(48px, 8vw, 130px); }
.feature-content .eyebrow { color: #8a5d34; }
.feature-content .lede { margin-top: 34px; color: #5c5a55; }
.feature-list { display: grid; gap: 0; margin-top: 50px; border-top: 1px solid rgba(11,13,14,.2); }
.feature-list div { display: flex; justify-content: space-between; gap: 24px; padding: 18px 0; border-bottom: 1px solid rgba(11,13,14,.2); font-size: .78rem; letter-spacing: .1em; text-transform: uppercase; }
.feature-list span { color: #777168; }

.scope { padding: 130px 0; border-bottom: 1px solid var(--iss-line); }
.scope-head { display: flex; align-items: end; justify-content: space-between; gap: 48px; margin-bottom: 70px; }
.scope-head .lede { margin: 0; }
.scope-grid { display: grid; grid-template-columns: 1.6fr .7fr .7fr; border-top: 1px solid var(--iss-line); }
.scope-card { min-height: 330px; padding: 36px 30px; border-right: 1px solid var(--iss-line); transition: background .3s ease; }
.scope-card:last-child { border-right: 0; }
.scope-card:hover { background: rgba(242,238,229,.035); }
.scope-number { color: var(--iss-amber); font-size: .72rem; letter-spacing: .14em; }
.scope-card h3 { margin: 100px 0 18px; font-family: "GFS Didot", Georgia, serif; font-size: 2.2rem; font-weight: 400; }
.scope-card p { margin: 0; color: var(--iss-muted); font-size: .95rem; }

.process { padding: 130px 0; }
.process-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 100px; }
.steps { counter-reset: step; }
.step { display: grid; grid-template-columns: 58px 1fr; gap: 26px; padding: 30px 0; border-top: 1px solid var(--iss-line); }
.step::before { counter-increment: step; content: "0" counter(step); color: var(--iss-amber); font-size: .75rem; letter-spacing: .12em; }
.step h3 { margin: 0 0 8px; font-size: 1.05rem; font-weight: 500; }
.step p { margin: 0; color: var(--iss-muted); }

.cinema { position: relative; min-height: 800px; display: flex; align-items: flex-end; overflow: hidden; background: var(--iss-charcoal) center / cover no-repeat; }
.cinema::before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11,13,14,.12), rgba(11,13,14,.96)); }
.cinema-content { position: relative; z-index: 2; padding: 100px 0; }
.cinema .section-title { max-width: 820px; }
.cinema .lede { margin: 30px 0 40px; }

.collaborations { padding: 140px 0; background: var(--iss-paper); color: var(--iss-ink); }
.collab-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 100px; }
.collaborations .eyebrow { color: #8a5d34; }
.collab-copy { align-self: end; }
.collab-copy > p { margin: 0 0 36px; color: #5c5a55; font-size: 1.12rem; }
.collab-types { display: flex; flex-wrap: wrap; gap: 10px; }
.collab-types span { padding: 10px 14px; border: 1px solid rgba(11,13,14,.22); font-size: .72rem; letter-spacing: .1em; text-transform: uppercase; }

.contact { padding: 140px 0 80px; }
.contact-grid { display: grid; grid-template-columns: 1.25fr .75fr; gap: 100px; }
.contact-links { align-self: end; display: grid; gap: 16px; padding-bottom: 10px; }
.contact-links a { padding: 16px 0; border-bottom: 1px solid var(--iss-line); color: var(--iss-muted); transition: color .2s ease; }
.contact-links a:hover { color: var(--iss-ivory); }

.site-footer { padding: 30px 0; border-top: 1px solid var(--iss-line); color: #85827c; font-size: .74rem; letter-spacing: .08em; text-transform: uppercase; }
.footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 30px; }

.page-hero { min-height: 78svh; }
.page-content { padding: 120px 0; }
.prose { max-width: 820px; color: var(--iss-muted); font-size: 1.08rem; }
.prose h2, .prose h3 { color: var(--iss-ivory); font-family: "GFS Didot", Georgia, serif; font-weight: 400; }
.prose h2 { font-size: 3rem; }
.prose a { color: var(--iss-amber); text-decoration: underline; }

@media (max-width: 980px) {
  .container { width: min(calc(100% - 48px), var(--iss-max)); }
  .menu-toggle { display: block; }
  .site-nav { position: fixed; inset: 84px 0 auto; display: none; flex-direction: column; align-items: flex-start; gap: 0; padding: 22px 24px; background: var(--iss-ink); border-bottom: 1px solid var(--iss-line); }
  .site-nav.is-open { display: flex; }
  .site-menu { width: 100%; flex-direction: column; align-items: flex-start; gap: 0; }
  .site-nav a { width: 100%; padding: 16px 0; }
  .language-switcher { width:100%; padding:14px 0 4px; margin:0; border-top:1px solid rgba(255,255,255,.12); }
  .language-switcher a { width:auto; padding:0; }
  .hero-index { display: none; }
  .intro-grid, .process-grid, .collab-grid, .contact-grid { grid-template-columns: 1fr; gap: 50px; }
  .feature { grid-template-columns: 1fr; }
  .feature-media { min-height: 56vw; }
  .scope-grid { grid-template-columns: 1fr; }
  .scope-card { min-height: auto; border-right: 0; border-bottom: 1px solid var(--iss-line); }
  .scope-card h3 { margin-top: 50px; }
  .scope-head { display: block; }
  .scope-head .lede { margin-top: 30px; }
}

@media (max-width: 600px) {
  body.admin-bar .site-header { top: 46px; }
  .container { width: min(calc(100% - 32px), var(--iss-max)); }
  .site-header { height: 72px; }
  .site-nav { top: 72px; }
  .site-branding { font-size: .68rem; letter-spacing: .15em; }
  .hero-content { padding: 140px 0 58px; }
  .hero .display { font-size: clamp(3.2rem, 17vw, 5rem); }
  .hero-copy { margin-top: 24px; font-size: 1rem; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 22px; margin-top: 32px; }
  .intro, .scope, .process, .collaborations, .contact { padding: 90px 0; }
  .feature-content { padding: 70px 24px; }
  .cinema { min-height: 680px; }
  .cinema-content { padding: 70px 0; }
  .footer-inner { align-items: flex-start; flex-direction: column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

/* Light editorial direction — v2 */
:root { --iss-ink:#202525; --iss-charcoal:#3d4342; --iss-ivory:#202525; --iss-paper:#f4f2ed; --iss-muted:#737a78; --iss-amber:#9b7653; --iss-line:#d9d7d1; }
body { color:#202525; background:#fbfbf9; }
.site-header { height:86px; color:#202525; }
.site-header.is-scrolled { height:76px; background:rgba(251,251,249,.93); border-color:#d9d7d1; }
.site-branding { color:#202525; }
.site-nav a { color:#4c5351; font-weight:600; }
.site-nav a::after { background:#9b7653; }
body.page-template-page-home-theater .site-header:not(.is-scrolled), body.page-template-page-home-theater .site-header:not(.is-scrolled) .site-branding, body.page-template-page-home-theater .site-header:not(.is-scrolled) .site-nav a, body.page-template-page-home-theater .site-header:not(.is-scrolled) .menu-toggle { color:#fff; }
.eyebrow { color:#9b7653; font-size:.68rem; }
.section-index { margin:40px 0 0; color:#aaa49b; font-family:"GFS Didot",Georgia,serif; font-size:2rem; }
.display, .section-title, .hero h1, .philosophy h2, .smart-home h2, .section-heading h2, .projects h2, .approach h2, .cinema-card h2, .collaborations h2, .contact h2, .theater-hero h1, .theater-intro h2, .room-first h2, .theater-delivery h2, .theater-cta h2 { color:inherit; font-family:"GFS Didot",Georgia,serif; font-weight:400; line-height:.95; letter-spacing:-.032em; }
.philosophy h2, .smart-home h2, .section-heading h2, .projects h2, .approach h2, .cinema-card h2, .collaborations h2, .contact h2, .theater-intro h2, .room-first h2, .theater-delivery h2, .theater-cta h2 { margin:0; font-size:clamp(2.7rem,5vw,5.5rem); }
.lead { color:#4f5755; font-size:clamp(1.08rem,1.4vw,1.28rem); line-height:1.72; }
.button { border-color:#202525; color:#fff; background:#202525; }
.button:hover { background:#9b7653; }
.text-link::after { color:#9b7653; }

.light-hero { position:relative; min-height:100svh; display:flex; align-items:center; overflow:hidden; color:#202525; background:#e9e5dc center/cover no-repeat; }
.light-hero::before { background:linear-gradient(90deg,rgba(251,251,249,.97),rgba(251,251,249,.9) 31%,rgba(251,251,249,.38) 55%,rgba(251,251,249,.04) 78%); }
.light-hero::after { display:none; }
.light-hero .hero-content { padding:155px 0 80px; }
.light-hero h1 { max-width:850px; margin:0; font-size:clamp(3.6rem,7.4vw,8rem); }
.light-hero .hero-copy { max-width:515px; color:#59615f; }
.scroll-note { position:absolute; z-index:2; right:48px; bottom:42px; display:flex; align-items:center; gap:15px; color:#575e5d; font-size:.58rem; letter-spacing:.15em; }
.scroll-note span { width:70px; height:1px; background:#9b7653; }

.editorial-grid { display:grid; grid-template-columns:.42fr 1.58fr; gap:80px; }
.philosophy { padding:155px 0; }
.editorial-grid > div:last-child > h2 { max-width:1060px; }
.editorial-grid .lead { max-width:770px; margin:42px 0 0; }
.principles { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-top:70px; background:#d9d7d1; border:1px solid #d9d7d1; }
.principles div { display:grid; gap:12px; padding:30px; background:#fbfbf9; }
.principles b { font-size:.83rem; letter-spacing:.08em; text-transform:uppercase; }
.principles span { color:#737a78; font-size:.91rem; }

.smart-home { padding:0 0 145px; }
.smart-grid { display:grid; grid-template-columns:1.1fr .9fr; min-height:760px; }
.smart-image { background:#ebe5db 86% center/cover no-repeat; }
.smart-copy { display:flex; flex-direction:column; justify-content:center; padding:80px clamp(50px,7vw,110px); background:#f4f2ed; }
.smart-copy .lead { margin:30px 0 20px; }
.smart-copy > p:not(.eyebrow):not(.lead) { color:#737a78; }
.smart-copy .text-link { align-self:flex-start; margin-top:30px; }

.experience { padding:140px 0; background:#f4f2ed; }
.section-heading { display:grid; grid-template-columns:.42fr 1fr .58fr; gap:55px; align-items:end; }
.section-heading > p { margin:0 0 8px; color:#737a78; }
.experience-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:75px; border-top:1px solid #cfcac1; }
.experience-grid article { min-height:310px; padding:31px 26px; border-right:1px solid #cfcac1; }
.experience-grid article:last-child { border-right:0; }
.experience-grid article > span, .scope-row > div > span, .collab-columns article > span { color:#9b7653; font-size:.68rem; }
.experience-grid h3, .scope-row h3, .collab-columns h3 { margin:88px 0 16px; font-family:"GFS Didot",Georgia,serif; font-size:2rem; font-weight:400; }
.experience-grid p, .scope-row p, .collab-columns p { margin:0; color:#737a78; font-size:.92rem; }

.projects { padding:150px 0; }
.projects-head { display:grid; grid-template-columns:.42fr 1.58fr; gap:80px; }
.projects-head > div:last-child { display:grid; grid-template-columns:1.18fr .82fr; gap:75px; align-items:end; }
.projects-head > div:last-child > p { margin:0; color:#737a78; }
.project-visual { width:min(calc(100% - 96px),1660px); margin:80px auto 0; }
.project-image { height:min(65vw,850px); min-height:560px; background:#dbe1e1 center/cover no-repeat; }
.project-caption { display:flex; justify-content:space-between; gap:40px; padding:18px 2px; border-bottom:1px solid #d9d7d1; color:#737a78; font-size:.68rem; letter-spacing:.1em; }
.project-caption strong { color:#202525; }
.scope-row { display:grid; grid-template-columns:1.4fr .8fr .8fr; margin-top:70px; border-top:1px solid #d9d7d1; }
.scope-row > div { padding:30px 27px; border-right:1px solid #d9d7d1; }
.scope-row > div:last-child { border-right:0; }
.scope-row h3 { margin-top:58px; }

.approach { padding:145px 0; background:#e4eaeb; }
.approach .lead { max-width:750px; margin:38px 0 55px; }
.steps { border-top:1px solid #bac4c6; }
.steps article { display:grid; grid-template-columns:65px 1fr; gap:20px; padding:27px 0; border-bottom:1px solid #bac4c6; }
.steps article > span { color:#647b85; font-size:.68rem; }
.steps h3 { margin:0 0 6px; font-size:1rem; font-weight:600; }
.steps p { margin:0; color:#667271; }

.cinema-preview { display:grid; grid-template-columns:1.1fr .9fr; min-height:820px; background:#ece9e2; }
.cinema-image { background:#e2ded5 center/cover no-repeat; }
.cinema-card { display:flex; flex-direction:column; justify-content:center; padding:90px clamp(50px,7vw,120px); }
.cinema-card p:not(.eyebrow) { margin:32px 0 38px; color:#626866; font-size:1.05rem; }
.cinema-card .button { align-self:flex-start; }

.collaborations { padding:150px 0; color:#202525; background:#fbfbf9; }
.collaborations .projects-head { margin-bottom:75px; }
.collab-columns { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid #d9d7d1; }
.collab-columns article { padding:31px 32px 15px; border-right:1px solid #d9d7d1; }
.collab-columns article:last-child { border-right:0; }
.collab-columns h3 { margin-top:68px; }

.contact { padding:145px 0 95px; color:#fff; background:#202525; }
.contact .eyebrow { color:#c9a783; }
.contact-grid { grid-template-columns:1.2fr .8fr; gap:120px; }
.contact-grid > div:first-child > p:last-child { max-width:620px; color:#aeb4b2; }
.contact-links a, .contact-links span { border-color:rgba(255,255,255,.18); color:#d3d6d4; }
.site-footer { padding:48px 0; color:#fff; background:#202525; border-color:rgba(255,255,255,.15); }
.site-footer .site-branding { color:#fff; }
.footer-inner { align-items:flex-end; }
.footer-inner > div:first-child > p { margin:22px 0 0; color:#929a98; }
.footer-meta { display:grid; gap:9px; text-align:right; color:#8c9492; font-size:.62rem; letter-spacing:.1em; }

.theater-hero { position:relative; min-height:92svh; display:flex; align-items:flex-end; color:#fff; background:#e8e4dc center/cover no-repeat; }
.theater-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(19,24,26,.72),rgba(19,24,26,.18) 70%),linear-gradient(0deg,rgba(19,24,26,.48),transparent 55%); }
.theater-hero-copy { position:relative; z-index:1; padding-bottom:90px; }
.theater-hero .eyebrow { color:#d8b894; }
.theater-hero h1 { max-width:960px; margin:0; font-size:clamp(4rem,8vw,8.6rem); }
.theater-hero-copy > p:last-child { max-width:650px; margin:31px 0 0; color:#e1e2df; font-size:1.2rem; }
.theater-intro { padding:155px 0; }
.theater-intro .editorial-grid > div:last-child > p:last-child { max-width:760px; color:#737a78; }
.room-first { display:grid; grid-template-columns:1.12fr .88fr; min-height:760px; background:#f4f2ed; }
.room-image { background:center/cover no-repeat; }
.room-copy { display:flex; flex-direction:column; justify-content:center; padding:80px clamp(50px,7vw,110px); }
.room-copy > p:last-child { color:#737a78; font-size:1.03rem; }
.theater-elements { padding:145px 0; }
.theater-elements .section-heading { grid-template-columns:.42fr 1.58fr; }
.theater-grid { background:#f4f2ed; border:0; }
.theater-delivery { padding:145px 0; background:#e4eaeb; }
.theater-delivery .projects-head > div:last-child { display:block; }
.theater-delivery .lead { margin-top:36px; }
.delivery-list { display:grid; margin-top:55px; border-top:1px solid #b9c3c4; }
.delivery-list span { padding:18px 0; border-bottom:1px solid #b9c3c4; font-size:.82rem; letter-spacing:.04em; }
.theater-cta { padding:150px 0; text-align:center; }
.theater-cta h2 { max-width:1100px; margin-inline:auto; }
.theater-cta > div > p:not(.eyebrow) { max-width:650px; margin:38px auto; color:#737a78; }

@media (max-width:980px) {
  .site-nav { color:#202525; background:#fbfbf9; }
  .editorial-grid,.projects-head,.projects-head>div:last-child,.contact-grid { grid-template-columns:1fr; gap:48px; }
  .section-heading { grid-template-columns:1fr; }
  .principles { grid-template-columns:1fr; }
  .smart-grid,.cinema-preview,.room-first { grid-template-columns:1fr; }
  .smart-image,.cinema-image,.room-image { min-height:64vw; }
  .experience-grid { grid-template-columns:repeat(2,1fr); }
  .scope-row,.collab-columns { grid-template-columns:1fr; }
  .scope-row>div,.collab-columns article { border-right:0; border-bottom:1px solid #d9d7d1; }
  .project-visual { width:calc(100% - 48px); }
}
@media (max-width:600px) {
  .light-hero { background-position:62% center; }
  .light-hero::before { background:linear-gradient(90deg,rgba(251,251,249,.96),rgba(251,251,249,.8) 65%,rgba(251,251,249,.18)); }
  .light-hero h1 { font-size:clamp(3.4rem,16vw,5.2rem); }
  .scroll-note { display:none; }
  .philosophy,.experience,.projects,.approach,.collaborations,.contact,.theater-intro,.theater-elements,.theater-delivery,.theater-cta { padding:95px 0; }
  .smart-home { padding-bottom:95px; }
  .experience-grid { grid-template-columns:1fr; }
  .experience-grid article { min-height:auto; border-right:0; border-bottom:1px solid #cfcac1; }
  .experience-grid h3 { margin-top:55px; }
  .project-visual { width:calc(100% - 32px); margin-top:50px; }
  .project-image { height:78vw; min-height:390px; }
  .project-caption { align-items:flex-start; flex-direction:column; gap:5px; }
  .smart-copy,.cinema-card,.room-copy { padding:65px 24px; }
  .smart-image,.cinema-image,.room-image { min-height:78vw; }
  .footer-inner { align-items:flex-start; }
  .footer-meta { text-align:left; }
  .theater-hero { min-height:82svh; }
  .theater-hero h1 { font-size:clamp(3.7rem,17vw,5.6rem); }
}

/* Manrope ExtraLight display type and editable image-only projects gallery */
.display, .section-title, .hero h1, .philosophy h2, .smart-home h2, .section-heading h2, .projects h2, .approach h2, .cinema-card h2, .collaborations h2, .contact h2, .theater-hero h1, .theater-intro h2, .room-first h2, .theater-delivery h2, .theater-cta h2, .projects-page-hero h1 {
  font-family: Manrope, Inter, "Helvetica Neue", Arial, sans-serif;
  font-weight: 200;
  line-height: 1.12;
  letter-spacing: -.035em;
}
.experience-grid h3, .scope-row h3, .collab-columns h3 { font-family: Manrope, Inter, "Helvetica Neue", Arial, sans-serif; font-weight: 250; line-height: 1.22; }

/* Calls, 3:2 project photography and editorial blog — v1.3 */
.header-call { display:inline-flex; align-items:center; min-height:38px; padding:0 17px; border:1px solid currentColor; color:#202525; font-size:.68rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; transition:color .2s,background .2s; }
.header-call:hover { color:#fff; background:#202525; }
body.page-template-page-home-theater .site-header:not(.is-scrolled) .header-call { color:#fff; }
body.page-template-page-home-theater .site-header:not(.is-scrolled) .header-call:hover { color:#202525; background:#fff; }
.call-link::before { content:""; display:inline-block; width:15px; height:15px; margin-right:10px; vertical-align:-2px; background:currentColor; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round' d='M22 16.92v3a2 2 0 0 1-2.18 2A19.79 19.79 0 0 1 3.09 5.18 2 2 0 0 1 5.07 3h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L9 10.7a16 16 0 0 0 4.3 4.3l1.24-1.24a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92Z'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round' d='M22 16.92v3a2 2 0 0 1-2.18 2A19.79 19.79 0 0 1 3.09 5.18 2 2 0 0 1 5.07 3h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L9 10.7a16 16 0 0 0 4.3 4.3l1.24-1.24a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92Z'/%3E%3C/svg%3E") center/contain no-repeat; }
.call-strip { padding:52px 0; color:#fff; background:#202525; }
.call-strip .container { display:flex; align-items:center; justify-content:space-between; gap:40px; }
.call-strip .eyebrow { margin-bottom:10px; color:#c1aa92; }
.call-strip h2 { margin:0; font-family:Manrope,Inter,sans-serif; font-size:clamp(1.7rem,3vw,2.75rem); font-weight:200; line-height:1.18; letter-spacing:-.03em; }
.button-light { border-color:#fff; color:#202525; background:#fff; }
.button-light:hover { color:#fff; border-color:#9b7653; background:#9b7653; }
.theater-actions,.article-actions { display:flex; flex-wrap:wrap; align-items:center; gap:28px; }

.project-image { aspect-ratio:3/2; height:auto !important; min-height:0 !important; }
.projects-content .wp-block-image,.projects-content .wp-block-image:nth-child(5n + 1) { aspect-ratio:3/2; grid-column:auto; }
.projects-content .wp-block-image img,.projects-content .wp-block-image:nth-child(5n + 1) img { width:100%; height:100% !important; min-height:0 !important; object-fit:cover; }

.blog-hero { padding:190px 0 95px; background:#f4f2ed; }
.blog-hero h1,.article-hero h1,.blog-card h2,.article-cta h2,.post-body h2 { font-family:Manrope,Inter,"Helvetica Neue",Arial,sans-serif; font-weight:200; letter-spacing:-.035em; }
.blog-hero h1 { max-width:980px; margin:0; font-size:clamp(3.3rem,7vw,7rem); line-height:1.08; }
.blog-hero > .container > p:last-child { max-width:700px; margin:36px 0 0; color:#737a78; font-size:1.08rem; }
.blog-listing { padding:80px 0 130px; }
.blog-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:70px 28px; }
.blog-card-image { display:block; aspect-ratio:3/2; overflow:hidden; background:#f4f2ed; }
.blog-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s ease; }
.blog-card-image:hover img { transform:scale(1.025); }
.blog-card-copy { padding:28px 0 0; }
.post-meta { display:flex; flex-wrap:wrap; gap:12px 24px; color:#9b7653; font-size:.68rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.post-meta a { color:inherit; }
.blog-card h2 { max-width:650px; margin:20px 0 18px; font-size:clamp(2rem,3.2vw,3.3rem); line-height:1.14; }
.blog-card-copy > p { max-width:620px; margin:0 0 26px; color:#737a78; }
.blog-pagination { margin-top:80px; }
.blog-pagination .nav-links { display:flex; justify-content:center; gap:10px; }
.blog-pagination a,.blog-pagination span { padding:8px 13px; border:1px solid #d9d7d1; }

.article-hero { padding:190px 0 70px; background:#f4f2ed; }
.article-heading { max-width:1180px; }
.article-hero h1 { max-width:1080px; margin:30px 0 0; font-size:clamp(3.1rem,6.5vw,6.7rem); line-height:1.08; }
.article-hero .article-heading > p { max-width:760px; margin:38px 0 0; color:#737a78; font-size:1.15rem; }
.article-feature { aspect-ratio:3/2; max-height:900px; margin-top:54px; overflow:hidden; background:#eeeae2; }
.article-feature img { width:100%; height:100%; object-fit:cover; }
.post-body { max-width:850px; padding-top:100px; padding-bottom:115px; color:#4f5755; font-size:1.08rem; line-height:1.85; }
.post-body .post-lead { color:#202525; font-size:clamp(1.35rem,2.1vw,1.8rem); line-height:1.6; }
.post-body h2 { margin:80px 0 24px; color:#202525; font-size:clamp(2.2rem,4vw,4.1rem); line-height:1.15; }
.post-body ul { padding-left:1.2em; }
.post-body li { margin:0 0 18px; padding-left:10px; }
.post-body blockquote { margin:80px 0; padding:42px 0 42px 42px; border-left:1px solid #9b7653; color:#202525; font-family:Manrope,Inter,sans-serif; font-size:clamp(1.7rem,3vw,2.7rem); font-weight:200; line-height:1.38; }
.article-cta { padding:90px 0; color:#fff; background:#202525; }
.article-cta .container { display:grid; grid-template-columns:1.25fr .75fr; gap:80px; align-items:end; }
.article-cta h2 { max-width:720px; margin:0 0 20px; font-size:clamp(2.4rem,4.5vw,4.8rem); line-height:1.12; }
.article-cta p:not(.eyebrow) { max-width:650px; margin:0; color:#b9bfbd; }
.article-cta .button { color:#202525; border-color:#fff; background:#fff; }
.article-cta .call-link { color:#fff; }

@media (max-width:1180px) { .header-call { display:none; } }
@media (max-width:800px) {
  .call-strip .container,.article-cta .container { grid-template-columns:1fr; display:grid; }
  .blog-grid { grid-template-columns:1fr; }
  .article-feature { width:calc(100% - 48px); }
}
@media (max-width:700px) {
  .blog-hero,.article-hero { padding:145px 0 70px; }
  .blog-listing { padding:50px 0 90px; }
  .article-feature { width:calc(100% - 32px); margin-top:30px; }
  .post-body { padding-top:65px; padding-bottom:80px; }
  .post-body blockquote { margin:55px 0; padding:28px 0 28px 24px; }
  .theater-actions,.article-actions { align-items:flex-start; flex-direction:column; }
  .projects-content .wp-block-image,.projects-content .wp-block-image:nth-child(5n + 1) { aspect-ratio:3/2; }
}

/* Compact contextual CTAs — v1.5 */
.section-breathing-strip { height:26px; background:#fbfbf9; }
.approach-intro { max-width:760px; margin:28px 0 0; color:#747d7b; font-size:.98rem; line-height:1.78; }
.paged-projects-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:24px; }
.iss-pagination { display:flex; align-items:center; justify-content:space-between; gap:32px; margin-top:72px; padding-top:26px; border-top:1px solid #d9d7d1; }
.pagination-status { color:#747d7b; font-size:.68rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase; }
.pagination-pages { display:flex; align-items:center; gap:8px; }
.pagination-pages a { display:grid; place-items:center; width:42px; height:42px; padding:0; border:1px solid transparent; border-radius:50%; color:#747d7b; font-size:.7rem; letter-spacing:.08em; transition:.2s; }
.pagination-pages a:hover { border-color:#d9d7d1; color:#202525; }
.pagination-pages a.current { border-color:#202525; color:#fff; background:#202525; }
@media (max-width:700px) { .paged-projects-grid { grid-template-columns:1fr; gap:14px; } .iss-pagination { align-items:flex-start; flex-direction:column; margin-top:48px; } .pagination-pages a { width:38px; height:38px; } }
.home-theater-gap { height:145px; }
.matched-call-strip h2 span { display:block; white-space:nowrap; }
@media (max-width:800px) { .section-breathing-strip { height:18px; } .home-theater-gap { height:95px; } }

/* Brand, contact details and global navigation helpers — v1.4 */
.page-top-anchor { position:absolute; top:0; }
.site-branding { flex:0 0 auto; }
.site-branding .logo-link { display:flex; align-items:center; width:170px; }
.site-branding .brand-logo,.site-branding .custom-logo { display:block; width:100%; max-width:170px; max-height:none; height:auto; }
body.page-template-page-home-theater .site-header:not(.is-scrolled) .site-branding img { filter:brightness(0) invert(1); }
.footer-logo { display:flex; width:215px; margin-bottom:18px; }
.footer-logo .brand-logo { display:block; width:100%; height:auto; filter:none; }
.footer-meta { display:grid; justify-items:end; gap:7px; text-align:right; }
.footer-knx-logo { display:block; width:78px; height:auto; margin-top:12px; opacity:.86; }
.iss-pagelayer-content main#content { overflow:visible; }
.contact-links { align-items:flex-start; }
.back-to-top { position:fixed; z-index:130; right:22px; bottom:22px; display:grid; place-items:center; width:48px; height:48px; border:1px solid #aeb5b3; border-radius:50%; background:rgba(251,251,249,.94); color:#202525; opacity:0; pointer-events:none; transform:translateY(10px); transition:opacity .25s,transform .25s,background .2s,color .2s; box-shadow:0 8px 28px rgba(0,0,0,.09); }
.back-to-top svg { display:block; width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.back-to-top.is-visible { opacity:1; pointer-events:auto; transform:none; }
.back-to-top:hover { color:#fff; background:#202525; }
.call-strip .container > div > p:last-child { max-width:650px; margin:18px 0 0; color:#b9bfbd; }
@media (max-width:1180px) { .site-branding .logo-link { width:150px; } }
@media (max-width:700px) { .site-branding .logo-link { width:132px; } .footer-logo { width:190px; } .footer-meta { justify-items:start; text-align:left; } .footer-knx-logo { width:72px; } .back-to-top { right:18px; bottom:18px; width:44px; height:44px; } .back-to-top svg { width:18px; height:18px; } .contact-links { display:grid; gap:16px; } }

/* Blog knowledge themes — v1.3.1 */
.blog-topics { padding:115px 0 35px; background:#fbfbf9; }
.topics-heading { display:grid; grid-template-columns:.42fr 1.58fr; gap:80px; align-items:start; }
.topics-heading h2 { max-width:980px; margin:0; font-family:Manrope,Inter,sans-serif; font-size:clamp(2.6rem,5vw,5.2rem); font-weight:200; line-height:1.12; letter-spacing:-.035em; }
.topics-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:70px; border-top:1px solid #d9d7d1; border-bottom:1px solid #d9d7d1; }
.topics-grid article { min-height:330px; padding:32px 26px; border-right:1px solid #d9d7d1; }
.topics-grid article:last-child { border-right:0; }
.topics-grid span { color:#9b7653; font-size:.68rem; letter-spacing:.12em; }
.topics-grid h3 { margin:75px 0 18px; font-family:Manrope,Inter,sans-serif; font-size:1.5rem; font-weight:250; line-height:1.25; letter-spacing:-.025em; }
.topics-grid p { margin:0; color:#737a78; font-size:.9rem; }
.blog-topics + .blog-listing { padding-top:75px; }
@media (max-width:1000px) { .topics-heading { grid-template-columns:1fr; gap:28px; } .topics-grid { grid-template-columns:repeat(2,1fr); } .topics-grid article:nth-child(2) { border-right:0; } .topics-grid article:nth-child(-n+2) { border-bottom:1px solid #d9d7d1; } }
@media (max-width:620px) { .blog-topics { padding:85px 0 20px; } .topics-grid { grid-template-columns:1fr; margin-top:48px; } .topics-grid article { min-height:0; border-right:0; border-bottom:1px solid #d9d7d1; } .topics-grid article:last-child { border-bottom:0; } .topics-grid h3 { margin-top:45px; } }

@media (max-width:980px) {
  body.page-template-page-home-theater .site-header:not(.is-scrolled) .site-nav.is-open,
  body.page-template-page-home-theater .site-header:not(.is-scrolled) .site-nav.is-open a { color:#4c5351; }
}
.projects-more { display: flex; justify-content: flex-end; margin-top: 42px; }
.projects-page-hero { padding: 190px 0 100px; background: #f4f2ed; }
.projects-page-hero h1 { max-width: 1100px; margin: 0; font-size: clamp(3.4rem, 7vw, 7.2rem); }
.projects-page-hero p:last-child { max-width: 680px; margin: 38px 0 0; color: #737a78; font-size: 1.08rem; }
.projects-gallery { padding: 30px 0 120px; background: #fbfbf9; }
.projects-content > .wp-block-gallery, .projects-content .wp-block-gallery { display: grid; grid-template-columns: repeat(2, 1fr); gap: 24px !important; }
.projects-content .wp-block-image { width: auto !important; margin: 0 !important; overflow: hidden; background: #f4f2ed; }
.projects-content .wp-block-image:nth-child(5n + 1) { grid-column: 1 / -1; }
.projects-content .wp-block-image img { width: 100%; height: min(52vw, 720px) !important; display: block; object-fit: cover; }
.projects-content .wp-block-image:nth-child(5n + 1) img { height: min(58vw, 840px) !important; }
.projects-content figcaption { display: none !important; }
.projects-empty { padding: 70px 0; color: #737a78; border-top: 1px solid #d9d7d1; border-bottom: 1px solid #d9d7d1; }
.gallery-cta { padding: 42px 0 120px; text-align: center; background: #fbfbf9; }
.gallery-actions { display:flex; align-items:center; justify-content:center; gap:30px; flex-wrap:wrap; }
.gallery-actions .call-link { color:#49514f; }
@media (max-width:700px) {
  .projects-page-hero { padding: 145px 0 75px; }
  .projects-page-hero h1 { font-size: clamp(3rem, 14vw, 4.8rem); }
  .projects-content > .wp-block-gallery, .projects-content .wp-block-gallery { grid-template-columns: 1fr; gap: 14px !important; }
  .projects-content .wp-block-image:nth-child(5n + 1) { grid-column: auto; }
  .projects-content .wp-block-image img, .projects-content .wp-block-image:nth-child(5n + 1) img { height: 86vw !important; min-height: 340px; }
  .projects-more { justify-content: flex-start; }
  .gallery-actions { align-items:stretch; flex-direction:column; }
  .gallery-actions .call-link { justify-content:center; }
}

/* Minimal typography, long-term partnerships and contact form */
.display, .section-title, .hero h1, .philosophy h2, .smart-home h2, .section-heading h2, .projects h2, .approach h2, .cinema-card h2, .collaborations h2, .contact h2, .theater-hero h1, .theater-intro h2, .room-first h2, .theater-delivery h2, .theater-cta h2 {
  font-family: Inter, "Helvetica Neue", Arial, sans-serif;
  font-weight: 300;
  line-height: .98;
  letter-spacing: -.052em;
}
.experience-grid h3, .scope-row h3, .collab-columns h3 { font-family: Inter, "Helvetica Neue", Arial, sans-serif; font-size: 1.8rem; font-weight: 300; letter-spacing: -.035em; }
.collab-cta { margin-top: 58px; }
.contact { padding: 145px 0 105px; color: #202525; background: #eef1f0; }
.contact .eyebrow { color: #9b7653; }
.contact-heading { display: grid; grid-template-columns: 1.1fr .9fr; gap: 100px; align-items: end; margin-bottom: 70px; }
.contact-heading > div:last-child > p { max-width: 590px; margin: 0 0 28px; color: #737a78; }
.contact-links { display: flex; flex-wrap: wrap; gap: 28px; padding: 0; }
.contact-links a { padding: 0 0 5px; border-bottom: 1px solid #b9c2c0; color: #525b59; font-size: .85rem; }
.contact-form { position: relative; display: grid; gap: 26px; padding: 50px; background: #fbfbf9; border: 1px solid #d6dddb; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; }
.contact-form label { display: grid; gap: 9px; color: #535b59; font-size: .72rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.contact-form label > span { color: #929997; font-size: .62rem; font-weight: 400; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; min-height: 52px; padding: 12px 0; border: 0; border-bottom: 1px solid #bfc8c6; border-radius: 0; background: transparent; color: #202525; font: 400 1rem/1.4 Inter, sans-serif; letter-spacing: 0; text-transform: none; outline: none; }
.contact-form textarea { resize: vertical; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: #9b7653; }
.consent { grid-template-columns: 18px 1fr !important; align-items: start; gap: 12px !important; text-transform: none !important; letter-spacing: 0 !important; font-weight: 400 !important; }
.consent input { width: 16px; min-height: 16px; margin-top: 4px; accent-color: #202525; }
.consent span { color: #737a78 !important; font-size: .78rem !important; }
.form-submit { display: flex; align-items: center; gap: 28px; }
.form-submit p { max-width: 480px; margin: 0; color: #737a78; font-size: .78rem; }
.form-honeypot { position: absolute; left: -9999px; }
@media (max-width:980px) { .contact-heading { grid-template-columns: 1fr; gap: 48px; } }
@media (max-width:600px) {
  .hero h1 { font-size: clamp(3.25rem, 15vw, 5rem); }
  .theater-hero h1 { font-size: clamp(3.45rem, 16vw, 5.3rem); }
  .form-row { grid-template-columns: 1fr; }
  .contact-form { padding: 28px 20px; }
  .form-submit { align-items: flex-start; flex-direction: column; }
}

/* Selected display family */
.display, .section-title, .hero h1, .philosophy h2, .smart-home h2, .section-heading h2, .projects h2, .approach h2, .cinema-card h2, .collaborations h2, .contact h2, .theater-hero h1, .theater-intro h2, .room-first h2, .theater-delivery h2, .theater-cta h2, .projects-page-hero h1 {
  font-family: Manrope, Inter, "Helvetica Neue", Arial, sans-serif;
  font-weight: 200;
  line-height: 1.12;
  letter-spacing: -.035em;
}
.experience-grid h3, .scope-row h3, .collab-columns h3 { font-family: Manrope, Inter, "Helvetica Neue", Arial, sans-serif; font-weight: 250; line-height: 1.22; }

/* Final cascade rules */
.project-image { aspect-ratio:3/2; height:auto !important; min-height:0 !important; }
.projects-gallery { padding-bottom:0; }
.projects-content .wp-block-image,
.projects-content .wp-block-image:nth-child(5n + 1) { aspect-ratio:3/2; grid-column:auto; height:auto !important; min-height:0 !important; }
.projects-content .wp-block-image img,
.projects-content .wp-block-image:nth-child(5n + 1) img { width:100%; height:100% !important; min-height:0 !important; object-fit:cover; }
@media (max-width:980px) {
  body.page-template-page-home-theater .site-header:not(.is-scrolled) .site-nav.is-open { color:#4c5351; background:#fbfbf9; }
  body.page-template-page-home-theater .site-header:not(.is-scrolled) .site-nav.is-open a { color:#4c5351; }
}
@media (max-width:700px) {
  .projects-content .wp-block-image,
  .projects-content .wp-block-image:nth-child(5n + 1) { aspect-ratio:3/2; min-height:0 !important; }
  .projects-content .wp-block-image img,
  .projects-content .wp-block-image:nth-child(5n + 1) img { height:100% !important; min-height:0 !important; }
}

/* Mixed project media and consistent 3:2 presentation — v1.9 */
.paged-projects-grid > .wp-block-image,
.paged-projects-grid > .wp-block-video,
.paged-projects-grid > .wp-block-embed,
.paged-projects-grid > .project-media {
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  overflow:hidden;
  aspect-ratio:3/2;
  background:#171a1b;
}
.paged-projects-grid > figure img,
.paged-projects-grid > figure video,
.paged-projects-grid > figure iframe {
  width:100% !important;
  height:100% !important;
  min-height:0 !important;
  display:block;
  border:0;
  object-fit:cover;
}
.paged-projects-grid > .wp-block-video video { background:#171a1b; }
.paged-projects-grid figcaption { display:none !important; }

/* Native PageLayer layouts: keep the established architectural design. */
.iss-native { flex:none; width:100%; }
.iss-native .pagelayer-col { flex:none; min-width:0; }
.iss-native .pagelayer-col-holder { display:block; padding:0; }
.iss-native .pagelayer-row-holder { flex:none; max-width:none !important; }
.iss-native .pagelayer-inner_row { flex:none; }
.iss-native .pagelayer-col-holder > div { margin-bottom:0; }
.iss-native .pagelayer-heading-holder > * { color:inherit; }
.iss-native .pagelayer-heading-holder, .iss-native .pagelayer-heading-holder > * { overflow-wrap:normal; word-break:normal; }
.iss-native .smart-copy h2 { font-size:clamp(2.55rem,4vw,4.7rem); }
.iss-native .pagelayer-text-holder > p { margin-top:0; }
.iss-native .pagelayer-text-holder > .eyebrow { margin-bottom:24px; }
.iss-native .pagelayer-text-holder > .section-index { margin-top:40px; }
.iss-native .container { flex:none; }
.iss-native .container > .pagelayer-row-holder { width:100%; }
.iss-native .container > .pagelayer-row-holder > .pagelayer-col { width:100%; }
.iss-native .hero-content { z-index:2; width:min(calc(100% - 96px),var(--iss-max)); margin-inline:auto; }
.iss-native.hero > .pagelayer-row-holder { display:block; z-index:2; }
.iss-native.hero .hero-copy { margin-top:32px; }
.iss-native .hero-actions { display:block; }
.iss-native .hero-actions > .pagelayer-row-holder { display:flex; }
.iss-native .iss-scroll-cell { position:absolute; right:48px; bottom:42px; width:auto !important; }
.iss-native .iss-scroll-note p { display:flex; align-items:center; gap:15px; margin:0; color:#575e5d; font-size:.58rem; letter-spacing:.15em; }
.iss-native .iss-scroll-note span { width:70px; height:1px; background:#9b7653; }
.iss-native .editorial-grid,.iss-native .projects-head,.iss-native .section-heading,.iss-native .principles,.iss-native .smart-grid,.iss-native .experience-grid,.iss-native .scope-row,.iss-native .collab-columns,.iss-native .contact-heading,.iss-native .project-caption { display:block; }
.iss-native .editorial-grid > .pagelayer-row-holder,.iss-native .projects-head > .pagelayer-row-holder { display:grid; grid-template-columns:.42fr 1.58fr; gap:80px; }
.iss-native .editorial-grid .lead { margin-top:42px; }
.iss-native .principles > .pagelayer-row-holder { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; }
.iss-native .principles .pagelayer-col { width:100%; padding:0; background:#fbfbf9; }
.iss-native .principles .pagelayer-col-holder { display:grid; gap:12px; padding:30px; background:#fbfbf9; }
.iss-native .principles .pagelayer-text-holder { display:block; padding:0; background:transparent; }
.iss-native .smart-grid > .pagelayer-row-holder { display:grid; grid-template-columns:1.1fr .9fr; }
.iss-native .smart-copy,.iss-native .cinema-card,.iss-native .room-copy { display:flex; flex-direction:column; justify-content:center; }
.iss-native .smart-copy .lead { margin:30px 0 20px; }
.iss-native .smart-copy .iss-rich-text:not(:first-child) { color:#737a78; }
.iss-native .smart-copy .iss-text-link { margin-top:30px; }
.iss-native .iss-cover-image,.iss-native .iss-cover-image .pagelayer-image-holder { width:100%; height:100%; }
.iss-native .iss-cover-image img { width:100%; height:100%; object-fit:cover; display:block; }
.iss-native .smart-image { min-height:760px; background:none; }
.iss-native .smart-image img { object-position:86% center; }
.iss-native .cinema-image { min-height:820px; background:none; }
.iss-native .room-image { min-height:760px; background:none; }
.iss-native .iss-media-col { align-content:stretch; }
.iss-native .iss-media-col > .pagelayer-col-holder { height:100%; }
.iss-native.cinema-preview,.iss-native.room-first { display:block; }
.iss-native.cinema-preview > .pagelayer-row-holder { display:grid; grid-template-columns:1.1fr .9fr; }
.iss-native.room-first > .pagelayer-row-holder { display:grid; grid-template-columns:1.12fr .88fr; }
.iss-native .cinema-card p:not(.eyebrow) { margin:32px 0 38px; }
.iss-native .room-copy .iss-rich-text:last-child { color:#737a78; font-size:1.03rem; }
.iss-native .section-heading > .pagelayer-row-holder { display:grid; grid-template-columns:.42fr 1fr .58fr; gap:55px; align-items:end; }
.iss-native.theater-elements .section-heading > .pagelayer-row-holder { grid-template-columns:.42fr 1.58fr; }
.iss-native .section-heading .pagelayer-text-holder > p:not(.eyebrow):not(.section-index) { margin:0 0 8px; color:#737a78; }
.iss-native .experience-grid > .pagelayer-row-holder { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.iss-native .experience-grid .iss-card { min-height:310px; padding:31px 26px; border-right:1px solid #cfcac1; }
.iss-native .experience-grid .iss-card:last-child { border-right:0; }
.iss-native .iss-number { color:#9b7653; font-size:.68rem; }
.iss-native .experience-grid p,.iss-native .scope-row p,.iss-native .collab-columns p { margin:0; color:#737a78; font-size:.92rem; }
.iss-native .iss-split-copy > .pagelayer-row-holder { display:grid; grid-template-columns:1.18fr .82fr; gap:75px; align-items:end; }
.iss-native .iss-split-copy p { margin:0; color:#737a78; }
.iss-native .project-image .pagelayer-image-holder { aspect-ratio:3/2; }
.iss-native .project-caption > .pagelayer-row-holder { display:flex; justify-content:space-between; gap:40px; }
.iss-native .project-caption .pagelayer-col { width:auto; }
.iss-native .scope-row > .pagelayer-row-holder { display:grid; grid-template-columns:1.4fr .8fr .8fr; }
.iss-native .scope-row > .pagelayer-row-holder > .iss-card { padding:30px 27px; border-right:1px solid #d9d7d1; }
.iss-native .scope-row > .pagelayer-row-holder > .iss-card:last-child { border-right:0; }
.iss-native .projects-more { display:block; text-align:right; }
.iss-native .steps { display:block; }
.iss-native .iss-step { padding:27px 0; border-bottom:1px solid #bac4c6; }
.iss-native .iss-step > .pagelayer-row-holder { display:grid; grid-template-columns:65px 1fr; gap:20px; }
.iss-native .steps h3 { margin:0 0 6px; font-size:1rem; font-weight:600; }
.iss-native .steps p { margin:0; color:#667271; }
.iss-native .collab-columns > .pagelayer-row-holder { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.iss-native .collab-columns .iss-card { padding:31px 32px 15px; border-right:1px solid #d9d7d1; }
.iss-native .collab-columns .iss-card:last-child { border-right:0; }
.iss-native .iss-collab-cta { margin-top:50px; }
.iss-native.call-strip .iss-call-inner { display:block; }
.iss-native .iss-call-inner > .pagelayer-row-holder { display:grid; grid-template-columns:1fr auto; gap:40px; align-items:center; }
.iss-native .iss-call-inner .pagelayer-col { width:100%; }
.iss-native.call-strip .eyebrow { margin-bottom:10px; }
.iss-native .iss-call-copy .iss-rich-text:last-child p { max-width:650px; margin:18px 0 0; color:#b9bfbd; }
.iss-native .contact-heading > .pagelayer-row-holder { display:grid; grid-template-columns:1.1fr .9fr; gap:100px; align-items:end; }
.iss-native .contact-heading > .pagelayer-row-holder > .pagelayer-col:last-child > .pagelayer-col-holder > .iss-rich-text p { max-width:590px; margin:0 0 28px; color:#737a78; }
.iss-native .contact-links { display:block; }
.iss-native .contact-links > .pagelayer-row-holder { display:grid; gap:16px; }
.iss-native .iss-contact-link a { padding:0 0 5px; color:inherit; border-bottom:1px solid #b9c2c0; background:transparent; font-size:.85rem; text-align:left; white-space:normal; }
.iss-native .iss-text-link a { display:inline-flex; align-items:center; gap:12px; padding:0; border:0; border-radius:0; background:transparent; color:inherit; font-size:.76rem; letter-spacing:.12em; text-transform:uppercase; }
.iss-native .iss-text-link a::after { content:'→'; color:#9b7653; transition:transform .25s ease; }
.iss-native .iss-text-link a:hover::after { transform:translateX(6px); }
.iss-native .iss-button a { display:inline-flex; align-items:center; justify-content:center; min-height:56px; padding:0 28px; border:1px solid #202525; border-radius:0; color:white; background:#202525; font-size:.76rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.iss-native .iss-button-light a { border-color:white; color:#202525; background:white; }
.iss-native .iss-button a:hover { color:white; border-color:#9b7653; background:#9b7653; }
.iss-native.theater-hero > .pagelayer-row-holder { display:block; z-index:1; }
.iss-native .theater-hero-copy { width:min(calc(100% - 96px),var(--iss-max)); margin-inline:auto; }
.iss-native .theater-hero-copy .iss-rich-text:last-child p { max-width:650px; margin:31px 0 0; color:#e1e2df; font-size:1.2rem; }
.iss-native.theater-intro .editorial-grid .iss-rich-text:last-child { max-width:760px; color:#737a78; }
.iss-native .delivery-list span { display:block; }
.iss-native.theater-delivery .lead { margin-top:36px; }
.iss-native.theater-cta p:not(.eyebrow) { max-width:650px; margin:38px auto; color:#737a78; }
.iss-native .theater-actions { display:block; }
.iss-native .theater-actions > .pagelayer-row-holder { display:flex; flex-wrap:wrap; gap:28px; }
.iss-native .theater-actions .pagelayer-col { width:auto; }
@media(max-width:980px) {
 .iss-native .container,.iss-native .hero-content,.iss-native .theater-hero-copy { width:calc(100% - 48px); }
 .iss-native .editorial-grid > .pagelayer-row-holder,.iss-native .projects-head > .pagelayer-row-holder,.iss-native .iss-split-copy > .pagelayer-row-holder,.iss-native .section-heading > .pagelayer-row-holder,.iss-native.theater-elements .section-heading > .pagelayer-row-holder,.iss-native .contact-heading > .pagelayer-row-holder { grid-template-columns:1fr; gap:48px; }
 .iss-native .smart-grid > .pagelayer-row-holder,.iss-native.cinema-preview > .pagelayer-row-holder,.iss-native.room-first > .pagelayer-row-holder { grid-template-columns:1fr; }
 .iss-native .principles > .pagelayer-row-holder,.iss-native .scope-row > .pagelayer-row-holder,.iss-native .collab-columns > .pagelayer-row-holder { grid-template-columns:1fr; }
 .iss-native .experience-grid > .pagelayer-row-holder { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .iss-native .smart-image,.iss-native .cinema-image,.iss-native .room-image { height:64vw; min-height:0; }
 .iss-native .scope-row .iss-card,.iss-native .collab-columns .iss-card { border-right:0; border-bottom:1px solid #d9d7d1; }
 .iss-native .iss-call-inner > .pagelayer-row-holder { grid-template-columns:1fr; }
}
@media(max-width:600px) {
 .iss-native .container,.iss-native .hero-content,.iss-native .theater-hero-copy { width:calc(100% - 32px); }
 .iss-native .iss-scroll-cell { display:none; }
 .iss-native .experience-grid > .pagelayer-row-holder { grid-template-columns:1fr; }
 .iss-native .experience-grid .iss-card { min-height:auto; border-right:0; border-bottom:1px solid #cfcac1; }
 .iss-native .smart-image,.iss-native .cinema-image,.iss-native .room-image { height:78vw; }
 .iss-native .project-caption > .pagelayer-row-holder { flex-direction:column; gap:5px; }
 .iss-native .smart-copy,.iss-native .cinema-card,.iss-native .room-copy { padding:65px 24px; }
}

/* Global header and footer templates. */
.iss-native.site-header { display:block; }
.iss-native.site-header > .pagelayer-row-holder,.iss-native.site-header > .pagelayer-row-holder > .pagelayer-col,.iss-native.site-header > .pagelayer-row-holder > .pagelayer-col > .pagelayer-col-holder { height:100%; }
.iss-native .header-inner { display:block; }
.iss-native .header-inner > .pagelayer-row-holder { display:flex; flex-wrap:nowrap; justify-content:space-between; align-items:center; height:100%; gap:28px; }
.iss-native .header-inner > .pagelayer-row-holder > .pagelayer-col { width:auto; }
.iss-native .site-branding { width:170px !important; }
.iss-native .site-branding img { width:170px; }
.iss-native .iss-header-call a { display:inline-flex; align-items:center; min-height:38px; padding:0 17px; border:1px solid #202525; border-radius:0; color:#202525; background:transparent; font-size:.68rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.iss-native .iss-header-call a:hover { color:white; background:#202525; }
body.page-template-page-home-theater .iss-native.site-header:not(.is-scrolled) .iss-header-call a { color:white; border-color:white; }
.iss-native.site-footer .footer-inner { display:block; }
.iss-native.site-footer .footer-inner > .pagelayer-row-holder { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; }
.iss-native.site-footer .footer-inner > .pagelayer-row-holder > .pagelayer-col { width:auto; }
.iss-native .iss-footer-brand img { width:215px; }
.iss-native .iss-footer-tagline p { margin:22px 0 0; color:#929a98; }
.iss-native .footer-meta { display:block; }
.iss-native .footer-meta > .pagelayer-col-holder { display:grid; justify-items:end; gap:7px; }
.iss-native .iss-footer-link a { padding:0; color:#8c9492; background:transparent; border-radius:0; font-size:.62rem; letter-spacing:.1em; }
.iss-native .iss-footer-knx { width:78px; margin-top:12px; opacity:.86; }
.iss-native .iss-footer-knx img { width:78px; }
@media(max-width:1180px) {
 .iss-native .site-branding,.iss-native .site-branding img { width:150px !important; }
 .iss-native .site-nav,.iss-native .site-menu { gap:22px; }
}
@media(max-width:980px) {
 .iss-native.site-header .site-nav { display:none; }
 .iss-native.site-header .site-nav.is-open { display:flex; }
 .iss-native.site-header .iss-navigation-widget { position:relative; }
 .iss-native .iss-nav-col { margin-left:auto; }
}
@media(max-width:700px) {
 .iss-native .site-branding,.iss-native .site-branding img { width:132px !important; }
 .iss-native .header-inner > .pagelayer-row-holder { gap:14px; }
 .iss-native.site-footer .footer-inner > .pagelayer-row-holder { flex-direction:column; align-items:flex-start; }
 .iss-native .footer-meta > .pagelayer-col-holder { justify-items:start; }
 .iss-native .iss-footer-brand img { width:190px; }
 .iss-native .iss-footer-knx,.iss-native .iss-footer-knx img { width:72px; }
}
/* Native widget wrappers must retain the theme's display scale and gutters. */
.iss-native.hero .hero-content { width:calc(100% - 96px) !important; max-width:1440px; margin-inline:auto !important; }
.iss-native.hero h1 { font-size:clamp(3.6rem,7.4vw,8rem); }
.iss-native.theater-hero h1 { font-size:clamp(4rem,8vw,8.6rem); }
@media(max-width:980px) {
 .iss-native.hero .hero-content { width:calc(100% - 48px) !important; }
 .iss-native.site-header .iss-header-call { display:none; }
 .iss-native.site-header .site-nav.is-open { max-height:calc(100svh - 72px); overflow-y:auto; gap:0; }
}
@media(max-width:600px) {
 .iss-native.hero .hero-content { width:calc(100% - 32px) !important; }
 .iss-native.hero h1 { font-size:clamp(3.25rem,15vw,5rem); }
 .iss-native.theater-hero h1 { font-size:clamp(3.45rem,16vw,5.3rem); }
 .iss-native .iss-contact-link a { overflow-wrap:anywhere; }
 .iss-native .footer-meta { max-width:100%; }
 .iss-native .iss-footer-services { overflow-wrap:anywhere; }
}

@media(max-width:600px) {
 .iss-native.hero .hero-content > .pagelayer-col-holder { padding-inline:16px; }
 .iss-native.hero h1 { font-size:clamp(2.8rem,12vw,4.25rem) !important; }
 .iss-native .hero-copy p { overflow-wrap:normal; }
}

/* Editable Projects and Blog pages. */
.iss-native .topics-heading,.iss-native .topics-grid,.iss-native .gallery-actions { display:block; }
.iss-native .topics-heading > .pagelayer-row-holder { display:grid; grid-template-columns:.42fr 1.58fr; gap:80px; }
.iss-native .topics-grid > .pagelayer-row-holder { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); }
.iss-native .topics-grid .iss-topic-card { width:100%; min-height:330px; padding:32px 26px; border-right:1px solid #d9d7d1; }
.iss-native .topics-grid .iss-topic-card:last-child { border-right:0; }
.iss-native .iss-project-grid > .pagelayer-row-holder { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.iss-native .iss-project-grid .iss-project-cell { width:100%; }
.iss-native .iss-project-media .pagelayer-image-holder { aspect-ratio:3/2; }
.iss-native .iss-project-media img { width:100%; height:100%; object-fit:cover; }
.iss-native .iss-project-cell .pagelayer-video { aspect-ratio:3/2; }
.iss-native .iss-project-cell video { width:100%; height:100%; object-fit:contain; }
.iss-native .gallery-actions > .pagelayer-row-holder { display:flex; justify-content:space-between; align-items:center; gap:30px; }
.iss-native .gallery-actions > .pagelayer-row-holder > .pagelayer-col { width:auto; }
.iss-native .iss-blog-feed .iss-feed-columns-1 { grid-template-columns:1fr; }
.iss-native .iss-blog-feed .iss-feed-columns-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.iss-native .iss-blog-feed .iss-feed-columns-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.iss-native .iss-blog-feed .iss-pagination { width:100%; }
.iss-native .blog-card h2 { overflow-wrap:normal; }
@media(max-width:1000px) {
 .iss-native .topics-heading > .pagelayer-row-holder { grid-template-columns:1fr; gap:28px; }
 .iss-native .topics-grid > .pagelayer-row-holder { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .iss-native .topics-grid .iss-topic-card { border-bottom:1px solid #d9d7d1; }
 .iss-native .iss-project-grid > .pagelayer-row-holder { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
 .iss-native .iss-project-grid > .pagelayer-row-holder,.iss-native .iss-blog-feed .blog-grid { grid-template-columns:1fr; }
 .iss-native .gallery-actions > .pagelayer-row-holder { flex-direction:column; align-items:flex-start; }
}
@media(max-width:620px) {
 .iss-native .topics-grid > .pagelayer-row-holder { grid-template-columns:1fr; }
 .iss-native .topics-grid .iss-topic-card { min-height:0; border-right:0; }
}

/* A separate grid item for each image or video, with editable white spacing. */
.iss-native.projects-gallery { --iss-project-gap:20px; }
.iss-native .iss-project-grid { background:#fff; }
.iss-native .iss-project-grid > .pagelayer-row-holder { gap:var(--iss-project-gap,20px); }
.iss-native .iss-project-grid:not(.pagelayer-ele) > .pagelayer-row-holder > .pagelayer-col,
.iss-native .iss-project-grid:not(.pagelayer-ele) > .pagelayer-row-holder > .pagelayer-col > .pagelayer-col-holder { display:contents !important; }
.iss-native .iss-project-grid:not(.pagelayer-ele) .pagelayer-image,
.iss-native .iss-project-grid:not(.pagelayer-ele) .pagelayer-video { min-width:0; margin:0 !important; }
.iss-native .iss-project-grid.pagelayer-ele .pagelayer-col-holder > :is(.pagelayer-image,.pagelayer-video) + :is(.pagelayer-image,.pagelayer-video) { margin-top:var(--iss-project-gap,20px) !important; }

/* Adapt to the selected page size and center an incomplete final row. */
.iss-native .iss-project-grid:not(.pagelayer-ele) > .pagelayer-row-holder {
  --iss-project-layout-cols:var(--iss-project-columns,3);
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  align-items:flex-start;
}
.iss-native .iss-project-grid:not(.pagelayer-ele) :is(.pagelayer-image,.pagelayer-video) {
  flex:0 0 calc((100% - (var(--iss-project-layout-cols) - 1)*var(--iss-project-gap,20px))/var(--iss-project-layout-cols));
  width:calc((100% - (var(--iss-project-layout-cols) - 1)*var(--iss-project-gap,20px))/var(--iss-project-layout-cols)) !important;
  max-width:calc((100% - (var(--iss-project-layout-cols) - 1)*var(--iss-project-gap,20px))/var(--iss-project-layout-cols)) !important;
}
.iss-native .iss-project-grid:not(.pagelayer-ele) .pagelayer-image-holder {
  width:100%;
  aspect-ratio:3/2;
}
.iss-native .iss-project-grid:not(.pagelayer-ele) .pagelayer-image img {
  display:block;
  width:100% !important;
  height:100% !important;
  object-fit:cover;
}
@media(max-width:1000px) {
  .iss-native .iss-project-grid:not(.pagelayer-ele) > .pagelayer-row-holder {
    --iss-project-layout-cols:min(2,var(--iss-project-columns,3));
  }
}
@media(max-width:700px) {
  .iss-native .iss-project-grid:not(.pagelayer-ele) > .pagelayer-row-holder {
    --iss-project-layout-cols:1;
  }
}

/* Restore the v2.0.0 Home and Home Theater layout through native widget wrappers. */
body:is(.home,.page-template-page-home-theater) main#content .iss-native .principles div {
  display:block; padding:0; background:transparent; gap:0;
}
body:is(.home,.page-template-page-home-theater) main#content .iss-native .principles > .pagelayer-row-holder {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; background:#d9d7d1;
}
body:is(.home,.page-template-page-home-theater) main#content .iss-native .principles > .pagelayer-row-holder > .pagelayer-col > .pagelayer-col-holder {
  display:grid; gap:12px; padding:30px; background:#fbfbf9;
}
body:is(.home,.page-template-page-home-theater) main#content .iss-native .scope-row > .pagelayer-row-holder { padding:0; border:0; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .smart-copy h2 { font-size:clamp(2.7rem,5vw,5.5rem); }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .approach-intro { margin:28px 0 0; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .collaborations .projects-head,
body:is(.home,.page-template-page-home-theater) main#content .iss-native.collaborations .projects-head { margin-bottom:75px; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .iss-collab-cta { margin-top:58px; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .contact-heading { margin-bottom:70px; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .contact-links > .pagelayer-row-holder { display:flex; flex-wrap:wrap; align-items:flex-start; gap:28px; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .contact-links > .pagelayer-row-holder > .pagelayer-col { width:auto; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .iss-contact-link a { color:#525b59; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .iss-contact-link a span { color:inherit; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .projects-more .iss-text-link { text-align:right; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native.theater-intro .iss-rich-text:last-child p,
body:is(.home,.page-template-page-home-theater) main#content .iss-native .room-copy .iss-rich-text:last-child p { margin:1em 0; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native.theater-delivery .projects-head > .pagelayer-row-holder {
  display:grid; grid-template-columns:.42fr 1.58fr; gap:80px;
}
body:is(.home,.page-template-page-home-theater) main#content .iss-native .theater-actions > .pagelayer-row-holder { align-items:center; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .theater-actions .pagelayer-col { display:block; width:auto; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .theater-actions .pagelayer-col.text-link::after,
body:is(.home,.page-template-page-home-theater) main#content .iss-native .theater-actions .pagelayer-col.call-link::before { content:none; }
body:is(.home,.page-template-page-home-theater) main#content .iss-native .iss-call-link a::before { content:""; display:inline-block; width:15px; height:15px; margin-right:10px; vertical-align:-2px; background:currentColor; -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round' d='M22 16.92v3a2 2 0 0 1-2.18 2A19.79 19.79 0 0 1 3.09 5.18 2 2 0 0 1 5.07 3h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L9 10.7a16 16 0 0 0 4.3 4.3l1.24-1.24a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92Z'/%3E%3C/svg%3E") center/contain no-repeat; mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round' d='M22 16.92v3a2 2 0 0 1-2.18 2A19.79 19.79 0 0 1 3.09 5.18 2 2 0 0 1 5.07 3h3a2 2 0 0 1 2 1.72c.12.9.33 1.78.62 2.63a2 2 0 0 1-.45 2.11L9 10.7a16 16 0 0 0 4.3 4.3l1.24-1.24a2 2 0 0 1 2.11-.45c.85.29 1.73.5 2.63.62A2 2 0 0 1 22 16.92Z'/%3E%3C/svg%3E") center/contain no-repeat; }
@media(max-width:980px) {
 body:is(.home,.page-template-page-home-theater) main#content .iss-native .principles > .pagelayer-row-holder,
 body:is(.home,.page-template-page-home-theater) main#content .iss-native.theater-delivery .projects-head > .pagelayer-row-holder { grid-template-columns:1fr; }
}
@media(max-width:700px) {
 body:is(.home,.page-template-page-home-theater) main#content .iss-native .projects-more .iss-text-link { text-align:left; }
 body:is(.home,.page-template-page-home-theater) main#content .iss-native .theater-actions > .pagelayer-row-holder { flex-direction:column; align-items:flex-start; }
}
@media(max-width:600px) {
 body:is(.home,.page-template-page-home-theater) main#content .iss-native.hero .hero-content > .pagelayer-col-holder { padding-inline:0; }
 body:is(.home,.page-template-page-home-theater) main#content .iss-native.hero h1 { font-size:clamp(3.25rem,15vw,5rem) !important; }
}

/* Content links: warm beige matching the homepage eyebrow. */
body.single-post .post-body :is(p,li,blockquote,figcaption) a,
body.single-project .iss-project-body :is(p,li,blockquote,figcaption) a {
  color: #9b7653 !important;
  font-weight: 600 !important;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
body.single-post .post-body :is(p,li,blockquote,figcaption) a:hover,
body.single-project .iss-project-body :is(p,li,blockquote,figcaption) a:hover { color: #795b3f !important; }
body.single-post .post-body :is(p,li,blockquote,figcaption) a:focus-visible,
body.single-project .iss-project-body :is(p,li,blockquote,figcaption) a:focus-visible { outline: 2px solid #9b7653; outline-offset: 3px; }

/* Full-width outer PageLayer wrapper on the Greek articles listing. */
body.page-id-7 main#content > .p-9ja8105 > .pagelayer-row-holder { max-width: none; width: 100%; }
body.page-id-7 main#content > .p-9ja8105 > .pagelayer-row-holder > .pagelayer-col > .pagelayer-col-holder { padding: 0; }
