:root{--hp-ink:#172c39;--hp-primary:#1f3a4a;--hp-muted:#60717a;--hp-warm:#f5f3ee;--hp-line:#d9d6cf;--hp-orange:#d77a2d;--hp-white:#fff;--hp-deep:#132733}
*{box-sizing:border-box}
.hp-home{background:var(--hp-warm);color:var(--hp-ink);font-family:Arial,Helvetica,sans-serif;overflow:hidden}
.hp-home h1,.hp-home h2,.hp-home h3,.hp-home p{margin-top:0}
.hp-home h1,.hp-home h2,.hp-home h3{font-style:normal;letter-spacing:-.035em}
.hp-container{width:min(1240px,calc(100% - 56px));margin:0 auto}
.hp-section{padding:112px 0}
.hp-eyebrow{display:flex;align-items:center;gap:12px;margin:0 0 24px;color:#31566b;font-size:12px;font-weight:800;letter-spacing:.17em;line-height:1.4}
.hp-eyebrow:before{content:"";width:28px;height:2px;background:var(--hp-orange);flex:0 0 auto}
.hp-eyebrow-light{color:#e8f0f3}
.hp-heading-split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.62fr);gap:80px;align-items:end;margin-bottom:52px}
.hp-heading h2,.hp-config-copy h2,.hp-company-copy h2,.hp-faq-layout h2{margin:0;font-size:clamp(38px,4.2vw,64px);line-height:1.02;font-weight:500;letter-spacing:-.055em}
.hp-heading>p,.hp-config-copy>p,.hp-company-copy>p,.hp-faq-layout>div>p{margin:0;color:var(--hp-muted);font-size:17px;line-height:1.78}
.hp-btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:54px;padding:0 24px;border:1px solid transparent;font-size:12px;font-weight:800;letter-spacing:.07em;text-decoration:none;transition:.25s ease}
.hp-btn-accent{background:var(--hp-orange);color:#fff}
.hp-btn-accent:hover{background:#bd6420;transform:translateY(-2px)}
.hp-btn-ghost{border-color:rgba(255,255,255,.68);color:#fff;background:rgba(8,25,35,.18);backdrop-filter:blur(5px)}
.hp-btn-ghost:hover{background:#fff;color:var(--hp-ink)}
.hp-text-link{display:inline-flex;margin-top:30px;color:#174f73;font-size:12px;font-weight:800;letter-spacing:.08em;text-decoration:none;border-bottom:1px solid #9aabb3;padding-bottom:7px}

.hp-hero{position:relative;min-height:760px;height:calc(100vh - 76px);max-height:880px;display:flex;align-items:center;background:#203642}
.hp-hero-media,.hp-hero-overlay{position:absolute;inset:0}
.hp-hero-media{background:url("../assets/catalog/expandable-case-1.jpg") center/cover no-repeat}
.hp-hero-media video{width:100%;height:100%;object-fit:cover;display:block}
.hp-hero-overlay{background:linear-gradient(90deg,rgba(10,29,39,.94) 0%,rgba(10,29,39,.78) 39%,rgba(10,29,39,.22) 70%,rgba(10,29,39,.08) 100%),linear-gradient(0deg,rgba(9,25,34,.32),transparent 45%)}
.hp-hero-content{position:relative;z-index:2;padding-top:36px;color:#fff}
.hp-hero-content h1{max-width:830px;margin:0 0 28px;font-size:clamp(54px,6vw,92px);line-height:.96;font-weight:600;letter-spacing:-.06em}
.hp-hero-copy{max-width:700px;margin:0 0 36px;color:#e3eaed;font-size:18px;line-height:1.72}
.hp-actions{display:flex;gap:12px;flex-wrap:wrap}

.hp-compliance-strip{background:#fff;border-bottom:1px solid var(--hp-line);padding:25px 0 29px}
.hp-compliance-intro{display:flex;align-items:baseline;justify-content:space-between;gap:32px;padding-bottom:20px;border-bottom:1px solid var(--hp-line)}
.hp-compliance-intro>span{color:var(--hp-ink);font-size:11px;font-weight:800;letter-spacing:.15em}
.hp-compliance-intro p{margin:0;color:var(--hp-muted);font-size:12px;line-height:1.5;text-align:right}
.hp-cert-grid{display:grid;grid-template-columns:repeat(6,1fr);align-items:stretch}
.hp-cert{display:flex;min-height:92px;align-items:center;justify-content:center;flex-direction:column;gap:7px;color:#778187;text-align:center}
.hp-cert+.hp-cert{border-left:1px solid var(--hp-line)}
.hp-cert b{color:#263a45;font-size:23px;line-height:1;font-weight:750;letter-spacing:-.035em}
.hp-cert:nth-child(1) b{font-size:31px;letter-spacing:-.09em}
.hp-cert:nth-child(4) b{font-size:27px;letter-spacing:.02em}
.hp-cert:nth-child(5) b,.hp-cert:nth-child(6) b{width:46px;height:46px;display:grid;place-items:center;border:2px solid #6f7a80;border-radius:50%;font-size:12px;letter-spacing:.04em}
.hp-cert span{font-size:10px;font-weight:700;line-height:1.2;letter-spacing:.055em;text-transform:uppercase}

.hp-products{background:var(--hp-warm)}
.hp-product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hp-product-card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--hp-line);color:var(--hp-ink);text-decoration:none;transition:.25s ease}
.hp-product-card:hover{transform:translateY(-5px);box-shadow:0 22px 55px rgba(27,45,54,.12)}
.hp-product-image{position:relative;aspect-ratio:1.3/1;overflow:hidden;background:#e9eceb}
.hp-product-image img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.hp-product-card:hover .hp-product-image img{transform:scale(1.025)}
.hp-product-image>span{position:absolute;left:18px;bottom:18px;padding:9px 12px;background:#fff;color:var(--hp-primary);font-size:10px;font-weight:800;letter-spacing:.12em}
.hp-product-body{display:flex;flex:1;flex-direction:column;padding:30px 28px 27px}
.hp-card-kicker{margin:0 0 12px;color:var(--hp-orange);font-size:10px;font-weight:800;letter-spacing:.12em}
.hp-product-body h3{margin:0 0 16px;font-size:27px;line-height:1.1;font-weight:600}
.hp-product-body>p:not(.hp-card-kicker){margin:0;color:var(--hp-muted);font-size:15px;line-height:1.65}
.hp-best{display:grid;grid-template-columns:58px 1fr;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid #ebe9e3;color:var(--hp-muted);font-size:12px;line-height:1.5}
.hp-best strong{color:var(--hp-ink)}
.hp-product-body>b{margin-top:auto;padding-top:28px;color:#17577d;font-size:11px;letter-spacing:.08em}

.hp-compare{background:#fff;border-top:1px solid var(--hp-line);border-bottom:1px solid var(--hp-line)}
.hp-table-wrap{overflow-x:auto;border:1px solid var(--hp-line)}
.hp-table-wrap table{width:100%;min-width:860px;border-collapse:collapse;background:#fff}
.hp-table-wrap th,.hp-table-wrap td{padding:22px 24px;border-bottom:1px solid var(--hp-line);border-right:1px solid var(--hp-line);text-align:left;font-size:14px;line-height:1.45}
.hp-table-wrap tr:last-child th,.hp-table-wrap tr:last-child td{border-bottom:0}
.hp-table-wrap th:last-child,.hp-table-wrap td:last-child{border-right:0}
.hp-table-wrap thead th{background:var(--hp-primary);color:#fff;font-size:12px;letter-spacing:.06em}
.hp-table-wrap thead th:first-child{background:#eef0ed;color:var(--hp-ink)}
.hp-table-wrap tbody th{background:#f7f6f2;width:20%;font-size:12px;letter-spacing:.05em}
.hp-compare-action{display:flex;justify-content:space-between;align-items:center;margin-top:22px;font-size:13px}
.hp-compare-action a{color:#17577d;font-weight:800;text-decoration:none;letter-spacing:.06em}

.hp-applications{background:var(--hp-warm)}
.hp-mosaic{display:grid;grid-template-columns:1.25fr .75fr .75fr;grid-template-rows:300px 300px;gap:16px}
.hp-scene{position:relative;overflow:hidden;color:#fff;text-decoration:none;background:#243a46}
.hp-scene-large{grid-row:1/3}
.hp-scene-wide{grid-column:2/4}
.hp-scene img{width:100%;height:100%;object-fit:cover;transition:transform .55s ease}
.hp-scene:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(7,23,32,.82),rgba(7,23,32,0) 63%)}
.hp-scene:hover img{transform:scale(1.025)}
.hp-scene>div{position:absolute;z-index:2;left:28px;right:28px;bottom:26px}
.hp-scene span{font-size:10px;font-weight:800;letter-spacing:.13em;color:#f6b36f}
.hp-scene h3{margin:9px 0 0;font-size:25px;line-height:1.08;font-weight:600}
.hp-scene-large h3{font-size:38px}
.hp-scene p{max-width:480px;margin:12px 0 0;color:#e4eaec;font-size:14px;line-height:1.6}

.hp-configuration{background:#fff}
.hp-config-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:78px;align-items:center}
.hp-config-copy>p{margin:24px 0 0}
.hp-check-list{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:32px 0 0;padding:0;border-top:1px solid var(--hp-line);list-style:none}
.hp-check-list li{position:relative;padding:15px 12px 15px 25px;border-bottom:1px solid var(--hp-line);color:#3f515a;font-size:13px}
.hp-check-list li:before{content:"";position:absolute;left:2px;top:20px;width:7px;height:7px;background:var(--hp-orange)}
.hp-config-gallery{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:220px 220px;gap:12px}
.hp-config-gallery figure{position:relative;margin:0;overflow:hidden;background:#e8e8e3}
.hp-config-gallery .hp-config-main{grid-row:1/3}
.hp-config-gallery img{width:100%;height:100%;object-fit:cover}
.hp-config-gallery figcaption{position:absolute;left:14px;bottom:14px;padding:8px 10px;background:#fff;color:var(--hp-primary);font-size:9px;font-weight:800;letter-spacing:.1em}

.hp-company{background:#edeae3}
.hp-company-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:88px;align-items:center}
.hp-company-visual{position:relative;min-height:610px;background:url("../02_Living_Dining_Kitchen/expandable-interior-dining-bedroom.jpg") center 54%/cover no-repeat}
.hp-company-main{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.hp-company-small{position:absolute;right:0;bottom:0;width:46%;height:245px;object-fit:cover;border:10px solid #edeae3}
.hp-company-visual>span{position:absolute;left:20px;bottom:60px;padding:12px 14px;background:#fff;color:var(--hp-primary);font-size:10px;font-weight:800;letter-spacing:.11em}
.hp-company-copy>p{margin:24px 0 0}
.hp-capability-list{margin-top:30px;border-top:1px solid #cbc7bf}
.hp-capability-list>div{display:grid;grid-template-columns:38px 1fr;gap:14px;padding:18px 0;border-bottom:1px solid #cbc7bf}
.hp-capability-list b{color:var(--hp-orange);font-size:11px;letter-spacing:.1em}
.hp-capability-list span{color:var(--hp-muted);font-size:13px;line-height:1.55}
.hp-capability-list strong{display:block;color:var(--hp-ink);font-size:15px;margin-bottom:3px}

.hp-process{background:var(--hp-deep);color:#fff}
.hp-process .hp-heading>p{color:#bfcbd1}
.hp-process-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.24);border-bottom:1px solid rgba(255,255,255,.24)}
.hp-process-grid article{min-height:260px;padding:31px 28px 36px 0}
.hp-process-grid article+article{border-left:1px solid rgba(255,255,255,.2);padding-left:28px}
.hp-process-grid b{display:block;margin-bottom:62px;color:#f1a85e;font-size:12px;letter-spacing:.12em}
.hp-process-grid h3{margin:0 0 13px;font-size:21px;font-weight:600}
.hp-process-grid p{margin:0;color:#c4d0d5;font-size:14px;line-height:1.65}

.hp-projects{background:#fff}
.hp-project-grid{display:grid;grid-template-columns:1.45fr .55fr .55fr;grid-template-rows:260px 260px;gap:14px}
.hp-project-grid>a{position:relative;overflow:hidden;background:#e7e7e3;color:#fff;text-decoration:none}
.hp-project-main{grid-row:1/3}
.hp-project-grid>a:last-child{grid-column:2/4}
.hp-project-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.hp-project-grid>a:hover img{transform:scale(1.025)}
.hp-project-grid>a:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(9,25,34,.78),transparent 58%)}
.hp-project-grid>a>span{position:absolute;z-index:2;left:18px;bottom:17px;font-size:10px;font-weight:800;letter-spacing:.11em}
.hp-project-main>div{position:absolute;z-index:2;left:28px;right:28px;bottom:27px}
.hp-project-main span{font-size:10px;color:#f5ae66;font-weight:800;letter-spacing:.12em}
.hp-project-main h3{max-width:520px;margin:10px 0 18px;font-size:34px;line-height:1.08}
.hp-project-main b{font-size:11px;letter-spacing:.08em}

.hp-testimonials{padding-top:96px;padding-bottom:82px;background:var(--hp-warm)}
.hp-testimonial-heading{margin-bottom:42px}
.hp-testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.hp-testimonial-card{position:relative;display:flex;flex-direction:column;min-height:340px;padding:30px;background:#fff;border:1px solid var(--hp-line);box-shadow:0 16px 36px rgba(18,38,49,.045)}
.hp-testimonial-card:nth-child(2){transform:translateY(18px);border-top:3px solid var(--hp-orange)}
.hp-testimonial-top{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.hp-quote-mark{color:var(--hp-orange);font-family:Georgia,serif;font-size:56px;line-height:.72}
.hp-feedback-label{color:var(--hp-primary);font-size:9px;font-weight:800;letter-spacing:.11em;text-align:right}
.hp-testimonial-card blockquote{margin:38px 0 42px;color:var(--hp-ink);font-size:17px;font-style:normal;line-height:1.72}
.hp-testimonial-card footer{display:flex;justify-content:space-between;gap:18px;margin-top:auto;padding-top:20px;border-top:1px solid var(--hp-line)}
.hp-testimonial-card footer strong{max-width:68%;color:var(--hp-ink);font-size:12px;line-height:1.45}
.hp-testimonial-card footer span{color:var(--hp-muted);font-size:11px;line-height:1.45;text-align:right}
.hp-testimonial-note{margin:34px 0 0;color:var(--hp-muted);font-size:10px;letter-spacing:.035em}

.hp-faq{padding-top:88px;background:var(--hp-warm);border-top:1px solid #e5e1da}
.hp-faq-layout{display:grid;grid-template-columns:.72fr 1.28fr;gap:100px;align-items:start}
.hp-faq-layout>div>p{margin-top:25px}
.hp-faq-list{border-top:1px solid var(--hp-line)}
.hp-faq-list details{border-bottom:1px solid var(--hp-line)}
.hp-faq-list summary{display:flex;justify-content:space-between;gap:30px;padding:24px 0;cursor:pointer;list-style:none;color:var(--hp-ink);font-size:16px;font-weight:700;line-height:1.4}
.hp-faq-list summary::-webkit-details-marker{display:none}
.hp-faq-list summary span{color:var(--hp-orange);font-size:20px;font-weight:400}
.hp-faq-list details[open] summary span{transform:rotate(45deg)}
.hp-faq-list details p{max-width:760px;margin:-5px 44px 23px 0;color:var(--hp-muted);font-size:14px;line-height:1.75}

.hp-cta{padding:92px 0;background:var(--hp-primary);color:#fff}
.hp-cta-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:110px;align-items:center}
.hp-cta h2{margin:0;font-size:clamp(42px,5vw,68px);line-height:1;letter-spacing:-.055em;font-weight:500}
.hp-cta-grid>div>p{margin:0 0 26px;color:#d4dfe3;font-size:17px;line-height:1.75}
.hp-cta-tags{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 30px}
.hp-cta-tags span{padding:8px 11px;border:1px solid rgba(255,255,255,.28);font-size:10px;font-weight:700;letter-spacing:.08em}

@media(max-width:1050px){
  .hp-heading-split{gap:44px}.hp-product-body{padding:24px 20px}.hp-product-body h3{font-size:23px}.hp-cert-grid{grid-template-columns:repeat(3,1fr)}.hp-cert:nth-child(4){border-left:0}.hp-cert:nth-child(n+4){border-top:1px solid var(--hp-line)}
  .hp-config-layout,.hp-company-grid{gap:48px}.hp-company-visual{min-height:520px}.hp-mosaic{grid-template-rows:260px 260px}.hp-process-grid article{padding-right:20px}.hp-process-grid article+article{padding-left:20px}
}
@media(max-width:820px){
  .hp-container{width:min(100% - 36px,1240px)}.hp-section{padding:78px 0}.hp-heading-split,.hp-config-layout,.hp-company-grid,.hp-faq-layout,.hp-cta-grid{grid-template-columns:1fr;gap:34px}.hp-heading-split{margin-bottom:36px}.hp-heading h2,.hp-config-copy h2,.hp-company-copy h2,.hp-faq-layout h2{font-size:clamp(36px,10vw,52px)}
  .hp-hero{min-height:700px;height:auto;padding:130px 0 76px}.hp-hero-content h1{font-size:clamp(48px,12vw,70px)}.hp-hero-copy{font-size:16px}
  .hp-product-grid{grid-template-columns:1fr}.hp-product-image{aspect-ratio:1.7/1}.hp-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:420px 240px 300px}.hp-scene-large{grid-column:1/3;grid-row:auto}.hp-scene-wide{grid-column:1/3}.hp-config-gallery{grid-template-rows:200px 200px}.hp-company-visual{min-height:520px}.hp-process-grid{grid-template-columns:1fr 1fr}.hp-process-grid article:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.2)}.hp-process-grid article:nth-child(4){border-top:1px solid rgba(255,255,255,.2)}.hp-process-grid b{margin-bottom:38px}.hp-project-grid{grid-template-columns:1fr 1fr;grid-template-rows:420px 230px 260px}.hp-project-main{grid-column:1/3;grid-row:auto}.hp-project-grid>a:last-child{grid-column:1/3}.hp-testimonial-grid{grid-template-columns:1fr}.hp-testimonial-card{min-height:auto}.hp-testimonial-card:nth-child(2){transform:none}.hp-testimonial-note{margin-top:18px}.hp-cta-grid{gap:32px}
}
@media(max-width:560px){
  .hp-container{width:calc(100% - 28px)}.hp-section{padding:64px 0}.hp-eyebrow{font-size:10px;margin-bottom:18px}.hp-hero{min-height:680px;padding:118px 0 54px}.hp-hero-overlay{background:linear-gradient(90deg,rgba(10,29,39,.92),rgba(10,29,39,.62)),linear-gradient(0deg,rgba(9,25,34,.5),transparent)}.hp-hero-content h1{font-size:47px}.hp-actions{display:grid}.hp-btn{width:100%;padding:0 17px}.hp-compliance-strip{padding:22px 0 24px}.hp-compliance-intro{display:block;padding-bottom:17px}.hp-compliance-intro p{margin-top:7px;text-align:left}.hp-cert{min-height:82px}.hp-cert b{font-size:18px}.hp-cert:nth-child(1) b{font-size:25px}.hp-cert:nth-child(4) b{font-size:22px}.hp-cert:nth-child(5) b,.hp-cert:nth-child(6) b{width:40px;height:40px;font-size:10px}.hp-cert span{font-size:8px;letter-spacing:.035em}.hp-product-image{aspect-ratio:1.35/1}.hp-best{grid-template-columns:1fr;gap:4px}.hp-compare-action{align-items:flex-start;gap:12px;flex-direction:column}.hp-mosaic{display:grid;grid-template-columns:1fr;grid-template-rows:380px repeat(3,250px)}.hp-scene-large,.hp-scene-wide{grid-column:auto}.hp-scene-large h3{font-size:30px}.hp-config-gallery{grid-template-columns:1fr;grid-template-rows:310px 220px 220px}.hp-config-gallery .hp-config-main{grid-row:auto}.hp-check-list{grid-template-columns:1fr}.hp-company-visual{min-height:430px}.hp-company-small{width:50%;height:190px;border-width:7px}.hp-company-visual>span{bottom:48px;left:10px}.hp-process-grid{grid-template-columns:1fr}.hp-process-grid article{min-height:auto;padding:25px 0}.hp-process-grid article+article,.hp-process-grid article:nth-child(3){border-left:0;border-top:1px solid rgba(255,255,255,.2);padding-left:0}.hp-process-grid b{margin-bottom:24px}.hp-project-grid{grid-template-columns:1fr;grid-template-rows:380px 220px 220px 230px}.hp-project-main,.hp-project-grid>a:last-child{grid-column:auto}.hp-project-main h3{font-size:28px}.hp-faq-layout{gap:42px}.hp-cta{padding:68px 0}.hp-cta h2{font-size:44px}
}

/* Real expandable-house photography placement */
.hp-product-featured .hp-product-image img{object-position:center 56%}
.hp-mosaic .hp-scene-large img{object-position:center 58%}
.hp-mosaic .hp-scene-wide img{object-position:center 62%}
.hp-config-gallery figure:nth-child(2) img{object-position:center 58%}
.hp-config-gallery figure:nth-child(3) img{object-position:center 62%}
.hp-company-small{object-position:center 58%}
.hp-project-main img{object-position:center 58%}
.hp-project-grid>a:nth-child(2) img{object-position:center 58%}
.hp-project-grid>a:nth-child(3) img{object-position:center 60%}
.hp-project-grid>a:nth-child(4) img{object-position:center 55%}

/* Distinct real-photo crops: keep each scene readable in its assigned slot */
.hp-scene img[src$="expandable-interior-dining-wide.jpg"]{object-position:center 58%}
.hp-scene img[src$="expandable-porch-exterior.jpg"]{object-position:center 62%}
.hp-config-gallery img[src$="expandable-interior-kitchen.jpg"]{object-position:center 58%}
.hp-config-gallery img[src$="expandable-interior-bathroom-shower.jpg"]{object-position:center 64%}
.hp-company-small[src$="expandable-interior-corridor.jpg"]{object-position:center 56%}
.hp-project-grid img[src$="expandable-interior-bedroom-floral.jpg"]{object-position:center 55%}
.hp-project-grid img[src$="expandable-interior-living.jpg"]{object-position:center 58%}
.hp-project-grid img[src$="expandable-interior-bathroom-vanity.jpg"]{object-position:center 64%}
.hp-project-grid img[src$="expandable-interior-bedroom.jpg"]{object-position:center 54%}
