/*
Theme Name: Peak Houses
Author: Peak Houses
Description: Peak Houses — premium architectural editorial website.
Version: 4.1.6
Text Domain: peak-houses
*/
:root{--ink:#eae9e4;--muted:#b7b7b2;--charcoal:#1b1c1b;--paper:#f2f0eb;--panel-width:80vw;--max:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#171817;color:var(--ink);font:15px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font:inherit}.ph-landing{position:relative;min-height:100svh;padding:clamp(35px,6vw,75px) 0 75px;isolation:isolate}.ph-backdrop{position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;filter:brightness(.55) blur(3px);transform:scale(1.015)}.ph-landing:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(16,17,15,.12),rgba(16,17,15,.27))}.ph-shell{width:min(var(--panel-width),var(--max));margin:0 auto;background:var(--charcoal);box-shadow:0 28px 75px #0008;padding:0 clamp(16px,2vw,30px) clamp(16px,2vw,30px)}.ph-header{height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff16;gap:25px}.ph-logo{font-size:16px;font-weight:700;letter-spacing:.13em;white-space:nowrap}.ph-nav{display:flex;align-items:center;gap:clamp(12px,2vw,28px)}.ph-nav a{font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#d7d7d2;transition:color .2s}.ph-nav a:hover,.ph-nav a:focus{color:#fff}.ph-contact{border:1px solid #ffffff65;border-radius:99px;padding:8px 15px}.ph-hero-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,31%);gap:32px;align-items:end;padding:clamp(30px,4.1vw,66px) 0 25px}.ph-tags{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:17px}.ph-tags span{border:1px solid #ffffff70;border-radius:30px;padding:3px 12px;font-size:10px;line-height:1.4}.ph-title{font-size:clamp(28px,3.15vw,61px);font-weight:400;line-height:1.04;letter-spacing:-.055em;margin:0;text-transform:uppercase}.ph-hero-description{font-size:clamp(11px,.9vw,14px);line-height:1.5;color:#d2d2cc;max-width:315px;margin:0 0 4px auto}.ph-photo{width:100%;height:clamp(280px,35vw,590px);object-fit:cover;object-position:center 54%;background:#353733}.ph-hero-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:14px;color:#b8b8b1;text-transform:uppercase;letter-spacing:.15em;font-size:10px}.ph-hero-bottom a{border-bottom:1px solid #b8b8b1;padding-bottom:2px}.ph-section{padding:110px 0}.ph-inner{width:min(1200px,calc(100% - 64px));margin:auto}.ph-light{background:var(--paper);color:#1b1c1b}.ph-dark{background:#1b1c1b}.ph-kicker{text-transform:uppercase;letter-spacing:.22em;font-size:11px;color:#a99e8e}.ph-section h2{font-weight:400;font-size:clamp(35px,5vw,74px);line-height:1.06;letter-spacing:-.045em;margin:15px 0 32px}.ph-copy{font-size:clamp(16px,1.5vw,20px);max-width:700px;color:#62635e}.ph-dark .ph-copy{color:#b4b4af}.ph-model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;margin-top:45px}.ph-model{position:relative;background:#30322f;min-height:330px;overflow:hidden}.ph-model img{width:100%;height:390px;object-fit:cover;transition:transform .5s}.ph-model:hover img{transform:scale(1.035)}.ph-model:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#000a);pointer-events:none}.ph-model h3{position:absolute;bottom:14px;left:23px;z-index:1;font-size:26px;font-weight:400}.ph-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;margin-top:52px}.ph-step{border-top:1px solid #555;padding-top:18px}.ph-step b{font-size:26px;font-weight:400;color:#bdb2a3}.ph-step h3{font-size:19px;font-weight:400;margin:12px 0}.ph-step p{font-size:14px;color:#b8b8b2}.ph-button{display:inline-block;border:1px solid currentColor;padding:12px 22px;margin-top:20px;text-transform:uppercase;letter-spacing:.13em;font-size:11px}.ph-footer{background:#111211;padding:35px 0;color:#b5b5b0}.ph-footer-inner{width:min(1200px,calc(100% - 64px));margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px}.ph-page-head{padding:155px 0 70px;background:#1b1c1b}.ph-page-head h1{font-size:clamp(38px,6vw,80px);font-weight:400;letter-spacing:-.05em;margin:0}.ph-page-body{min-height:45vh}.ph-skip{position:absolute;left:-999px}.ph-skip:focus{left:10px;top:10px;background:#fff;color:#000;padding:10px;z-index:100}
@media(max-width:980px){:root{--panel-width:86vw}.ph-hero-heading{grid-template-columns:1fr 34%}.ph-title{font-size:clamp(27px,4vw,46px)}}
@media(max-width:700px){:root{--panel-width:calc(100vw - 24px)}.ph-landing{padding:12px 0 25px}.ph-shell{padding:0 13px 13px}.ph-header{height:auto;min-height:68px;align-items:flex-start;flex-direction:column;gap:10px;padding:16px 0}.ph-logo{font-size:14px}.ph-nav{width:100%;justify-content:space-between;gap:8px}.ph-nav a{font-size:9px;letter-spacing:.07em}.ph-contact{padding:4px 8px}.ph-hero-heading{display:block;padding:32px 0 18px}.ph-title{font-size:clamp(29px,7.4vw,53px);line-height:1.08}.ph-hero-description{margin:20px 0 0;max-width:330px;font-size:12px}.ph-photo{height:clamp(270px,78vw,480px)}.ph-hero-bottom{font-size:9px}.ph-section{padding:75px 0}.ph-inner,.ph-footer-inner{width:calc(100% - 36px)}.ph-model-grid,.ph-steps{grid-template-columns:1fr}.ph-model img{height:330px}.ph-footer-inner{display:block}.ph-footer-inner>*{margin:8px 0}}

/* v0.4 — One continuous editorial frame, viewport-relative at every desktop size */
html{min-height:100%;background:#141514}
body{min-height:100vh;background:#141514;isolation:isolate}
body:before{content:"";position:fixed;inset:-12px;z-index:-2;background-image:var(--ph-background-image);background-size:cover;background-position:center;filter:blur(5px) brightness(.46);pointer-events:none;transform:translateZ(0)}
body:after{content:"";position:fixed;inset:0;z-index:-1;background:rgba(8,9,8,.12);pointer-events:none}
.ph-site-frame{width:var(--panel-width,80vw);max-width:none;margin:clamp(30px,4vw,68px) auto 64px;background:var(--charcoal);box-shadow:0 22px 80px #0009;min-height:calc(100vh - 100px);padding:0 clamp(17px,1.45vw,52px);position:relative}
.ph-site-frame>.ph-header{height:clamp(68px,5.1vw,104px)}
.ph-landing{padding:0;min-height:0;isolation:auto}
.ph-landing:after{display:none}
.ph-landing .ph-backdrop{display:none}
.ph-landing .ph-shell{width:100%;max-width:none;padding:0;background:transparent;box-shadow:none}
.ph-hero-heading{padding-top:clamp(42px,4.4vw,105px)}
.ph-photo{height:clamp(290px,32vw,900px)}
.ph-section{padding:clamp(70px,6.5vw,170px) 0;border-top:1px solid #ffffff16}
.ph-inner,.ph-footer-inner{width:100%;max-width:none;margin:0 auto}
.ph-section.ph-light{background:#252725;color:#eae9e4;margin-inline:calc(-1 * clamp(17px,1.45vw,52px));padding-inline:clamp(17px,1.45vw,52px)}
.ph-section.ph-light .ph-copy{color:#c5c4be}
.ph-section.ph-dark{background:transparent}
.ph-section h2{font-size:clamp(34px,3.8vw,92px)}
.ph-steps .ph-step{border-top-color:#ffffff42}
.ph-step p{color:#b8b8b2}
.ph-footer{background:#141514;margin-inline:calc(-1 * clamp(17px,1.45vw,52px));padding:38px clamp(17px,1.45vw,52px);border-top:1px solid #ffffff1a}
.ph-page-head{padding:clamp(90px,9vw,180px) 0 clamp(55px,5vw,105px);background:transparent}
.ph-page-body{min-height:50vh}
.ph-logo{font-size:clamp(14px,1.05vw,24px)}
.ph-nav a{font-size:clamp(10px,.67vw,15px)}
.ph-title{font-size:clamp(30px,3.2vw,98px)}
.ph-hero-description{font-size:clamp(12px,.86vw,20px);max-width:440px}
.ph-tags span{font-size:clamp(9px,.6vw,14px)}
.ph-model img{height:clamp(290px,25vw,650px)}
@media(min-width:701px){.ph-site-frame{width:var(--panel-width,80vw)}}
@media(max-width:980px){.ph-site-frame{width:88vw}.ph-hero-heading{grid-template-columns:1fr 34%}}
@media(max-width:700px){
body:before{position:fixed;filter:blur(5px) brightness(.35)}
.ph-site-frame{width:calc(100% - 22px);margin:11px auto 20px;padding:0 14px}
.ph-site-frame>.ph-header{height:auto;min-height:70px}
.ph-landing{padding:0}
.ph-landing .ph-shell{padding:0}
.ph-section{padding:68px 0}
.ph-section.ph-light,.ph-footer{margin-inline:-14px;padding-inline:14px}
.ph-inner,.ph-footer-inner{width:100%}
.ph-photo{height:clamp(265px,75vw,480px)}
.ph-title{font-size:clamp(28px,7vw,52px)}
.ph-hero-heading{display:block;padding:35px 0 20px}
.ph-hero-description{margin:20px 0 0;font-size:12px}
.ph-page-head{padding:80px 0 55px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ph-model img{transition:none}}

/* v0.6.0 — typography-only review. Preserve v0.4 layout and imagery. */
/* Desktop: deliberate fixed type scale, independent of viewport width. */
.ph-title {font-size:40px;line-height:1.12;letter-spacing:-.045em;font-weight:400;}
.ph-section h2, .ph-page-head h1 {font-size:30px;line-height:1.18;font-weight:400;}
.ph-model h3, .ph-step h3, .ph-section h3, .ph-page-body h3 {font-size:18px;line-height:1.35;font-weight:500;}
.ph-copy, .ph-hero-description, .ph-step p, .ph-page-body p, .ph-page-body li {font-size:14px;line-height:1.7;}
.ph-nav a {font-size:16px;font-weight:700;}
/* Keep ordinary page body text consistent with the agreed 14px scale. */
.ph-page-body {font-size:14px;line-height:1.7;}
@media(max-width:700px) {
  .ph-title {font-size:clamp(24px,6.5vw,40px);}
  .ph-section h2, .ph-page-head h1 {font-size:clamp(26px,6.3vw,30px);}
  .ph-nav a {font-size:12px;font-weight:700;letter-spacing:.02em;}
}

/* v0.7.0 — only paragraph text to 15px; navigation stays 16px bold. */
.ph-copy, .ph-hero-description, .ph-step p, .ph-page-body p, .ph-page-body li {font-size:15px;line-height:1.7;}
.ph-page-body {font-size:15px;}
.ph-nav a {font-size:16px;font-weight:700;}
@media(max-width:700px){.ph-nav a{font-size:12px;font-weight:700;}}

/* v0.8.0 — golden logo, uncluttered hero, regular navigation */
.ph-logo{display:flex;align-items:center;flex:0 1 auto;min-width:0;}
.ph-logo img{display:block;width:clamp(180px,19vw,300px);height:auto;max-height:65px;object-fit:contain;object-position:left center;}
.ph-nav a{font-size:16px;font-weight:400;}
.ph-hero-heading{padding-top:clamp(20px,2.2vw,42px);padding-bottom:clamp(14px,1.4vw,24px);}
@media(max-width:700px){.ph-logo img{width:clamp(175px,53vw,260px);max-height:60px;}.ph-nav a{font-size:12px;font-weight:400;}.ph-hero-heading{padding-top:20px;padding-bottom:16px;}}

/* v0.9.0 — agreed homepage content, 3-column models, numbered process, footer */
.ph-hero-heading{display:block;max-width:900px}
.ph-title{text-transform:none}
.ph-hero-subtitle{font-size:15px;line-height:1.6;letter-spacing:.075em;text-transform:uppercase;color:#d2d2cc;margin:17px 0 0;max-width:800px}
.ph-about-signoff{font-size:15px;line-height:1.7;color:#e8e4d9;margin-top:25px}
.ph-section h3{margin:30px 0 12px}
.ph-model-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:38px}
.ph-model{min-height:0;aspect-ratio:4/3}
.ph-model img{height:100%;width:100%;object-fit:cover}
.ph-model h3{font-size:18px;margin:0;bottom:16px;left:17px;right:12px}
.ph-process-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:28px}
.ph-process-intro h2{margin:12px 0 0;max-width:670px}
.ph-process-link{font-size:11px;letter-spacing:.035em;line-height:1.4;border:1px solid #d5d0c2;border-radius:100px;padding:12px 18px;white-space:nowrap;transition:background .2s,color .2s}
.ph-process-link:hover,.ph-process-link:focus-visible{background:#eae9e4;color:#1b1c1b}
.ph-steps{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-top:52px}
.ph-step{border:0;padding:0;min-width:0}
.ph-step-marker{display:flex;align-items:center;gap:6px;margin-bottom:25px}
.ph-step-marker span{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border:1px solid #9f9e96;border-radius:50%;font-size:11px;color:#c7c4ba}
.ph-step-marker:after{content:"";height:1px;flex:1;background:#7b7d77;min-width:5px}
.ph-step:last-child .ph-step-marker:after{display:none}
.ph-step h3{font-size:18px;font-weight:500;line-height:1.35;margin:0 0 10px}
.ph-step p{font-size:15px;line-height:1.65;margin:0;color:#b8b8b2}
.ph-contact-cta{position:relative;isolation:isolate;overflow:hidden;min-height:440px;display:flex;align-items:center}
.ph-contact-cta:before{content:"";position:absolute;inset:0;z-index:-2;background-image:var(--ph-contact-background,var(--ph-background-image));background-position:center;background-size:cover;filter:brightness(.48)}
.ph-contact-cta:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,16,15,.8),rgba(14,16,15,.25))}
.ph-contact-content{padding:20px 0}
.ph-contact-content h2{margin:16px 0 26px}
.ph-contact-content p{font-size:15px;line-height:1.7;max-width:590px}
.ph-contact-content .ph-button{border-radius:40px}
.ph-footer-inner{display:block}
.ph-footer-main{display:grid;grid-template-columns:1.3fr 1fr 1.2fr;gap:35px;align-items:start;padding:12px 0 35px}
.ph-footer-brand img{width:min(250px,100%);height:auto}
.ph-footer-brand p{font-size:13px;line-height:1.6}
.ph-footer-nav{display:flex;flex-direction:column;gap:14px}
.ph-footer-contact p{margin:0 0 15px;line-height:1.7}
.ph-footer-contact strong{font-weight:500;color:#eae9e4}
.ph-footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff28;padding-top:20px;color:#b5b5b0}
.ph-footer a:hover{text-decoration:underline}
@media(max-width:1100px){.ph-steps{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:35px}.ph-step:nth-child(3) .ph-step-marker:after{display:none}.ph-process-intro{align-items:flex-start;flex-direction:column}.ph-process-link{white-space:normal}}
@media(max-width:700px){.ph-hero-subtitle{font-size:13px}.ph-model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ph-model h3{font-size:15px}.ph-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 16px}.ph-step:nth-child(3) .ph-step-marker:after{display:block}.ph-step:nth-child(even) .ph-step-marker:after{display:none}.ph-step h3{font-size:16px}.ph-step p{font-size:14px}.ph-footer-main{grid-template-columns:1fr 1fr;gap:22px}.ph-footer-brand{grid-column:1/-1}.ph-footer-bottom{flex-wrap:wrap}}
@media(max-width:420px){.ph-model-grid{grid-template-columns:1fr}.ph-steps{grid-template-columns:1fr}.ph-step-marker:after{display:block!important}.ph-step:last-child .ph-step-marker:after{display:none!important}.ph-footer-main{grid-template-columns:1fr}.ph-footer-brand{grid-column:auto}}

/* v1.0 — approved refinements; preserve established frame and background */
@media(min-width:701px){.ph-nav a{font-size:15px;font-weight:400}}
.ph-kicker{font-size:15px;letter-spacing:.15em;line-height:1.45}
.ph-hero-bottom{letter-spacing:.10em}
.ph-about-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(28px,4vw,90px);align-items:center}
.ph-about-text{min-width:0}
.ph-about-image{min-width:0}
.ph-about-image img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}
.ph-model-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:clamp(18px,2vw,35px);margin-top:38px}
.ph-model{flex:0 1 25%;min-width:0;aspect-ratio:auto;min-height:0;overflow:visible;background:transparent;position:static}
.ph-model:after{display:none}
.ph-model-open{display:block;overflow:hidden;aspect-ratio:4/3}
.ph-model-open img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s}
.ph-model-open:hover img,.ph-model-open:focus-visible img{transform:scale(1.035)}
.ph-model h3{position:static;font-size:18px;font-weight:500;line-height:1.35;margin:16px 0 5px}
.ph-model p{font-size:15px;color:#c4c3bd;line-height:1.5;margin:0 0 15px}
.ph-model-details{display:inline-block;font-size:12px;letter-spacing:.08em;border-bottom:1px solid #a99e8e;padding-bottom:5px}
.ph-model-details:hover,.ph-model-details:focus-visible{color:#fff;border-color:#fff}
.ph-contact-cta:before{background-image:url('assets/contact-background.png');background-position:center;filter:brightness(.65)}
.ph-concept-modal[hidden]{display:none!important}
.ph-concept-modal{position:fixed;inset:0;z-index:999999;background:rgba(8,9,9,.97);display:flex;align-items:center;justify-content:center;padding:48px 12px 60px}
.ph-concept-view{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:auto}
.ph-concept-view.is-zoomed{display:block;text-align:center}
.ph-concept-view img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;display:block;margin:auto}
.ph-concept-close{position:absolute;right:18px;top:9px;z-index:2;background:#202221;color:white;border:1px solid #777;border-radius:50%;width:40px;height:40px;cursor:pointer;font-size:28px;line-height:1}
.ph-concept-controls{position:absolute;bottom:10px;left:50%;transform:translateX(-50%);display:flex;gap:8px;white-space:nowrap}
.ph-concept-controls button{background:#242624;color:#fff;border:1px solid #888;border-radius:4px;padding:6px 12px;cursor:pointer}
@media(max-width:1050px){.ph-about-layout{grid-template-columns:1fr 1fr;gap:25px}.ph-model{flex-basis:29%}}
@media(max-width:700px){.ph-kicker{font-size:14px}.ph-about-layout{grid-template-columns:1fr}.ph-about-image{max-width:520px}.ph-model-grid{gap:25px 14px}.ph-model{flex-basis:calc(50% - 8px)}.ph-model h3{font-size:17px}.ph-model-details{font-size:11px}.ph-concept-modal{padding:54px 5px 65px}}
@media(max-width:420px){.ph-model{flex-basis:100%}.ph-model-open{aspect-ratio:4/3}}


/* v1.1 — balanced homepage spacing, symmetrical models and footer */
/* One consistent vertical rhythm for all homepage sections. */
:root{--ph-section-space:clamp(54px,4.2vw,88px);--ph-panel-gutter:clamp(17px,1.45vw,52px)}
.home .ph-section{padding-top:var(--ph-section-space);padding-bottom:var(--ph-section-space)}
/* Keep about image and text vertically centered, without excess blank space. */
.home #o-nama .ph-about-layout{align-items:center}
/* Give the narrow caption strip equal breathing room above and below. */
.ph-hero-bottom{padding:14px 0;min-height:0}
.ph-hero-bottom a{margin-bottom:0}
/* Contact photo must cover the entire full-bleed panel section, not only the inset content. */
.home .ph-contact-cta{margin-inline:calc(-1 * var(--ph-panel-gutter));padding-inline:var(--ph-panel-gutter);background:#171917;min-height:440px}
.home .ph-contact-cta:before{inset:0;background-image:var(--ph-contact-background,url('assets/contact-background.png'));background-position:center center;background-size:cover;background-repeat:no-repeat}
/* Exactly 25% panel-content width per card; the remaining space is distributed
   equally: left edge, inter-card gaps and right edge. Second row centered. */
.home .ph-model-grid{width:100%;display:flex;flex-wrap:wrap;justify-content:center;column-gap:6.25%;row-gap:clamp(26px,2.2vw,44px)}
.home .ph-model{flex:0 0 25%;max-width:25%;min-width:0}
/* Equal thirds make the middle column mathematically central; contact block
   is flush to the right outer edge while its text remains left aligned. */
.ph-footer-main{grid-template-columns:repeat(3,minmax(0,1fr));gap:0}
.ph-footer-brand{justify-self:start}
.ph-footer-nav{justify-self:center;min-width:max-content}
.ph-footer-contact{justify-self:end;text-align:left;width:max-content;max-width:100%}
@media(max-width:1050px){
 .home .ph-model-grid{column-gap:5%;}
 .home .ph-model{flex-basis:28%;max-width:28%}
}
@media(max-width:700px){
 :root{--ph-section-space:clamp(42px,9vw,60px);--ph-panel-gutter:14px}
 .home .ph-model-grid{column-gap:4%;row-gap:26px}
 .home .ph-model{flex-basis:48%;max-width:48%}
 .ph-hero-bottom{padding:13px 0}
 .ph-footer-main{grid-template-columns:1fr 1fr;gap:22px}
 .ph-footer-brand{grid-column:1/-1}
 .ph-footer-nav{justify-self:start;min-width:0}
 .ph-footer-contact{justify-self:end}
}
@media(max-width:420px){
 .home .ph-model{flex-basis:100%;max-width:100%}
 .ph-footer-main{grid-template-columns:1fr}
 .ph-footer-brand{grid-column:auto}
 .ph-footer-contact{justify-self:start}
}


/* v1.2.0 — final homepage visual unification: one near-black canvas,
   hairline separators matching the header. The photographic contact CTA
   intentionally retains its approved image background. */
:root{--ph-unified-black:#141514;--ph-section-rule:#ffffff16}
.ph-site-frame{background:var(--ph-unified-black)}
.home .ph-section.ph-light,
.home .ph-section.ph-dark{background:var(--ph-unified-black);color:#eae9e4}
.home .ph-section{border-top:1px solid var(--ph-section-rule)}
.home .ph-section.ph-light .ph-copy{color:#c5c4be}
.home .ph-contact-cta{background:var(--ph-unified-black)}
.ph-footer{background:var(--ph-unified-black);border-top:1px solid var(--ph-section-rule)}

/* v1.3.0 technical description page; homepage remains unchanged */
.ph-tech-page{background:var(--ph-unified-black,#141514);color:#eae9e4}.ph-tech-intro,.ph-tech-section{padding:clamp(54px,4.2vw,88px) 0;border-top:1px solid #ffffff16}.ph-tech-section h2{font-size:30px;font-weight:400;margin:12px 0 35px}.ph-tech-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 28px}.ph-tech-card{display:block;min-width:0;background:none;border:0;padding:0;color:inherit;text-align:left;cursor:pointer;font:inherit}.ph-tech-thumb{display:block;aspect-ratio:16/10;overflow:hidden;background:#242524}.ph-tech-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.ph-tech-card:hover img{transform:scale(1.035)}.ph-tech-card-title{display:block;margin:14px 0 10px;font-size:18px;line-height:1.4}.ph-tech-more{font-size:11px;font-weight:700;letter-spacing:.07em;border-bottom:1px solid #999;padding-bottom:6px}.ph-tech-modal{display:none;position:fixed;inset:0;z-index:99999}.ph-tech-modal.is-open{display:block}.ph-tech-modal-backdrop{position:absolute;inset:0;background:#000d}.ph-tech-dialog{position:relative;max-width:1060px;width:calc(100% - 40px);max-height:calc(100dvh - 50px);overflow-y:auto;margin:25px auto;padding:clamp(20px,3.5vw,48px);background:#191a19;color:#eae9e4;box-shadow:0 15px 80px #0009}.ph-tech-dialog h2{font-size:clamp(21px,2vw,30px);font-weight:400;line-height:1.3;padding-right:40px;margin:0 0 24px}.ph-tech-dialog img{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain;background:#f5f4f0}.ph-tech-prose{padding-top:24px;font-size:15px;line-height:1.8;color:#d2d1cb}.ph-tech-prose p{margin:0 0 20px}.ph-tech-prose h3{font-size:20px;font-weight:500;color:#eee;margin:30px 0 8px}.ph-tech-close{position:sticky;top:0;float:right;z-index:2;border:0;background:#30312f;color:#fff;font-size:30px;width:42px;height:42px;cursor:pointer}.ph-tech-locked{overflow:hidden}@media(max-width:850px){.ph-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}}@media(max-width:560px){.ph-tech-grid{grid-template-columns:1fr}.ph-tech-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);margin:8px auto;padding:18px}.ph-tech-section h2{font-size:26px}}

/* v1.4 — original technical imagery and refined responsive popup */
.ph-tech-thumb{aspect-ratio:16/9}.ph-tech-thumb img{object-fit:contain}.ph-tech-dialog img{width:100%;height:auto;max-height:none;object-fit:contain}.ph-tech-prose h3{line-height:1.45}.ph-tech-dialog{overscroll-behavior:contain}

/* v1.5 — technical cards follow the approved homepage 4:3 model grid. */
.ph-tech-grid{display:flex;flex-wrap:wrap;justify-content:center;column-gap:6.25%;row-gap:clamp(26px,2.2vw,44px);width:100%}
.ph-tech-card{flex:0 0 25%;max-width:25%;min-width:0;align-self:flex-start}
.ph-tech-thumb{aspect-ratio:4/3;background:#141514;overflow:hidden}
.ph-tech-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ph-tech-card-title{font-size:18px;line-height:1.4;margin:12px 0 10px}
.ph-tech-section{padding-top:var(--ph-section-space,clamp(54px,4.2vw,88px));padding-bottom:var(--ph-section-space,clamp(54px,4.2vw,88px))}
.ph-tech-hero{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;margin-top:clamp(28px,3vw,54px)}
@media(max-width:1050px){.ph-tech-grid{column-gap:5%}.ph-tech-card{flex-basis:28%;max-width:28%}}
@media(max-width:700px){.ph-tech-grid{column-gap:4%;row-gap:26px}.ph-tech-card{flex-basis:48%;max-width:48%}}
@media(max-width:420px){.ph-tech-card{flex-basis:100%;max-width:100%}}

/* v1.6 — approved technical page corrections; homepage unchanged */
.ph-tech-hero{height:clamp(280px,35vw,590px);aspect-ratio:auto;object-fit:cover}
.ph-tech-section h2{margin-bottom:18px}
.ph-tech-section-copy{max-width:950px;margin:0 0 clamp(28px,3vw,46px);color:#c5c4be;font-size:15px;line-height:1.8}
.ph-tech-section-copy p{margin:0 0 16px}
.ph-tech-section-copy h3{font-size:19px;font-weight:500;color:#eae9e4;line-height:1.4;margin:18px 0 12px}
.ph-tech-card-desc{display:block;color:#bdbdb8;font-size:15px;line-height:1.65;margin:0 0 15px}
.ph-tech-thumb{background:transparent}
.ph-tech-thumb img{object-fit:contain}
.ph-tech-card[data-ph-tech="termo"] .ph-tech-thumb img,.ph-tech-card[data-ph-tech="termo-xxl"] .ph-tech-thumb img,.ph-tech-card[data-ph-tech="pasiv"] .ph-tech-thumb img{object-fit:contain}
@media(max-width:700px){.ph-tech-hero{height:clamp(260px,60vw,420px)}.ph-tech-section-copy{font-size:15px}}

/* v1.7 — exact homepage hero structure, technical-only changes */
.ph-tech-intro{padding:0;border-top:0}
.ph-tech-intro .ph-hero-heading{max-width:900px}
.ph-tech-intro .ph-photo{display:block;width:100%;object-fit:cover;object-position:center 54%;margin:0}
.ph-tech-intro .ph-hero-bottom{padding:14px 0}

/* Match all technical cards to the homepage 4:3 image frame. For facade
   photography crop the source into 4:3 rather than letterboxing it. */
.ph-tech-card[data-ph-tech="demit"] .ph-tech-thumb img,
.ph-tech-card[data-ph-tech="drvo"] .ph-tech-thumb img,
.ph-tech-card[data-ph-tech="ostalo"] .ph-tech-thumb img{object-fit:cover;object-position:center}
.ph-tech-card[data-ph-tech="demit"] .ph-tech-thumb,
.ph-tech-card[data-ph-tech="drvo"] .ph-tech-thumb,
.ph-tech-card[data-ph-tech="ostalo"] .ph-tech-thumb{aspect-ratio:4/3}
/* Wall diagram popup only: enlarge the artwork without cropping. */
.ph-tech-modal.ph-tech-wall-modal .ph-tech-dialog{max-width:1200px}
.ph-tech-modal.ph-tech-wall-modal .ph-tech-dialog img{width:100%;max-width:900px;max-height:none;height:auto;object-fit:contain;margin-inline:auto}
/* Full-bleed architectural photography, mirroring the homepage contact CTA. */
.ph-tech-photo-section{position:relative;isolation:isolate;margin-inline:calc(-1 * var(--ph-panel-gutter));padding-inline:var(--ph-panel-gutter);overflow:hidden;background:#141514}
.ph-tech-photo-section::before{content:"";position:absolute;inset:0;z-index:-2;background-size:cover;background-position:center;background-repeat:no-repeat;filter:brightness(.65)}
.ph-tech-photo-section::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,16,15,.82),rgba(14,16,15,.52))}
.ph-tech-roof::before{background-image:url('assets/contact-background.png')}
.ph-tech-installations::before{background-image:url('assets/technical/installations-background.jpg')}
.ph-tech-photo-section .ph-tech-section-copy,.ph-tech-photo-section .ph-tech-card-desc{color:#e1e0db}
.ph-tech-photo-section .ph-tech-thumb{background:#141514}
.ph-tech-photo-section .ph-tech-more{color:#f1f0ec}

/* v1.8 — photo rhythm: walls dark, roof photo, installations dark, facades photo. */
.ph-tech-installations{background:#141514}
.ph-tech-roof::before{background-size:100% auto;background-position:center center;filter:brightness(.48)}
.ph-tech-roof::after{background:linear-gradient(90deg,rgba(14,16,15,.72),rgba(14,16,15,.32))}
.ph-tech-facades::before{background-image:url('assets/technical/facades-background.jpg');background-size:100% auto;background-position:center center;filter:brightness(.52)}
.ph-tech-facades::after{background:linear-gradient(90deg,rgba(14,16,15,.78),rgba(14,16,15,.42))}
.ph-tech-facades .ph-tech-thumb{aspect-ratio:4/3}
.ph-tech-facades .ph-tech-thumb img{object-fit:cover;object-position:center}
@media(max-width:700px){.ph-tech-roof::before,.ph-tech-facades::before{background-size:cover;background-position:center}}

/* v1.9 — shared homepage hero typography on the technical page.
   No technical-only h1/p typography overrides: both pages use .ph-title and
   .ph-hero-subtitle, including their existing mobile breakpoints. */
.ph-tech-intro .ph-hero-heading{max-width:900px}

/* v1.9 — architectural background fills each entire section, border to border.
   cover preserves house proportions and crops edges when required. */
.ph-tech-roof::before,.ph-tech-facades::before{
  inset:0;
  background-size:cover;
  background-position:center center;
  background-repeat:no-repeat;
}
.ph-tech-roof::after,.ph-tech-facades::after{inset:0}

/* v1.9 — wall cross-section popups only: increase both dialog and artwork.
   Keep original image proportions; allow vertical scrolling on short screens. */
.ph-tech-modal.ph-tech-wall-modal .ph-tech-dialog{
  width:94vw;
  max-width:1500px;
  max-height:calc(100dvh - 24px);
  margin:12px auto;
  padding:clamp(14px,2vw,30px);
  overflow-y:auto;
}
.ph-tech-modal.ph-tech-wall-modal .ph-tech-dialog img{
  display:block;
  width:100%;
  max-width:none;
  max-height:none;
  height:auto;
  object-fit:contain;
  margin:0 auto;
}
@media(max-width:700px){
  .ph-tech-modal.ph-tech-wall-modal .ph-tech-dialog{
    width:calc(100% - 12px);
    max-height:calc(100dvh - 12px);
    margin:6px auto;
    padding:14px;
  }
}

/* v2.0: Technical hero photo inherits the exact homepage .ph-photo height,
   including its mobile breakpoint. No technical-specific height override. */

/* v2.2 — Contact page only. Home and technical styles remain untouched. */
.ph-contact-page{color:#eae9e4;background:#141514}.ph-contact-heading{padding:clamp(40px,4vw,80px) 0 40px}.ph-contact-heading .ph-title{margin:12px 0 18px}.ph-contact-lead{max-width:790px;font-size:15px;line-height:1.8;color:#c4c4be;margin:0}.ph-contact-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:35px 0 55px;border-top:1px solid #ffffff26;border-bottom:1px solid #ffffff26}.ph-contact-detail{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.ph-contact-detail .ph-kicker{margin-bottom:8px}.ph-contact-detail a,.ph-contact-detail p{font-size:15px;line-height:1.7;margin:0}.ph-contact-detail a:hover{text-decoration:underline}.ph-contact-forms{padding:clamp(55px,5vw,100px) 0}.ph-contact-forms h2{font-size:30px;font-weight:400;line-height:1.2;margin:14px 0 18px}.ph-form-chooser{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:36px 0 30px}.ph-form-choice{border:1px solid #ffffff3d;background:#202220;color:#eae9e4;text-align:left;padding:27px;display:flex;flex-direction:column;gap:12px;cursor:pointer;transition:border-color .2s,background .2s}.ph-form-choice strong{font-size:21px;font-weight:400}.ph-form-choice span{font-size:14px;color:#c5c4be}.ph-form-choice em{font-size:11px;font-weight:700;font-style:normal;letter-spacing:.07em;margin-top:12px}.ph-form-choice:hover,.ph-form-choice:focus-visible,.ph-form-choice.is-selected{border-color:#c7ad79;background:#2a2b28}.ph-form-panel{border-top:1px solid #ffffff26;padding:32px 0 10px;scroll-margin-top:20px}.ph-form-panel[hidden],.ph-form-models[hidden],.ph-form-upload[hidden]{display:none!important}.ph-form-panel h3{font-size:24px;font-weight:400;margin:0 0 28px}.ph-form-panel form{display:grid;gap:24px}.ph-form-panel label{display:flex;flex-direction:column;gap:9px;font-size:14px;color:#dddcd7}.ph-form-panel label span:not(.ph-form-model-picture):not(.ph-form-model-name){color:#c9a870}.ph-form-panel input:not([type=radio]):not([type=checkbox]):not([type=file]),.ph-form-panel select,.ph-form-panel textarea{width:100%;border:1px solid #ffffff40;background:#242624;color:#fff;border-radius:0;padding:13px 15px;font:inherit;outline-offset:3px}.ph-form-panel textarea{resize:vertical}.ph-form-panel select{min-height:49px}.ph-fields-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ph-form-fieldset,.ph-form-models{border:0;padding:0;margin:0;min-width:0}.ph-form-fieldset legend,.ph-form-models legend{font-size:15px;margin-bottom:18px}.ph-form-radio-row{display:flex;gap:25px;flex-wrap:wrap}.ph-form-radio-row label,.ph-form-panel .ph-form-check{display:flex;flex-direction:row;align-items:center;gap:10px;cursor:pointer}.ph-form-panel input[type=radio],.ph-form-panel input[type=checkbox]{accent-color:#c5a66c;width:18px;height:18px;flex:0 0 auto}.ph-form-model-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.ph-form-panel .ph-form-model{position:relative;display:flex;gap:8px;cursor:pointer;border:1px solid #ffffff3a;padding:8px}.ph-form-model input{position:absolute;top:15px;left:15px;z-index:2}.ph-form-model-picture{width:100%;aspect-ratio:4/3;overflow:hidden;background:#282a28}.ph-form-model-picture img{width:100%;height:100%;object-fit:cover}.ph-form-model-name{font-size:15px;padding:4px}.ph-form-model:has(input:checked){border-color:#d1b27e;outline:1px solid #d1b27e;background:#303029}.ph-form-upload{padding:18px;background:#242624;border:1px solid #ffffff2a}.ph-form-upload input{margin-top:8px;max-width:100%}.ph-form-upload p,.ph-form-privacy{font-size:13px;line-height:1.7;color:#b8b8b2;margin:0}.ph-form-privacy a{text-decoration:underline}.ph-form-submit{justify-self:start;background:#c7aa78;color:#151614;border:0;padding:16px 25px;letter-spacing:.09em;font-size:12px;font-weight:700;cursor:pointer}.ph-form-submit:hover{background:#e3c99a}.ph-form-notice{padding:15px 18px;border:1px solid #8b9b80;margin-top:20px}.ph-form-error{border-color:#b77b70}.ph-form-honey{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}@media(max-width:850px){.ph-contact-details{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-form-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.ph-contact-details,.ph-form-chooser,.ph-fields-two{grid-template-columns:1fr}.ph-contact-details{gap:26px}.ph-form-model-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.ph-form-choice{padding:22px}.ph-form-radio-row{flex-direction:column;gap:15px}}

/* v2.3 — Scoped Contact refinements only. Existing Home/Technical CSS untouched. */
.ph-contact-page .ph-contact-heading{padding:0 0 34px}
.ph-contact-page .ph-contact-heading .ph-hero-heading{padding:clamp(28px,3vw,54px) 0 18px}
.ph-contact-page .ph-contact-heading .ph-title{margin:0}
/* Contact hero uses the shared .ph-photo rules from Home and Technical. */
.ph-contact-page .ph-contact-intro-copy{margin-top:28px}
.ph-contact-page .ph-contact-details{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start}
.ph-contact-page .ph-contact-detail{align-items:center;text-align:center}
.ph-contact-page .ph-contact-forms{padding:0 0 clamp(55px,5vw,100px)}
.ph-contact-page .ph-contact-chooser-section{position:relative;isolation:isolate;padding:clamp(55px,5vw,90px) clamp(18px,3vw,55px) clamp(55px,5vw,90px);margin-inline:calc(-1 * clamp(16px,2vw,30px));overflow:hidden;border-bottom:1px solid #ffffff26}
.ph-contact-page .ph-contact-chooser-section:before{content:"";position:absolute;inset:0;z-index:-2;background:url('assets/contact-background.png') center/cover no-repeat}
.ph-contact-page .ph-contact-chooser-section:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,13,11,.82),rgba(9,13,11,.55))}
.ph-contact-page .ph-form-chooser{width:min(900px,100%);margin:35px auto 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,42px)}
.ph-contact-page .ph-form-choice{aspect-ratio:4/3;justify-content:center;align-items:flex-start;background:rgba(28,31,28,.85);padding:clamp(18px,2vw,30px)}
.ph-contact-page .ph-form-choice:hover,.ph-contact-page .ph-form-choice.is-selected{background:rgba(42,43,40,.94)}
.ph-contact-page .ph-form-panel{width:min(1050px,100%);margin:0 auto;padding-top:42px;border-top:0}
.ph-contact-page .ph-form-model-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.ph-contact-page .ph-form-panel .ph-form-model{min-width:0;padding:5px}
.ph-contact-page .ph-form-model-name{font-size:12px}
@media(max-width:850px){.ph-contact-page .ph-form-model-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.ph-contact-page .ph-contact-details{grid-template-columns:1fr}.ph-contact-page .ph-form-chooser{grid-template-columns:1fr;max-width:340px}.ph-contact-page .ph-form-choice{aspect-ratio:4/3}.ph-contact-page .ph-form-model-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-contact-page .ph-contact-chooser-section{margin-inline:-13px}}

/* v2.6: Concept sheets always fit entirely inside the viewport; no zoom controls. */
.ph-concept-view{overflow:hidden}
.ph-concept-view img{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;object-fit:contain}

/* v2.8: Mobile-only layout for the three exterior-wall cards. Other grids unchanged. */
@media (min-width:390px) and (max-width:700px) {
  .ph-tech-walls .ph-tech-grid { column-gap:3%; row-gap:20px; }
  .ph-tech-walls .ph-tech-card { flex:0 0 31.333%; max-width:31.333%; }
  .ph-tech-walls .ph-tech-card-title { font-size:12px; line-height:1.35; margin:8px 0 7px; overflow-wrap:break-word; }
  .ph-tech-walls .ph-tech-card-desc { font-size:11px; line-height:1.45; margin-bottom:11px; }
  .ph-tech-walls .ph-tech-more { font-size:9px; line-height:1.4; letter-spacing:0; overflow-wrap:break-word; }
}
@media (max-width:389px) {
  .ph-tech-walls .ph-tech-grid { column-gap:4%; row-gap:26px; }
  .ph-tech-walls .ph-tech-card { flex:0 0 48%; max-width:48%; }
}

/* v2.8.7: Privacy page — scoped to its own template, preserving existing pages. */
.ph-privacy-page{padding:clamp(45px,5vw,90px) 0 clamp(60px,6vw,115px)}
.ph-privacy-heading{padding:0 0 26px;border-bottom:1px solid #ffffff25}
.ph-privacy-heading h1{font-size:clamp(32px,3.4vw,66px);font-weight:400;line-height:1.12;letter-spacing:-.04em;margin:12px 0 0;color:#f0eee8}
.ph-privacy-body{padding-top:24px}
.ph-privacy-content{max-width:920px;color:#c8c8c1;font-size:clamp(14px,.95vw,17px);line-height:1.8;overflow-wrap:anywhere}
.ph-privacy-content h2{font-size:clamp(20px,1.5vw,27px);font-weight:500;line-height:1.35;color:#f0eee8;margin:42px 0 14px;letter-spacing:-.02em}
.ph-privacy-content h3{font-size:18px;font-weight:600;color:#f0eee8;margin:25px 0 10px}
.ph-privacy-content p{margin:0 0 16px}
.ph-privacy-content ul,.ph-privacy-content ol{padding-left:25px;margin:10px 0 22px}
.ph-privacy-content li{padding-left:3px;margin:5px 0}
.ph-privacy-content strong{color:#f0eee8;font-weight:600}
.ph-privacy-content a{color:#d4ad63;text-decoration:underline;text-underline-offset:3px}
.ph-privacy-content a:hover,.ph-privacy-content a:focus{color:#f3cf87}
.ph-privacy-content .wp-block-group{background:#2a2c29;border-left:2px solid #c4a05a;padding:20px 24px;margin:20px 0 24px}
.ph-privacy-content .wp-block-group p:last-child{margin-bottom:0}
.ph-privacy-content hr{border:0;border-top:1px solid #ffffff26;margin:32px 0}
@media(max-width:700px){.ph-privacy-page{padding:42px 0 65px}.ph-privacy-content .wp-block-group{padding:16px}.ph-privacy-content h2{margin-top:32px}}

/* v2.9.5 — desktop-only 40px inset for homepage editorial text. */
@media (min-width: 1024px) {
  .ph-landing .ph-hero-heading { padding-left: 40px; }
  #o-nama .ph-about-text { padding-left: 40px; }
  #modeli > .ph-inner > .ph-kicker,
  #modeli > .ph-inner > h2 { margin-left: 40px; }
  #proces .ph-process-intro > div:first-child { padding-left: 40px; }
  #kontakt-poziv .ph-contact-content { padding-left: 40px; }
}


/* v2.9.6 — 40px desktop inset for Technical Description and Contact editorial copy. */
@media (min-width: 1024px) {
  .ph-tech-intro .ph-hero-heading,
  .ph-contact-heading .ph-hero-heading { padding-left: 40px; }

  .ph-tech-section > .ph-inner > .ph-kicker,
  .ph-tech-section > .ph-inner > h2,
  .ph-tech-section > .ph-inner > .ph-tech-section-copy { margin-left: 40px; }

  .ph-contact-heading > .ph-contact-intro-copy { margin-left: 40px; }
  .ph-contact-chooser-section > .ph-kicker,
  .ph-contact-chooser-section > h2,
  .ph-contact-chooser-section > .ph-contact-lead { margin-left: 40px; }
}

/* v2.9.7 — Contact desktop alignment correction only. */
@media (min-width: 1024px) {
  .ph-contact-page .ph-contact-heading .ph-hero-heading {
    padding-left: 40px;
  }
  .ph-contact-page .ph-contact-chooser-section > .ph-kicker,
  .ph-contact-page .ph-contact-chooser-section > h2,
  .ph-contact-page .ph-contact-chooser-section > .ph-contact-lead {
    margin-left: 20px;
  }
}


/* v2.9.10 — independent optional sections, no changes to existing section selectors */
.ph-extra-section .ph-extra-layout{margin-top:24px}
.ph-extra-section .ph-extra-two-col{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:36px;align-items:center}
.ph-extra-section .ph-extra-copy{max-width:760px;line-height:1.75}
.ph-extra-section .ph-extra-copy p:first-child{margin-top:0}
.ph-extra-section .ph-extra-image img{width:100%;height:auto;display:block;object-fit:cover}
.ph-extra-section .ph-extra-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:20px}
.ph-extra-section .ph-extra-gallery img{display:block;width:100%;height:230px;object-fit:cover}
.ph-extra-section .ph-extra-open{margin-top:25px;cursor:pointer}
.ph-extra-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:20px}
.ph-extra-modal[aria-hidden="false"]{display:flex}
.ph-extra-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.83)}
.ph-extra-dialog{position:relative;background:#222320;color:#f2f0eb;width:min(820px,100%);max-height:90vh;overflow:auto;padding:36px;box-shadow:0 20px 80px rgba(0,0,0,.45)}
.ph-extra-dialog h2{font-size:clamp(24px,3vw,38px);margin:0 44px 24px 0}
.ph-extra-dialog>img{width:100%;height:auto;max-height:55vh;object-fit:contain}
.ph-extra-popup-copy{margin-top:20px;line-height:1.7}
.ph-extra-close{position:absolute;right:15px;top:10px;border:0;background:none;color:inherit;font-size:34px;cursor:pointer}
body.ph-extra-modal-open{overflow:hidden}
@media(max-width:767px){.ph-extra-section .ph-extra-two-col{grid-template-columns:1fr;gap:18px}.ph-extra-dialog{padding:25px 18px}.ph-extra-section .ph-extra-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.ph-extra-section .ph-extra-gallery img{height:150px}}

/* v2.9.11 — align editorial copy in optional sections with the existing desktop 40px inset. */
@media (min-width: 1024px) {
  .ph-extra-section > .ph-inner > .ph-kicker,
  .ph-extra-section > .ph-inner > h2,
  .ph-extra-section > .ph-inner > h3 {
    margin-left: 40px;
  }
  .ph-extra-section .ph-extra-copy {
    padding-left: 40px;
    box-sizing: border-box;
  }
  .ph-extra-section .ph-extra-open {
    margin-left: 40px;
  }
}

/* Peak Houses v3.0 — additional section design variants. */
.ph-extra-hero{background:var(--ph-unified-black,#141514);color:#eae9e4;padding:clamp(54px,4.2vw,88px) 0}
.ph-extra-hero .ph-hero-bottom{align-items:flex-start}.ph-extra-hero .ph-hero-bottom span:last-child{text-align:right;max-width:50%}
.ph-extra-contact{background:#171917}.ph-extra-contact:before{background-image:var(--ph-contact-background,url('assets/contact-background.png'))!important}
.ph-extra-houses{background:var(--ph-unified-black,#141514);color:#eae9e4}
.ph-extra-houses .ph-model-grid{display:flex;flex-wrap:wrap;justify-content:center;column-gap:6.25%;row-gap:clamp(26px,2.2vw,44px)}
.ph-extra-houses .ph-model{flex:0 0 25%;max-width:25%;position:relative;min-width:0;background:transparent;overflow:visible;aspect-ratio:auto}
.ph-extra-houses .ph-model:after{display:none}
.ph-extra-houses .ph-model h3{position:static;margin:12px 0 5px;font-size:18px}
.ph-extra-houses .ph-model p{margin:0 0 12px}
.ph-extra-houses .ph-model img{width:100%;height:100%;object-fit:cover}
.ph-extra-houses .ph-model-open{display:block;aspect-ratio:4/3;overflow:hidden}
.ph-extra-houses .ph-extra-intro{max-width:780px;line-height:1.7}
.ph-extra-technical{background:var(--ph-unified-black,#141514);color:#eae9e4}
.ph-extra-technical .ph-tech-grid{margin-top:26px}
.ph-extra-modal-tech .ph-extra-dialog{background:#191a19;width:min(1060px,100%);padding:clamp(20px,3.5vw,48px)}
.ph-extra-modal-tech .ph-extra-dialog>img{max-height:70vh}
.ph-extra-concept-modal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.92);padding:36px}
.ph-extra-concept-modal.is-open{display:flex}
.ph-extra-concept-modal img{max-width:100%;max-height:calc(100dvh - 80px);object-fit:contain}
.ph-extra-concept-close{position:absolute;top:12px;right:22px;background:#222;color:white;border:0;font-size:36px;cursor:pointer;padding:0 12px}
@media(min-width:1024px){
 .ph-extra-hero .ph-hero-heading{padding-left:40px}
 .ph-extra-contact .ph-contact-content{padding-left:40px}
 .ph-extra-houses .ph-inner>.ph-kicker,.ph-extra-houses .ph-inner>h2,.ph-extra-houses .ph-extra-intro{margin-left:40px}
 .ph-extra-technical .ph-inner>.ph-kicker,.ph-extra-technical .ph-inner>h2,.ph-extra-technical .ph-inner>h3,.ph-extra-technical .ph-tech-section-copy{margin-left:40px}
}
@media(max-width:1050px){.ph-extra-houses .ph-model{flex-basis:28%;max-width:28%}}
@media(max-width:700px){.ph-extra-houses .ph-model{flex-basis:48%;max-width:48%}.ph-extra-hero .ph-hero-bottom{flex-wrap:wrap}}
@media(max-width:420px){.ph-extra-houses .ph-model{flex-basis:100%;max-width:100%}}
\n\n/* Peak Houses 3.1.0 — opt-in light palette; all original dark declarations stay intact. */\n.ph-theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #ffffff65;border-radius:99px;padding:7px 12px;background:transparent;color:#eae9e4;cursor:pointer;font:inherit;font-size:11px;line-height:1.4;letter-spacing:.04em;white-space:nowrap;transition:background .2s,border-color .2s}\n.ph-theme-toggle:hover{background:#ffffff14}.ph-theme-toggle:focus-visible{outline:2px solid #c7aa78;outline-offset:3px}.ph-theme-icon{font-size:17px;line-height:1}\n@media(max-width:700px){.ph-theme-toggle{padding:5px 8px;font-size:10px;gap:4px}.ph-theme-icon{font-size:15px}}\nhtml[data-ph-theme="light"]{--ph-unified-black:#f7f5f0;--charcoal:#f7f5f0;--ink:#262923;--muted:#595b53;--paper:#f7f5f0;--ph-section-rule:#26292326;background:#f7f5f0;color-scheme:light}\nhtml[data-ph-theme="light"] body{background:#f7f5f0;color:#262923}\nhtml[data-ph-theme="light"] body:before{filter:blur(5px) brightness(.85)}\nhtml[data-ph-theme="light"] body:after{background:rgba(247,245,240,.24)}\nhtml[data-ph-theme="light"] .ph-site-frame{background:#f7f5f0;color:#262923;box-shadow:0 22px 80px #0004}\nhtml[data-ph-theme="light"] .ph-header{border-bottom-color:#25282130}\nhtml[data-ph-theme="light"] .ph-nav a{color:#30342e}\nhtml[data-ph-theme="light"] .ph-nav a:hover,html[data-ph-theme="light"] .ph-nav a:focus-visible{color:#000}\nhtml[data-ph-theme="light"] .ph-nav .ph-contact{border-color:#30342e75}\nhtml[data-ph-theme="light"] .ph-theme-toggle{color:#30342e;border-color:#30342e75}\nhtml[data-ph-theme="light"] .ph-theme-toggle:hover{background:#25282112}\nhtml[data-ph-theme="light"] .ph-landing,html[data-ph-theme="light"] .ph-shell,html[data-ph-theme="light"] .ph-hero-heading,html[data-ph-theme="light"] .ph-page-head{background:#f7f5f0;color:#262923}\nhtml[data-ph-theme="light"] .ph-hero-subtitle,html[data-ph-theme="light"] .ph-hero-description,html[data-ph-theme="light"] .ph-hero-bottom,html[data-ph-theme="light"] .ph-about-signoff{color:#50544b}\nhtml[data-ph-theme="light"] .ph-hero-bottom a{border-bottom-color:#50544b}\nhtml[data-ph-theme="light"] .ph-tags span{border-color:#26292380}\nhtml[data-ph-theme="light"] .ph-section.ph-light,html[data-ph-theme="light"] .home .ph-section.ph-light{background:#eeece6;color:#262923}\nhtml[data-ph-theme="light"] .ph-section.ph-dark,html[data-ph-theme="light"] .home .ph-section.ph-dark{background:#f7f5f0;color:#262923}\nhtml[data-ph-theme="light"] .ph-section .ph-copy,html[data-ph-theme="light"] .ph-section.ph-light .ph-copy,html[data-ph-theme="light"] .home .ph-section.ph-light .ph-copy,html[data-ph-theme="light"] .ph-dark .ph-copy{color:#51554d}\nhtml[data-ph-theme="light"] .ph-kicker{color:#776b54}\nhtml[data-ph-theme="light"] .ph-step{border-top-color:#30342e45}\nhtml[data-ph-theme="light"] .ph-step p,html[data-ph-theme="light"] .ph-model p{color:#555950}\nhtml[data-ph-theme="light"] .ph-step-marker span{color:#44483f;border-color:#555950}\nhtml[data-ph-theme="light"] .ph-step-marker:after{background:#888b81}\nhtml[data-ph-theme="light"] .ph-process-link{border-color:#484b42;color:#262923}\nhtml[data-ph-theme="light"] .ph-process-link:hover{background:#262923;color:#f7f5f0}\nhtml[data-ph-theme="light"] .ph-model-details{color:#262923;border-color:#686c60}\nhtml[data-ph-theme="light"] .ph-model-details:hover{color:#000;border-color:#000}\nhtml[data-ph-theme="light"] .ph-footer{background:#eeece6;color:#4b5048;border-top-color:#26292326}\nhtml[data-ph-theme="light"] .ph-footer-contact strong{color:#262923}\nhtml[data-ph-theme="light"] .ph-footer-bottom{color:#555950;border-top-color:#26292326}\nhtml[data-ph-theme="light"] .ph-tech-page,html[data-ph-theme="light"] .ph-contact-page{background:#f7f5f0;color:#262923}\nhtml[data-ph-theme="light"] .ph-tech-intro,html[data-ph-theme="light"] .ph-tech-section{border-top-color:#26292326}\nhtml[data-ph-theme="light"] .ph-tech-section-copy,html[data-ph-theme="light"] .ph-tech-card-desc,html[data-ph-theme="light"] .ph-contact-lead{color:#50544c}\nhtml[data-ph-theme="light"] .ph-tech-section-copy h3{color:#262923}\nhtml[data-ph-theme="light"] .ph-tech-more{color:#30342e;border-color:#777b71}\nhtml[data-ph-theme="light"] .ph-tech-thumb{background:#e7e6df}\nhtml[data-ph-theme="light"] .ph-contact-details,html[data-ph-theme="light"] .ph-contact-chooser-section{border-color:#26292326}\nhtml[data-ph-theme="light"] .ph-form-panel label{color:#363a33}\nhtml[data-ph-theme="light"] .ph-form-panel label span:not(.ph-form-model-picture):not(.ph-form-model-name){color:#87662f}\nhtml[data-ph-theme="light"] .ph-form-panel input:not([type=radio]):not([type=checkbox]):not([type=file]),html[data-ph-theme="light"] .ph-form-panel select,html[data-ph-theme="light"] .ph-form-panel textarea{background:#fffefa;color:#262923;border-color:#777b7166}\nhtml[data-ph-theme="light"] .ph-form-panel input::placeholder,html[data-ph-theme="light"] .ph-form-panel textarea::placeholder{color:#666a60}\nhtml[data-ph-theme="light"] .ph-form-panel .ph-form-model{border-color:#26292345}\nhtml[data-ph-theme="light"] .ph-form-model:has(input:checked){background:#e9e1d1;border-color:#95713d}\nhtml[data-ph-theme="light"] .ph-form-upload{background:#efede7;border-color:#26292335}\nhtml[data-ph-theme="light"] .ph-form-upload p,html[data-ph-theme="light"] .ph-form-privacy{color:#555950}\nhtml[data-ph-theme="light"] .ph-privacy-heading{border-color:#26292326}\nhtml[data-ph-theme="light"] .ph-privacy-heading h1,html[data-ph-theme="light"] .ph-privacy-content h2,html[data-ph-theme="light"] .ph-privacy-content h3,html[data-ph-theme="light"] .ph-privacy-content strong{color:#262923}\nhtml[data-ph-theme="light"] .ph-privacy-content{color:#51554d}\nhtml[data-ph-theme="light"] .ph-privacy-content a{color:#755520}\nhtml[data-ph-theme="light"] .ph-privacy-content .wp-block-group{background:#eeece6}\nhtml[data-ph-theme="light"] .ph-privacy-content hr{border-top-color:#26292326}\nhtml[data-ph-theme="light"] .ph-extra-hero,html[data-ph-theme="light"] .ph-extra-houses,html[data-ph-theme="light"] .ph-extra-technical{background:#f7f5f0;color:#262923}\nhtml[data-ph-theme="light"] .ph-extra-hero .ph-hero-bottom{color:#555950}\nhtml[data-ph-theme="light"] .ph-extra-dialog,html[data-ph-theme="light"] .ph-extra-modal-tech .ph-extra-dialog,html[data-ph-theme="light"] .ph-tech-dialog{background:#f7f5f0;color:#262923}\nhtml[data-ph-theme="light"] .ph-extra-popup-copy,html[data-ph-theme="light"] .ph-tech-prose{color:#50544c}\nhtml[data-ph-theme="light"] .ph-tech-prose h3{color:#262923}\nhtml[data-ph-theme="light"] .ph-tech-close{background:#e8e6df;color:#262923}\n/* Image-backed sections retain white text and dark overlays for legibility in both modes. */\nhtml[data-ph-theme="light"] .ph-contact-cta,html[data-ph-theme="light"] .home .ph-contact-cta,html[data-ph-theme="light"] .ph-extra-contact,html[data-ph-theme="light"] .ph-tech-photo-section,html[data-ph-theme="light"] .ph-contact-chooser-section{color:#f3f1ec;background:#20221f}\nhtml[data-ph-theme="light"] .ph-contact-cta .ph-kicker,html[data-ph-theme="light"] .ph-extra-contact .ph-kicker,html[data-ph-theme="light"] .ph-tech-photo-section .ph-kicker,html[data-ph-theme="light"] .ph-contact-chooser-section .ph-kicker{color:#e4d4b4}\nhtml[data-ph-theme="light"] .ph-tech-photo-section .ph-tech-section-copy,html[data-ph-theme="light"] .ph-tech-photo-section .ph-tech-card-desc,html[data-ph-theme="light"] .ph-contact-chooser-section .ph-contact-lead{color:#e1e0db}\nhtml[data-ph-theme="light"] .ph-tech-photo-section .ph-tech-more{color:#f1f0ec}\nhtml[data-ph-theme="light"] .ph-contact-chooser-section .ph-form-choice{background:rgba(28,31,28,.85);color:#f3f1ec}\nhtml[data-ph-theme="light"] .ph-contact-chooser-section .ph-form-choice span{color:#e1e0db}\nhtml[data-ph-theme="light"] .ph-contact-chooser-section .ph-form-choice:hover,html[data-ph-theme="light"] .ph-contact-chooser-section .ph-form-choice.is-selected{background:rgba(42,43,40,.94)}\n

/* Peak Houses 3.1.1 — consistent light-mode dark frame and accessible contrast. */
.ph-site-frame>.ph-header{position:relative}
.ph-site-frame>.ph-header>.ph-theme-toggle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:5;display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;padding:0;border:0;border-radius:50%;background:transparent;color:#eae9e4;cursor:pointer;line-height:1}
.ph-site-frame>.ph-header>.ph-theme-toggle .ph-theme-icon{font-size:24px;line-height:1}
.ph-site-frame>.ph-header>.ph-theme-toggle:hover{background:#ffffff16}
.ph-site-frame>.ph-header>.ph-theme-toggle:focus-visible{outline:2px solid #c7aa78;outline-offset:3px}
html[data-ph-theme="light"] .ph-site-frame{background:#141514;color:#262923}
html[data-ph-theme="light"] .ph-site-frame>.ph-header{background:#141514;border-bottom-color:#ffffff20}
html[data-ph-theme="light"] .ph-site-frame>.ph-header .ph-nav a{color:#d7d7d2}
html[data-ph-theme="light"] .ph-site-frame>.ph-header .ph-nav a:hover{color:#fff}
html[data-ph-theme="light"] .ph-site-frame>.ph-header .ph-nav .ph-contact{border-color:#ffffff65}
html[data-ph-theme="light"] .ph-site-frame>.ph-header>.ph-theme-toggle{color:#eae9e4}
html[data-ph-theme="light"] .ph-site-frame>.ph-header>.ph-theme-toggle:hover{background:#ffffff16}
/* Every section remains inset within the same dark side rails. */
html[data-ph-theme="light"] .ph-site-frame .ph-section,
html[data-ph-theme="light"] .ph-site-frame .ph-footer,
html[data-ph-theme="light"] .ph-site-frame .ph-extra-section{margin-left:0;margin-right:0}
html[data-ph-theme="light"] .ph-site-frame .ph-section.ph-light,
html[data-ph-theme="light"] .ph-site-frame .ph-section.ph-dark,
html[data-ph-theme="light"] .ph-site-frame .ph-extra-section:not(.ph-extra-contact){background:#f7f5f0;color:#262923}
html[data-ph-theme="light"] .ph-site-frame .ph-section.ph-contact-cta,
html[data-ph-theme="light"] .ph-site-frame .ph-extra-contact{background-color:#20221f;color:#f3f1ec}
html[data-ph-theme="light"] .ph-site-frame .ph-landing{background:#141514;color:#262923}
html[data-ph-theme="light"] .ph-site-frame .ph-landing .ph-shell{background:#f7f5f0;color:#262923}
html[data-ph-theme="light"] .ph-site-frame .ph-footer{background:#141514;color:#b5b5b0;border-top-color:#ffffff22}
html[data-ph-theme="light"] .ph-footer-contact strong{color:#f0eee8}
html[data-ph-theme="light"] .ph-footer-bottom{color:#b5b5b0;border-top-color:#ffffff22}
/* Explicitly override inherited dark-mode secondary text styles. */
html[data-ph-theme="light"] .ph-site-frame .ph-hero-subtitle{color:#51554d}
html[data-ph-theme="light"] .ph-site-frame .ph-hero-bottom{color:#51554d}
html[data-ph-theme="light"] .ph-site-frame .ph-section .ph-kicker{color:#817052}
html[data-ph-theme="light"] .ph-site-frame .ph-section .ph-copy,
html[data-ph-theme="light"] .ph-site-frame .ph-about-text p{color:#454a45}
html[data-ph-theme="light"] .ph-site-frame .ph-process .ph-step p{color:#50564f}
html[data-ph-theme="light"] .ph-site-frame .ph-process .ph-step h3{color:#242724}
html[data-ph-theme="light"] .ph-site-frame .ph-process .ph-step-marker span{color:#50564f;border-color:#777b71}
html[data-ph-theme="light"] .ph-site-frame .ph-contact-cta .ph-kicker{color:#e4d4b4}
html[data-ph-theme="light"] .ph-site-frame .ph-contact-cta p{color:#f3f1ec}
/* Ensure the light palette does not alter photographic backgrounds. */
html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section,
html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section{background-color:#20221f;color:#f3f1ec}
@media(max-width:850px){
 .ph-site-frame>.ph-header>.ph-theme-toggle{left:50%;width:32px;height:32px}
 .ph-site-frame>.ph-header>.ph-theme-toggle .ph-theme-icon{font-size:21px}
 .ph-site-frame>.ph-header{gap:8px}
 .ph-site-frame>.ph-header .ph-logo{max-width:35%}
 .ph-site-frame>.ph-header .ph-nav{gap:8px}
}
@media(max-width:520px){
 .ph-site-frame>.ph-header .ph-nav a{font-size:9px}
}

/* Peak Houses 3.1.2 — centered, font-independent theme control. */
.ph-site-frame > .ph-header{position:relative}
.ph-site-frame > .ph-header > .ph-theme-toggle{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:20;display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;min-width:40px;min-height:40px;opacity:1;visibility:visible;border:0;background:transparent;color:#eae9e4;cursor:pointer;padding:8px;line-height:1}
.ph-site-frame > .ph-header > .ph-theme-toggle svg{display:block;flex:none;width:23px;height:23px;stroke:currentColor}
.ph-site-frame > .ph-header > .ph-theme-toggle .ph-theme-moon{display:none}
html[data-ph-theme="light"] .ph-site-frame > .ph-header > .ph-theme-toggle .ph-theme-sun{display:none}
html[data-ph-theme="light"] .ph-site-frame > .ph-header > .ph-theme-toggle .ph-theme-moon{display:block}
.ph-site-frame > .ph-header > .ph-theme-toggle:hover{background:#ffffff16}
.ph-site-frame > .ph-header > .ph-theme-toggle:focus-visible{outline:2px solid #c7aa78;outline-offset:3px}
/* Only the first hero-bottom label moves; the right-side link stays put. */
@media(min-width:701px){.home .ph-landing .ph-hero-bottom > span:first-child{position:relative;left:30px}}
@media(max-width:700px){.home .ph-landing .ph-hero-bottom > span:first-child{position:relative;left:min(30px,4vw)}}
/* Keep the centered control above the mobile navigation without overlap. */
@media(max-width:700px){.ph-site-frame > .ph-header > .ph-theme-toggle{top:29px;width:36px;height:36px;min-width:36px;min-height:36px}.ph-site-frame > .ph-header > .ph-theme-toggle svg{width:21px;height:21px}}

/* Peak Houses 3.1.3 — subtle, consistent separators in light mode.
   Match the dark theme's hairline rhythm without changing dark mode. */
html[data-ph-theme="light"] .home .ph-site-frame .ph-section {
  border-top:1px solid rgba(38,41,35,.20);
}
html[data-ph-theme="light"] .home .ph-site-frame .ph-extra-section {
  border-top:1px solid rgba(38,41,35,.20);
}
html[data-ph-theme="light"] .home .ph-site-frame .ph-contact-cta {
  border-top-color:rgba(247,245,240,.17);
}

/* Peak Houses 3.1.4 — theme switcher after Contact, separated by a subtle vertical rule. */
.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle{position:relative;left:auto;top:auto;transform:none;z-index:auto;display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:38px;min-width:42px;min-height:38px;margin:0 0 0 5px;padding:7px 0 7px 13px;border:0;border-radius:0;background:transparent;color:#eae9e4;cursor:pointer;line-height:1;opacity:1;visibility:visible}
.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:1px;background:rgba(255,255,255,.24)}
.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle svg{display:block;flex:none;width:22px;height:22px;stroke:currentColor}
.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle .ph-theme-moon{display:none}
html[data-ph-theme="light"] .ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle .ph-theme-sun{display:none}
html[data-ph-theme="light"] .ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle .ph-theme-moon{display:block}
.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle:hover{background:rgba(255,255,255,.06)}
.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle:focus-visible{outline:2px solid #c7aa78;outline-offset:2px}
@media(max-width:700px){.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle{flex-basis:32px;width:32px;min-width:32px;height:32px;min-height:32px;margin-left:0;padding:5px 0 5px 8px}.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle::before{top:6px;bottom:6px}.ph-site-frame > .ph-header > .ph-nav > .ph-theme-toggle svg{width:19px;height:19px}}


/* Peak Houses 3.1.5 — extend the finished homepage light treatment to
   Technical description, Contact and Privacy Policy. Dark mode unchanged. */
html[data-ph-theme="light"] .ph-site-frame > .ph-tech-page,
html[data-ph-theme="light"] .ph-site-frame > .ph-contact-page,
html[data-ph-theme="light"] .ph-site-frame > .ph-privacy-page{
  background:#f7f5f0;
  color:#262923;
}
/* Match the homepage's subtle hairline dividers. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-section,
html[data-ph-theme="light"] .ph-contact-page .ph-contact-details,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel,
html[data-ph-theme="light"] .ph-privacy-page .ph-privacy-heading{
  border-color:rgba(38,41,35,.20);
}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-forms{
  border-top:1px solid rgba(38,41,35,.20);
}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section{
  border-top:1px solid rgba(247,245,240,.17);
  border-bottom-color:rgba(247,245,240,.17);
}
/* Text and controls on pale surfaces; photograph-backed sections remain dark. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-card-title,
html[data-ph-theme="light"] .ph-contact-page .ph-contact-detail a,
html[data-ph-theme="light"] .ph-contact-page .ph-contact-detail p,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel h3,
html[data-ph-theme="light"] .ph-privacy-page .ph-privacy-heading h1{
  color:#262923;
}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-card-desc,
html[data-ph-theme="light"] .ph-contact-page .ph-contact-intro-copy,
html[data-ph-theme="light"] .ph-contact-page .ph-contact-lead{
  color:#50544c;
}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-card:focus-visible,
html[data-ph-theme="light"] .ph-contact-page .ph-form-choice:focus-visible{
  outline:2px solid #98784c;
  outline-offset:4px;
}
/* Dark photo sections keep their established light text and contrast. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-photo-section .ph-tech-card-title,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-photo-section .ph-tech-card-desc,
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section .ph-contact-lead{
  color:#f3f1ec;
}


/* Peak Houses 3.1.6 — Technical Description light mode corrections only.
   Preserve homepage, dark theme, roof photography, card layouts and popups. */
/* The small label below the technical hero gets the same extra 30px as Home. */
@media (min-width:701px){
  .ph-tech-intro .ph-hero-bottom > span:first-child{position:relative;left:30px}
}
@media (max-width:700px){
  .ph-tech-intro .ph-hero-bottom > span:first-child{position:relative;left:min(30px,4vw)}
}
/* Walls: readable editorial copy and subheadings on the light surface. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-walls .ph-tech-section-copy,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-walls .ph-tech-section-copy p,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-walls .ph-tech-card-desc{color:#50544c}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-walls .ph-tech-section-copy h3{color:#262923}
/* Installations: remove dark fill and use dark text; keep card photographs. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-installations{
  background:#f7f5f0;color:#262923;
}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-installations .ph-tech-section-copy,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-installations .ph-tech-card-desc{color:#50544c}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-installations .ph-tech-section-copy h3,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-installations .ph-tech-card-title{color:#262923}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-installations .ph-tech-more{color:#30342e;border-color:#777b71}
/* Facades: turn off the background photograph and its dark overlay in light mode. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades{
  background:#f7f5f0;color:#262923;
}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades::before,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades::after{content:none}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades .ph-tech-section-copy,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades .ph-tech-card-desc{color:#50544c}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades .ph-tech-section-copy h3,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades .ph-tech-card-title{color:#262923}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades .ph-tech-more{color:#30342e;border-color:#777b71}
/* Roof is intentionally left photographic, including its original white text. */

/* Peak Houses 3.1.8 — requested layout refinements only. */
/* Keep the roof photo and white text, but restore the dark side rails in light mode. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof{
  margin-inline:0;
  padding-inline:0;
}
/* Move the right hero caption 30px inward on Home and Technical Description. */
@media (min-width:701px){
  .home .ph-landing .ph-hero-bottom > a:last-child,
  .ph-tech-intro .ph-hero-bottom > a:last-child{position:relative;right:30px}
}
@media (max-width:700px){
  .home .ph-landing .ph-hero-bottom > a:last-child,
  .ph-tech-intro .ph-hero-bottom > a:last-child{position:relative;right:min(30px,4vw)}
}

/* Peak Houses 3.1.9 — restore dark side rails around light facades only. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-facades{
  margin-inline:0;
  padding-inline:0;
}

/* Peak Houses 3.1.10 — light-mode roof: pale surface, dark type and dark side rails.
   Dark mode, roof cards and popups are unaffected. */
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof{
  background:#f7f5f0;
  color:#262923;
  margin-inline:0;
  padding-inline:0;
}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof::before,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof::after{content:none}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof .ph-tech-section-copy,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof .ph-tech-section-copy p,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof .ph-tech-card-desc{color:#50544c}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof h2,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof .ph-tech-section-copy h3,
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof .ph-tech-card-title{color:#262923}
html[data-ph-theme="light"] .ph-tech-page .ph-tech-roof .ph-tech-more{color:#30342e;border-color:#777b71}

/* Peak Houses 3.1.11 — match the light-mode section labels on the Home page. */
html[data-ph-theme="light"] .ph-site-frame .ph-tech-page .ph-tech-section > .ph-inner > .ph-kicker{color:#817052}


/* Peak Houses 3.1.12 — Contact page only, light palette. */
/* Bring the two captions below the hero 30px toward the center. */
@media (min-width:701px){
  .ph-contact-page .ph-contact-heading .ph-hero-bottom > span:first-child{position:relative;left:30px}
  .ph-contact-page .ph-contact-heading .ph-hero-bottom > a:last-child{position:relative;right:30px}
}
@media (max-width:700px){
  .ph-contact-page .ph-contact-heading .ph-hero-bottom > span:first-child{position:relative;left:min(30px,4vw)}
  .ph-contact-page .ph-contact-heading .ph-hero-bottom > a:last-child{position:relative;right:min(30px,4vw)}
}
/* Replace the chooser photograph with the light surface and dark side rails. */
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section{
  background:#f7f5f0;color:#262923;
  border-left:clamp(17px,1.45vw,52px) solid #141514;
  border-right:clamp(17px,1.45vw,52px) solid #141514;
  border-top-color:rgba(38,41,35,.20);
  border-bottom-color:rgba(38,41,35,.20);
}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section::before,
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section::after{content:none}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section .ph-kicker{color:#817052}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section h2{color:#262923}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section .ph-contact-lead{color:#50544c}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section .ph-form-choice{
  background:#fffefa;color:#262923;border-color:rgba(38,41,35,.30);
}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section .ph-form-choice span{color:#50544c}
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section .ph-form-choice:hover,
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section .ph-form-choice.is-selected{
  background:#ece8df;border-color:#98784c;
}
/* Both forms: readable labels, field values, placeholders, and selection controls. */
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel form,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel fieldset,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel legend{color:#292b29}
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel label,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel .ph-form-model-name{color:#292b29}
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel input:not([type=radio]):not([type=checkbox]):not([type=file]),
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel select,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel textarea{
  background:#fffefa;color:#292b29;border:1px solid #aaa99f;
}
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel input::placeholder,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel textarea::placeholder{color:#666a60;opacity:1}
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel input[type=radio],
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel input[type=checkbox]{accent-color:#817052}
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel .ph-form-privacy,
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel .ph-form-upload p{color:#50544c}
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel .ph-form-privacy a{color:#564529}


/* Peak Houses 3.1.13 — Contact light mode: clean section edges and model selection. */
html[data-ph-theme="light"] .ph-contact-page .ph-contact-chooser-section{
  margin-inline:0;
  border-left:0;
  border-right:0;
}
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel .ph-form-model:has(input:checked){
  background:#eee9df;
  border-color:#b99a67;
  outline:1px solid #b99a67;
  color:#292b29;
}
html[data-ph-theme="light"] .ph-contact-page .ph-form-panel .ph-form-model:has(input:checked) .ph-form-model-name{
  color:#292b29;
}

/* Peak Houses 3.1.14 — Privacy page only: consistent desktop inset and readable light-mode text. */
@media (min-width: 1024px) {
  .ph-site-frame .ph-privacy-page .ph-privacy-heading,
  .ph-site-frame .ph-privacy-page .ph-privacy-body { padding-left: 40px; }
}
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page { background:#f7f5f0; color:#262923; }
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-kicker { color:#817052; }
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content p,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content li,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content .has-text-color { color:#50544c; }
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-heading h1,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content h1,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content h2,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content h3,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content h4,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content strong { color:#262923; }
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content a { color:#755520; }
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content a:hover,
html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page .ph-privacy-content a:focus { color:#564529; }

/* Peak Houses 3.1.15 — Privacy typography aligned with the approved Home scale.
   Only this page is affected; layout, colors, and desktop inset remain unchanged. */
.ph-site-frame .ph-privacy-page .ph-privacy-heading h1{
  font-size:40px;line-height:1.12;letter-spacing:-.045em;font-weight:400;
}
.ph-site-frame .ph-privacy-page .ph-privacy-content{
  font-size:15px;line-height:1.7;
}
.ph-site-frame .ph-privacy-page .ph-privacy-content h2{
  font-size:30px;line-height:1.18;letter-spacing:normal;font-weight:400;
}
.ph-site-frame .ph-privacy-page .ph-privacy-content h3{
  font-size:18px;line-height:1.35;letter-spacing:normal;font-weight:500;
}
@media(max-width:700px){
  .ph-site-frame .ph-privacy-page .ph-privacy-heading h1{font-size:clamp(24px,6.5vw,40px)}
  .ph-site-frame .ph-privacy-page .ph-privacy-content h2{font-size:clamp(26px,6.3vw,30px)}
}

/* 3.1.16 — mobile LIGHT only: continuous pale canvas across all pages.
   Header/navigation and footer remain dark; desktop and dark mode untouched. */
@media (max-width:700px) {
  html[data-ph-theme="light"] .ph-site-frame {
    background:#f7f5f0;
    color:#262923;
  }
  html[data-ph-theme="light"] .ph-site-frame > .ph-header {
    background:#141514;
    margin-inline:-14px;
    padding-inline:14px;
  }
  html[data-ph-theme="light"] .ph-site-frame .ph-landing,
  html[data-ph-theme="light"] .ph-site-frame .ph-section,
  html[data-ph-theme="light"] .ph-site-frame .ph-extra-section,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-page,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-section,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-page,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section,
  html[data-ph-theme="light"] .ph-site-frame .ph-privacy-page {
    background:#f7f5f0;
    background-image:none;
    color:#262923;
    border-left:0;
    border-right:0;
  }
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-cta::before,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-cta::after,
  html[data-ph-theme="light"] .ph-site-frame .ph-extra-contact::before,
  html[data-ph-theme="light"] .ph-site-frame .ph-extra-contact::after,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section::before,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section::after,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section::before,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section::after { content:none; }
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-cta,
  html[data-ph-theme="light"] .ph-site-frame .ph-extra-contact,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section {
    background:#f7f5f0;
    color:#262923;
  }
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-cta .ph-kicker,
  html[data-ph-theme="light"] .ph-site-frame .ph-extra-contact .ph-kicker,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section .ph-kicker,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section .ph-kicker {color:#817052;}
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-cta p,
  html[data-ph-theme="light"] .ph-site-frame .ph-extra-contact p,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section .ph-tech-section-copy,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section .ph-tech-card-desc,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section .ph-contact-lead {color:#50544c;}
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section .ph-tech-card-title,
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section h2,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section h2 {color:#262923;}
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-photo-section .ph-tech-more {color:#30342e;border-color:#777b71;}
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section .ph-form-choice {
    background:#fffefa;color:#262923;border-color:#26292345;
  }
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section .ph-form-choice span {color:#50544c;}
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section .ph-form-choice:hover,
  html[data-ph-theme="light"] .ph-site-frame .ph-contact-chooser-section .ph-form-choice.is-selected {
    background:#eee9df;color:#262923;border-color:#b99a67;
  }
  html[data-ph-theme="light"] .ph-site-frame .ph-footer {
    background:#141514;color:#b5b5b0;
    margin-inline:-14px;
    border-top-color:#ffffff22;
  }
  html[data-ph-theme="light"] .ph-site-frame .ph-footer-contact strong {color:#f0eee8;}
  html[data-ph-theme="light"] .ph-site-frame .ph-footer-bottom {color:#b5b5b0;border-top-color:#ffffff22;}
}

/* 3.1.17 — two targeted mobile light corrections; other views unchanged. */
@media (max-width:700px) {
  /* Home: remove the dark contact CTA panel and its photo overlay. */
  html[data-ph-theme="light"] body.home .ph-site-frame section.ph-section.ph-contact-cta#kontakt-poziv {
    background:#f7f5f0;
    background-image:none;
    color:#262923;
  }
  html[data-ph-theme="light"] body.home .ph-site-frame #kontakt-poziv::before,
  html[data-ph-theme="light"] body.home .ph-site-frame #kontakt-poziv::after {
    content:none;
    background-image:none;
  }
  html[data-ph-theme="light"] body.home .ph-site-frame #kontakt-poziv .ph-kicker {color:#817052;}
  html[data-ph-theme="light"] body.home .ph-site-frame #kontakt-poziv h2 {color:#262923;}
  html[data-ph-theme="light"] body.home .ph-site-frame #kontakt-poziv p {color:#50544c;}
  html[data-ph-theme="light"] body.home .ph-site-frame #kontakt-poziv .ph-button {
    color:#262923;
    border-color:#262923;
    background:transparent;
  }
  /* Technical / roof: remove dark letterboxing around the two roof photos. */
  html[data-ph-theme="light"] .ph-site-frame .ph-tech-page .ph-tech-roof .ph-tech-thumb {
    background:#f7f5f0;
  }
}

/* 3.1.18 — visible divider between Process and Contact on mobile light home only. */
@media (max-width:700px) {
  html[data-ph-theme="light"] body.home .ph-site-frame #kontakt-poziv {
    border-top:1px solid #26292345;
  }
}

/* v4.0 — Montažne kuće and homepage teaser */
.ph-nav{flex-wrap:wrap}.ph-nav a[aria-current="page"]{color:#d2bb93}
.ph-home-models .ph-models-intro,.ph-houses-section-intro{font-size:clamp(15px,1.15vw,19px);line-height:1.75;color:#c4c3bd;max-width:760px;margin:0 0 20px}
.ph-home-models .ph-model-grid{margin-top:32px}.ph-models-all{text-align:center;margin-top:40px}.ph-models-all .ph-button{border-color:#b8a889;color:#eae9e4}.ph-models-all .ph-button:hover{background:#b8a889;color:#1b1c1b}
.ph-houses-hero{padding-top:clamp(75px,8vw,160px);padding-bottom:clamp(65px,6vw,120px);background:radial-gradient(ellipse at 92% 5%,rgba(174,148,104,.15),transparent 52%)}
.ph-houses-hero h1{font-size:clamp(39px,5.3vw,88px);line-height:1.1;max-width:950px}.ph-houses-hero h1 em{font-style:normal;color:#bba98c}
.ph-houses-lead{max-width:720px;color:#c9c7c0;font-size:clamp(16px,1.3vw,22px);line-height:1.7;margin:25px 0 30px}
.ph-houses-anchor,.ph-houses-tech-link{display:inline-block;font-size:12px;letter-spacing:.1em;border-bottom:1px solid #aa9a7e;padding-bottom:8px}
.ph-houses-gallery .ph-model-grid{margin-top:38px}.ph-houses-gallery-note{margin-top:30px;color:#a9aaa4;font-size:13px}
.ph-houses-packages .ph-houses-section-intro{color:inherit;opacity:.8}.ph-package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:40px 0 55px}
.ph-package-card{border:1px solid rgba(184,168,137,.4);padding:clamp(24px,3vw,48px);background:rgba(255,255,255,.025);display:flex;flex-direction:column;min-height:310px}
.ph-package-index{font-size:11px;letter-spacing:.14em;color:#bba98c}.ph-package-card h3{font-size:clamp(26px,2.5vw,42px);font-weight:400;margin:20px 0 12px}.ph-package-card p{color:inherit;opacity:.83;font-size:16px;line-height:1.75;max-width:530px}.ph-package-card a{font-size:12px;letter-spacing:.09em;margin-top:auto;padding-top:18px;text-decoration:underline;text-underline-offset:6px}
.ph-compare{border-top:1px solid rgba(180,165,137,.35);padding-top:38px;scroll-margin-top:20px}.ph-compare>h3{font-size:clamp(23px,2.1vw,34px);font-weight:400;margin:0 0 24px}.ph-compare-table-wrap{overflow-x:auto}.ph-compare-table{width:100%;border-collapse:collapse;min-width:570px;text-align:left;font-size:14px}.ph-compare-table th,.ph-compare-table td{padding:15px 16px;border-bottom:1px solid rgba(150,150,150,.28);vertical-align:top}.ph-compare-table thead th{color:#bba98c;font-size:12px;letter-spacing:.05em}.ph-compare-table tbody th{font-weight:400;width:46%}.ph-compare-table tbody td{width:27%}
.ph-compare-details{border-bottom:1px solid rgba(150,150,150,.35);margin-top:18px}.ph-compare-details summary{cursor:pointer;padding:17px 4px;font-size:15px;display:flex;justify-content:space-between;gap:15px;list-style:none}.ph-compare-details summary::-webkit-details-marker{display:none}.ph-compare-details[open] summary span{transform:rotate(45deg)}.ph-compare-details-body{max-width:850px;padding:0 4px 18px;color:inherit;opacity:.82;line-height:1.75}.ph-compare-disclaimer{font-size:13px;line-height:1.65;opacity:.75;margin-top:22px}
.ph-journey-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:40px}.ph-journey-grid article{border-top:1px solid #a99e8e;padding-top:22px}.ph-journey-grid article>span{color:#bba98c;font-size:13px}.ph-journey-grid h3{font-weight:400;font-size:clamp(22px,1.8vw,30px);margin:20px 0 10px}.ph-journey-grid p{color:#c2c2bc;font-size:15px;line-height:1.75}.ph-journey-note{color:#aaa9a2;font-size:13px;margin-top:25px}
.ph-houses-cta{background:#252725;padding-block:clamp(70px,7vw,120px)}.ph-houses-cta .ph-contact-content{max-width:none}.ph-houses-cta p{max-width:680px}.ph-houses-cta .ph-houses-tech-link{margin-left:25px;vertical-align:middle}
.ph-modal-open{overflow:hidden}.ph-concept-view img{cursor:zoom-in}.ph-concept-view.is-zoomed{overflow:auto;display:block}.ph-concept-view.is-zoomed img.ph-zoomed{max-width:none!important;max-height:none!important;width:auto!important;height:auto!important;cursor:zoom-out;margin:0 auto}.ph-concept-controls{z-index:3}
html[data-ph-theme="light"] .ph-houses-hero{background:radial-gradient(ellipse at 92% 5%,rgba(174,148,104,.15),transparent 52%)}
html[data-ph-theme="light"] .ph-houses-hero h1 em{color:#867151}
html[data-ph-theme="light"] .ph-houses-lead,html[data-ph-theme="light"] .ph-houses-gallery .ph-houses-section-intro,html[data-ph-theme="light"] .ph-home-models .ph-models-intro,html[data-ph-theme="light"] .ph-houses-gallery-note,html[data-ph-theme="light"] .ph-journey-grid p,html[data-ph-theme="light"] .ph-journey-note{color:#555b54}
html[data-ph-theme="light"] .ph-package-card{border-color:#bdb3a3;background:rgba(0,0,0,.025)}
html[data-ph-theme="light"] .ph-package-index,html[data-ph-theme="light"] .ph-compare-table thead th,html[data-ph-theme="light"] .ph-journey-grid article>span{color:#76603d}
html[data-ph-theme="light"] .ph-models-all .ph-button{color:#252725;border-color:#85745a}
html[data-ph-theme="light"] .ph-houses-cta{background:#e7e4dc;color:#252725}
@media(max-width:900px){.ph-journey-grid{grid-template-columns:1fr 1fr}.ph-package-grid{gap:14px}}
@media(max-width:700px){.ph-package-grid,.ph-journey-grid{grid-template-columns:1fr}.ph-package-card{min-height:0}.ph-houses-cta .ph-houses-tech-link{display:block;margin:24px 0 0;width:max-content;max-width:100%}.ph-houses-hero{padding-top:65px}.ph-compare-table{font-size:12px}.ph-compare-table th,.ph-compare-table td{padding:12px 10px}.ph-concept-modal{padding:58px 8px 65px}}
@media(prefers-reduced-motion:reduce){.ph-houses-page *, .ph-home-models *{scroll-behavior:auto}}


/* v4.1 — same architectural system and continuous background */
.ph-houses-v41{background:var(--ph-unified-black,#141514)}
.ph-houses-v41 .ph-houses-gallery{background:transparent!important}
.ph-houses-v41 .ph-houses-gallery .ph-model-grid{margin-top:38px}
.ph-houses-v41 .ph-houses-chooser{position:relative;isolation:isolate;padding:clamp(55px,5vw,90px) clamp(18px,3vw,55px);margin:0;overflow:hidden;border-block:1px solid #ffffff26}
.ph-houses-v41 .ph-houses-chooser:before{content:"";position:absolute;inset:0;z-index:-2;background:url('assets/contact-background.png') center/cover no-repeat}
.ph-houses-v41 .ph-houses-chooser:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,13,11,.82),rgba(9,13,11,.55))}
.ph-houses-v41 .ph-houses-chooser>.ph-kicker,.ph-houses-v41 .ph-houses-chooser>h2{max-width:1200px;margin-left:auto;margin-right:auto;color:#eae9e4}
.ph-houses-v41 .ph-houses-chooser>.ph-kicker{color:#b6a68e}
.ph-houses-v41 .ph-houses-chooser>h2{font-size:clamp(26px,2.5vw,36px);font-weight:400;margin-top:12px}
.ph-houses-v41 .ph-form-chooser{width:min(900px,100%);margin:35px auto 0;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(18px,3vw,42px)}
.ph-houses-v41 .ph-form-choice{aspect-ratio:4/3;justify-content:center;align-items:flex-start;background:rgba(28,31,28,.85);padding:clamp(18px,2vw,30px)}
.ph-houses-v41 .ph-form-choice:hover,.ph-houses-v41 .ph-form-choice.is-selected{background:rgba(42,43,40,.94)}
.ph-houses-v41 .ph-houses-package-content{padding:clamp(55px,5vw,90px) 0;background:transparent;scroll-margin-top:25px}
.ph-houses-v41 .ph-package-panel{max-width:1050px;margin:0 auto 38px;scroll-margin-top:25px}
.ph-houses-v41 .ph-package-panel[hidden],.ph-houses-v41 .ph-compare[hidden]{display:none!important}
.ph-houses-v41 .ph-package-panel h2,.ph-houses-v41 .ph-compare h2{font-size:clamp(25px,2.5vw,35px);font-weight:400;margin:0 0 25px}
.ph-houses-v41 .ph-package-list{border-top:1px solid #ffffff35}
.ph-houses-v41 .ph-package-line{display:grid;grid-template-columns:minmax(0,2fr) minmax(170px,1fr);gap:18px;padding:14px 8px;border-bottom:1px solid #ffffff2b;line-height:1.55}
.ph-houses-v41 .ph-package-line strong{font-weight:400;color:#d2bb93}
.ph-houses-v41 .ph-package-compare-action{text-align:center;margin:24px 0}
.ph-houses-v41 .ph-compare-toggle{cursor:pointer;border:1px solid #a99e8e;background:transparent;color:inherit;padding:14px 25px;letter-spacing:.1em;font-size:12px}
.ph-houses-v41 .ph-compare-toggle:hover,.ph-houses-v41 .ph-compare-toggle:focus-visible{border-color:#c7ad79;outline-offset:3px}
.ph-houses-v41 .ph-compare{margin:35px 0 0;border-top:1px solid #ffffff35}
.ph-houses-v41 .ph-package-legal{max-width:1050px;margin:32px auto 0;font-size:13px;opacity:.75;line-height:1.7}
.ph-houses-v41 .ph-houses-process{background:transparent!important;border-top:1px solid #ffffff25}
.ph-houses-v41 .ph-houses-process .ph-steps{grid-template-columns:repeat(3,minmax(0,1fr))}
.ph-houses-v41 .ph-houses-process-outro{margin-top:40px;line-height:1.8}
.ph-houses-v41 .ph-houses-process-outro a{display:inline-block;margin-left:12px;font-size:12px;letter-spacing:.07em;border-bottom:1px solid currentColor}
html[data-ph-theme="light"] .ph-houses-v41{background:#f7f5f0;color:#262923}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-package-content,html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-process{background:transparent;color:#262923}
html[data-ph-theme="light"] .ph-houses-v41 .ph-package-list,html[data-ph-theme="light"] .ph-houses-v41 .ph-package-line,html[data-ph-theme="light"] .ph-houses-v41 .ph-compare,html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-process{border-color:#26292330}
html[data-ph-theme="light"] .ph-houses-v41 .ph-package-line strong{color:#746044}
html[data-ph-theme="light"] .ph-houses-v41 .ph-form-choice{color:#eae9e4}
@media(max-width:700px){.ph-houses-v41 .ph-form-chooser{grid-template-columns:1fr;max-width:340px}.ph-houses-v41 .ph-package-line{grid-template-columns:1fr;gap:3px}.ph-houses-v41 .ph-houses-process .ph-steps{grid-template-columns:1fr}.ph-houses-v41 .ph-houses-process-outro a{margin:12px 0 0}}

/* v4.1.1 — Montažne kuće only; approved Home remains untouched. */
@media (min-width: 1024px) {
  /* Same 40px heading inset as the approved Home. */
  .ph-houses-v41 .ph-houses-gallery .ph-kicker,
  .ph-houses-v41 .ph-houses-gallery h2 {padding-left:40px;}
  /* Keep the process text and markers inside the page's architectural margins. */
  .ph-houses-v41 .ph-houses-process .ph-inner {width:min(1200px,calc(100% - 144px));}
}
/* Match the approved Home card spacing and section rhythm. */
.ph-houses-v41 .ph-houses-gallery .ph-model-grid {
  column-gap:6.25%;row-gap:clamp(26px,2.2vw,44px);
}
.ph-houses-v41 .ph-houses-gallery,
.ph-houses-v41 .ph-houses-process {padding-top:var(--ph-section-space,68px);padding-bottom:var(--ph-section-space,68px);}
.ph-houses-v41 .ph-houses-gallery {border-top:1px solid #ffffff26;border-bottom:1px solid #ffffff26;}
.ph-houses-v41 .ph-houses-process .ph-steps {gap:clamp(16px,2.2vw,32px);}
.ph-houses-v41 .ph-houses-process .ph-step {min-width:0;}
.ph-houses-v41 .ph-houses-process .ph-step p {max-width:350px;}
/* Light mode: chooser shares the same neutral canvas; no background photo. */
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser {
  background:#f7f5f0;color:#262923;border-color:#26292330;
}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser::before,
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser::after {content:none;}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser>.ph-kicker {color:#817052;}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser>h2 {color:#262923;}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser .ph-form-choice {
  background:#f7f5f0;color:#262923;border-color:#26292345;
}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser .ph-form-choice:hover,
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser .ph-form-choice.is-selected {
  background:#eee9df;border-color:#b99a67;
}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-chooser .ph-form-choice span {color:#50544c;}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-gallery {border-color:#26292330;}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-process .ph-step p {color:#50544c;}
@media (max-width:700px) {
  .ph-houses-v41 .ph-houses-gallery .ph-model-grid {column-gap:14px;row-gap:26px;}
  .ph-houses-v41 .ph-houses-process .ph-inner {width:calc(100% - 36px);}
}

/* v4.1.2 — scoped refinements for Montažne kuće; homepage unchanged. */
.ph-houses-v41 .ph-houses-process{position:relative;isolation:isolate;overflow:hidden;background:transparent!important}
.ph-houses-v41 .ph-houses-process::before{content:"";position:absolute;inset:0;z-index:-2;background-image:var(--ph-contact-background,url('assets/contact-background.png'));background-position:center;background-size:cover;background-repeat:no-repeat}
.ph-houses-v41 .ph-houses-process::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,13,11,.85),rgba(9,13,11,.64))}
.ph-houses-v41 .ph-houses-process .ph-inner{position:relative}
.ph-houses-v41 .ph-houses-process .ph-kicker{color:#bba98c}
.ph-houses-v41 .ph-houses-process .ph-step p{color:#c2c2bc}
@media(min-width:1024px){
  /* Slightly wider than v4.1.1, while retaining balanced architectural insets. */
  .ph-houses-v41 .ph-houses-process .ph-inner{width:min(1340px,calc(100% - 112px))}
  .ph-houses-v41 .ph-houses-process .ph-steps{gap:clamp(26px,3vw,48px)}
  .ph-houses-v41 .ph-houses-process .ph-step p{max-width:390px}
  /* Both the comparison heading and its table share the same 40px side inset. */
  .ph-houses-v41 .ph-compare{margin-left:40px;margin-right:40px}
}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-process{background:#f7f5f0!important;color:#262923}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-process::before,
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-process::after{content:none}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-process .ph-kicker{color:#776b54}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-process .ph-step p{color:#50544c}
@media(min-width:701px) and (max-width:1023px){
  .ph-houses-v41 .ph-houses-process .ph-inner{width:calc(100% - 72px)}
  .ph-houses-v41 .ph-compare{margin-left:24px;margin-right:24px}
}

/* v4.1.3 — Houses process: complete the three-step timeline and align the closing CTA. */
@media (min-width: 701px) {
  .ph-houses-v41 .ph-houses-process .ph-step:last-child .ph-step-marker::after {
    display: block;
  }
  .ph-houses-v41 .ph-houses-process .ph-houses-process-outro {
    margin-top: 58px;
    margin-bottom: 0;
    text-align: right;
    padding-right: 40px;
  }
}

/* v4.1.5 — Packages are one continuous section; photo belongs to the chooser only. */
.ph-houses-v41 .ph-houses-packages-combined{background:transparent;border-bottom:1px solid #ffffff26}
.ph-houses-v41 .ph-houses-packages-combined .ph-houses-chooser{border-bottom:0;padding-bottom:clamp(30px,3vw,48px)}
.ph-houses-v41 .ph-houses-packages-combined .ph-form-choice{aspect-ratio:auto;min-height:0;justify-content:flex-start;padding:28px 30px;gap:10px}
.ph-houses-v41 .ph-houses-packages-combined .ph-form-choice em{margin-top:8px}
.ph-houses-v41 .ph-houses-packages-combined .ph-houses-package-content{padding-top:22px;padding-bottom:clamp(40px,4vw,65px)}
.ph-houses-v41 .ph-houses-packages-combined .ph-package-compare-action{margin:0 0 20px}
.ph-houses-v41 .ph-houses-packages-combined .ph-package-legal{margin:20px auto 0;text-align:center}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-packages-combined{border-color:#26292330}
@media(max-width:700px){.ph-houses-v41 .ph-houses-packages-combined .ph-form-choice{padding:24px 22px;min-height:0}.ph-houses-v41 .ph-houses-packages-combined .ph-houses-package-content{padding-top:26px}}

/* v4.1.6: all three package choices share the same selection section. */
.ph-houses-v41 .ph-houses-packages-combined .ph-houses-chooser{padding-bottom:clamp(40px,4vw,65px)}
.ph-houses-v41 .ph-houses-packages-combined .ph-package-compare-action{margin:22px auto 0;text-align:center}
.ph-houses-v41 .ph-houses-packages-combined .ph-package-legal{margin:20px auto 0;text-align:center;max-width:1100px}
.ph-houses-v41 .ph-houses-packages-combined .ph-houses-package-content{padding-top:0;padding-bottom:0}
.ph-houses-v41 .ph-houses-packages-combined .ph-houses-package-content:has(> .ph-inner > .ph-package-panel:not([hidden])),
.ph-houses-v41 .ph-houses-packages-combined .ph-houses-package-content:has(> .ph-inner > .ph-compare:not([hidden])){padding-top:clamp(35px,4vw,60px);padding-bottom:clamp(40px,4vw,65px)}
/* On dark mode, the photograph is limited to the selection area. */
.ph-houses-v41 .ph-houses-packages-combined .ph-houses-chooser .ph-package-compare-action .ph-compare-toggle{color:#eae9e4;border-color:#a99e8e}
.ph-houses-v41 .ph-houses-packages-combined .ph-houses-chooser .ph-package-legal{color:#c4c4c0}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-packages-combined .ph-houses-chooser .ph-compare-toggle{color:#262923;border-color:#b7aa97}
html[data-ph-theme="light"] .ph-houses-v41 .ph-houses-packages-combined .ph-houses-chooser .ph-package-legal{color:#50544c}
