/* Kilner: existing navy/blue identity, architectural spacing, real product imagery. */
.kilner-premium{--paper:#fff;--surface:#f3f5f7;background:var(--paper)}
.kilner-premium .header{height:80px;background:#fff;border-bottom:1px solid #e3e7ea}
.kilner-premium .header-inner{height:100%;gap:24px}
.kilner-premium .desktop-nav{gap:22px;font-size:12px;white-space:nowrap}
.kilner-premium .header-actions{gap:22px}
.kilner-premium .header-cta{min-height:44px;padding:10px 15px;font-size:12px}
.kilner-premium .button{border-radius:2px;transition:background-color 180ms ease-out,transform 120ms ease-out}
.kilner-premium .button:active{transform:scale(.98)}
.architect-hero{padding-top:46px}
.architect-intro{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:64px;align-items:end;margin-bottom:38px}
.architect-overline{font-size:13px;line-height:1.5;color:var(--muted);margin:0 0 18px;letter-spacing:0;text-transform:none}
.architect-intro h1{margin:0;font-weight:400;font-size:clamp(36px,4.1vw,59px);line-height:1.12;letter-spacing:-.035em;color:var(--navy)}
.architect-intro h1 span{color:#57616b}
.architect-aside>p{font-size:14px;line-height:1.6;margin:0 0 18px;max-width:410px;color:var(--muted)}
.architect-aside .architect-lead{font-size:18px;line-height:1.5;color:var(--ink);margin-bottom:10px}
.architect-aside .button{min-height:48px;font-size:13px;gap:24px}
.architect-tool{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:312px;min-height:44px;margin-top:8px;font-size:13px;color:var(--navy)}
.architect-project{margin:0;overflow:hidden}
.architect-project picture{display:block;overflow:hidden;background:#e6e9eb}
.architect-project img{display:block;width:100%;height:auto;aspect-ratio:2.65;object-fit:cover;object-position:50% 48%;animation:project-settle 650ms cubic-bezier(.2,.7,.3,1) both}
.architect-project figcaption{display:flex;justify-content:space-between;gap:16px;padding-top:12px;font-size:11px;color:var(--muted);line-height:1.5}
.architect-project figcaption a{color:var(--ink)}
.experience-line{display:flex;flex-wrap:wrap;gap:16px 44px;margin-top:26px;padding-bottom:0;color:var(--muted)}
.experience-line p{display:flex;align-items:baseline;gap:8px;margin:0;font-size:13px;line-height:1.6}
.experience-line strong{font-size:14px;font-weight:500;color:var(--ink)}
.manufacturer-heading{max-width:800px;margin-bottom:36px}
.manufacturer-heading h2{font-size:clamp(30px,3.2vw,46px);font-weight:400;line-height:1.15;margin:0 0 22px}
.manufacturer-heading p{max-width:620px;font-size:16px;line-height:1.7;color:var(--muted);margin:0}
.manufacturer-tabs{display:flex;gap:40px;border-bottom:1px solid var(--line);margin-bottom:32px}
.manufacturer-tabs button{position:relative;appearance:none;background:none;border:0;padding:18px 0;min-height:56px;color:var(--muted);font:500 17px 'IBM Plex Sans',sans-serif;cursor:pointer}
.manufacturer-tabs button[aria-selected=true]{color:var(--navy)}
.manufacturer-tabs button[aria-selected=true]::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--navy)}
.manufacturer-panel{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:72px;align-items:center}
.manufacturer-panel[hidden]{display:none}
.manufacturer-panel figure{margin:0;min-width:0}
.manufacturer-panel img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:contain;background:#f7f8f9}
.manufacturer-panel[data-manufacturer-panel='1'] img,.manufacturer-panel[data-manufacturer-panel='2'] img{object-fit:cover}
.manufacturer-panel figcaption{font-size:11px;line-height:1.6;margin-top:12px;color:var(--muted)}
.manufacturer-panel h3{font-size:clamp(28px,3vw,38px);font-weight:400;line-height:1.15;letter-spacing:-.025em;margin:10px 0 24px}
.manufacturer-name{color:var(--navy);font-size:15px;font-weight:500}
.manufacturer-panel>div>p:not(.manufacturer-name){font-size:16px;line-height:1.7;color:var(--muted);max-width:380px}
.manufacturer-panel>div>a{display:inline-flex;align-items:center;min-height:44px;font-size:14px;color:var(--navy);margin-top:18px}
.planner-feature{background:#f3f5f7;padding:78px 0}
.planner-feature-layout{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:70px;align-items:center}
.planner-feature h2{font-size:clamp(32px,3.1vw,45px);line-height:1.12;font-weight:400;margin:0 0 24px;color:var(--navy)}
.planner-feature p:not(.architect-overline){color:var(--muted);font-size:15px;line-height:1.7;margin:0 0 26px;max-width:410px}
.planner-feature .button{font-size:13px;min-height:50px}
.planner-feature small{display:block;font-size:12px;margin-top:15px;color:var(--muted)}
.planner-screen{display:block;min-width:0;color:var(--navy)}
.planner-screen img{display:block;width:100%;height:auto;border:1px solid #cad2da;background:white}
.planner-screen>span{display:flex;align-items:center;justify-content:flex-end;min-height:44px;font-size:13px;padding-top:12px}
.wekerle-teaser{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;padding-top:0;padding-bottom:85px}
.wekerle-teaser h2{font-weight:400;font-size:clamp(28px,3vw,42px);line-height:1.2;margin:0}
.wekerle-teaser>div>p:not(.architect-overline){color:var(--muted);line-height:1.7;font-size:16px;margin:0 0 18px}
.region-copy{padding-block:80px;max-width:940px}
.region-copy h2{font-size:32px;line-height:1.2;font-weight:400;margin:0 0 22px}
.region-copy p{font-size:16px;line-height:1.8;max-width:790px;color:var(--muted)}
.program-page{padding-top:44px;padding-bottom:90px;max-width:1040px}
.program-page h1{font-size:clamp(30px,4vw,53px);font-weight:400;line-height:1.15;letter-spacing:-.025em;color:var(--navy);margin:28px 0}
.program-page>.architect-overline{margin-top:36px}
.program-intro{max-width:820px;font-size:19px;line-height:1.7;color:var(--muted)}
.program-status{padding:18px 22px;background:#edf1f7;color:var(--navy);font-size:14px;line-height:1.7;margin:32px 0}
.program-table{overflow-x:auto;margin-bottom:50px}
.program-table table{border-collapse:collapse;width:100%;font-size:14px;line-height:1.7}
.program-table td,.program-table th{vertical-align:top;text-align:left;padding:18px 16px 18px 0;border-bottom:1px solid var(--line)}
.program-table th{font-weight:500;color:var(--navy)}
.program-table td:first-child{width:26%}
.program-table td:nth-child(2){width:20%}
.program-page>section{max-width:820px;margin:44px 0}
.program-page h2{font-size:27px;font-weight:400;line-height:1.3;margin-bottom:18px}
.program-page section p,.program-page section li{font-size:16px;line-height:1.8;color:var(--muted)}
.program-page a:not(.button){color:var(--navy);text-underline-offset:4px}
.program-sources li{margin-bottom:12px;overflow-wrap:anywhere}
.program-sources>p{font-size:13px!important}
.program-action{padding-top:26px;border-top:1px solid var(--line)}
.program-action .text-button{margin-left:24px}
@keyframes project-settle{from{transform:scale(1.025)}to{transform:scale(1)}}
@keyframes panel-enter{from{opacity:.7;transform:translateY(6px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:no-preference){.manufacturer-panel.is-entering{animation:panel-enter 180ms ease-out both}.kilner-premium .will-reveal{transform:translateY(16px);transition:opacity 400ms ease-out,transform 400ms ease-out}.kilner-premium .will-reveal.visible{transform:none}}
@media(hover:hover) and (pointer:fine){.reference-card img{transition:transform 240ms ease-out}.reference-card:hover img{transform:scale(1.025)}.architect-tool:hover,.manufacturer-panel>div>a:hover{color:var(--blue)}}
@media(max-width:1250px){.kilner-premium .desktop-nav{display:none}.kilner-premium .menu-toggle{display:flex}.kilner-premium .header-inner{justify-content:space-between}.architect-intro{gap:36px}.architect-intro h1{font-size:46px}.manufacturer-panel{gap:40px}.planner-feature-layout{gap:38px}.planner-feature .button{white-space:normal}}
@media(min-width:961px) and (max-width:1250px){.kilner-premium .mobile-nav:not([hidden]){display:flex}}
@media(max-width:760px){.architect-hero{padding-top:30px}.architect-intro{grid-template-columns:1fr;gap:24px;margin-bottom:26px}.architect-intro h1{font-size:clamp(31px,7vw,46px);line-height:1.14}.architect-overline{margin-bottom:14px;font-size:12px}.architect-aside .architect-lead{font-size:16px}.architect-aside>p{font-size:13px;max-width:520px}.architect-aside .button{font-size:13px}.architect-project img{aspect-ratio:1.25;object-position:51% 50%}.architect-project figcaption{font-size:10px;flex-wrap:wrap;gap:6px}.experience-line{gap:10px 22px;margin-top:22px}.experience-line p{font-size:12px}.experience-line strong{font-size:13px}.manufacturer-heading{margin-bottom:22px}.manufacturer-heading p{font-size:15px}.manufacturer-tabs{gap:28px;margin-bottom:24px}.manufacturer-tabs button{font-size:16px}.manufacturer-panel{grid-template-columns:1fr;gap:24px}.manufacturer-panel img{aspect-ratio:1.4}.manufacturer-panel>div>p:not(.manufacturer-name){max-width:100%;font-size:15px}.manufacturer-panel h3{margin:10px 0 15px}.manufacturer-panel>div>a{margin-top:6px}.planner-feature{padding:58px 0}.planner-feature-layout{grid-template-columns:1fr;gap:30px}.planner-feature p:not(.architect-overline){max-width:none}.planner-screen>span{padding-top:5px}.wekerle-teaser{grid-template-columns:1fr;gap:24px;padding-bottom:60px}.region-copy{padding-block:60px}.region-copy h2{font-size:28px}.region-copy p{font-size:15px}.program-intro{font-size:17px}.program-page h2{font-size:25px}.program-table td,.program-table th{min-width:130px;font-size:13px}.program-table td:last-child{min-width:250px}.program-action .text-button{display:flex;margin:18px 0 0}.program-status{padding:16px}.kilner-premium .header{height:72px}}
@media(max-width:400px){.manufacturer-tabs{gap:22px}.manufacturer-tabs button{font-size:14px}.architect-intro h1{font-size:31px}.architect-aside .button{font-size:12px;gap:12px}.kilner-premium .header-actions{gap:10px}.experience-line{display:block}.experience-line p+p{margin-top:7px}}
@media(prefers-reduced-motion:reduce){.architect-project img,.manufacturer-panel.is-entering{animation:none}.kilner-premium .button,.kilner-premium .will-reveal,.reference-card img{transition:none;transform:none}}
.keyboard-nav .manufacturer-panel{animation:none}.keyboard-nav .button{transition:none;transform:none}

/* Human owner portrait: retain the original pixels and identity, soften only the presentation. */
.kilner-premium .owner-portrait img{border:0;border-radius:24px;aspect-ratio:4/5;object-fit:cover;object-position:50% 20%}
.kilner-premium .owner-portrait figcaption{padding-left:4px}
.kilner-premium .header{position:sticky;top:0;z-index:80;transition:box-shadow 180ms ease-out}
.kilner-premium .header.is-scrolled{box-shadow:0 4px 8px #0b224012}
.kilner-premium .desktop-nav>a{position:relative;min-height:44px;display:inline-flex;align-items:center}
.kilner-premium .desktop-nav>a::after{content:'';position:absolute;left:0;right:0;bottom:4px;height:1px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform 180ms ease-out}
.architect-intro h1>.hero-line{display:block;overflow:hidden;color:var(--navy);padding-bottom:.06em;margin-bottom:-.06em}
.architect-intro h1>.hero-line+ .hero-line{color:#57616b}
.hero-line>span{display:block;color:inherit!important}
.architect-project{position:relative}
.architect-project picture{position:relative}
.hero-curtains{display:flex;position:absolute;inset:0 0 28px;pointer-events:none}
.hero-curtains i{display:block;width:33.334%;height:100%;background:#fff;transform:scaleY(0);transform-origin:top}
.quote-intro .quote-deliverable{font-size:15px;line-height:1.75;margin-top:24px;color:var(--ink);max-width:390px}
@media(prefers-reduced-motion:no-preference){
 .kilner-premium .header .brand{animation:header-arrive 550ms cubic-bezier(.2,.7,.3,1) both}
 .kilner-premium .desktop-nav>a{animation:header-arrive 500ms cubic-bezier(.2,.7,.3,1) both}
 .kilner-premium .desktop-nav>a:nth-child(2){animation-delay:45ms}.kilner-premium .desktop-nav>a:nth-child(3){animation-delay:90ms}.kilner-premium .desktop-nav>a:nth-child(4){animation-delay:135ms}.kilner-premium .desktop-nav>a:nth-child(5){animation-delay:180ms}
 .hero-line>span{animation:headline-arrive 850ms cubic-bezier(.16,1,.3,1) both}
 .hero-line:nth-child(2)>span{animation-delay:110ms}
 .hero-curtains i{animation:architecture-reveal 1050ms cubic-bezier(.76,0,.24,1) both}
 .hero-curtains i:nth-child(2){animation-delay:95ms}.hero-curtains i:nth-child(3){animation-delay:190ms}
 .architect-project img{animation:architecture-camera 1600ms cubic-bezier(.2,.7,.3,1) both}
 .architect-aside{animation:header-arrive 700ms 180ms cubic-bezier(.2,.7,.3,1) both}
 .mobile-nav:not([hidden]){animation:menu-arrive 220ms ease-out both}
}
@keyframes header-arrive{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@keyframes headline-arrive{from{transform:translateY(108%)}to{transform:none}}
@keyframes architecture-reveal{from{transform:scaleY(1)}to{transform:scaleY(0)}}
@keyframes architecture-camera{from{transform:scale(1.09) translateY(1%)}to{transform:scale(1) translateY(0)}}
@keyframes menu-arrive{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
@media(hover:hover) and (pointer:fine){.kilner-premium .desktop-nav>a:hover::after{transform:scaleX(1)}}
@media(max-width:760px){.hero-curtains{inset:0 0 43px}.quote-intro .quote-deliverable{font-size:14px;margin-top:20px}.kilner-premium .owner-portrait img{border-radius:22px;aspect-ratio:4/5}}
@media(prefers-reduced-motion:reduce){.hero-curtains{display:none}.hero-line>span,.architect-aside,.kilner-premium .header .brand,.kilner-premium .desktop-nav>a{animation:none;transform:none;opacity:1}.kilner-premium .header,.kilner-premium .desktop-nav>a::after{transition:none}}

.hero-viewport{position:relative;overflow:hidden}.hero-curtains{inset:0}@media(max-width:360px){.architect-intro h1{font-size:28px}}
