.final-home .living-intro.shell{position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:1fr 2.2fr;align-items:center;gap:40px;margin-top:40px;margin-bottom:24px;padding:56px 5%;background:#e6e9e4;border-radius:2px;border:1px solid #d8ddd6}
.final-home .living-intro:after{content:"";position:absolute;z-index:-1;width:240px;height:240px;right:-70px;top:-80px;border:1px solid #b4beb2;border-radius:50%;box-shadow:0 0 0 32px #cdd5cb55,0 0 0 64px #cdd5cb33}
.final-home .living-intro .vh-kicker{align-self:center;max-width:150px;padding:0;border-left:2px solid #687b62;padding-left:18px;line-height:1.9}
.final-home .living-intro h2{font-size:clamp(32px,4.3vw,64px);max-width:800px;line-height:1.08;letter-spacing:-.055em}
.final-home .room-experience{padding-bottom:0}
.final-home .living-controls.shell{padding-top:34px}
.room-remote{width:196px;padding:13px;border-radius:10px}
.room-remote-label{font-size:7px;letter-spacing:.12em;margin-bottom:8px}
.room-remote>div{gap:5px}
.room-remote button{min-height:58px;gap:5px;font-size:10px;padding:5px 2px;border-radius:6px}
.room-remote .v-icon{width:20px;height:20px}
.room-device-status{font-size:8px;line-height:1.4;margin-top:8px;min-height:12px}
.collection-page .feature-stories{padding-bottom:24px}
.collection-page .finish-reveal{padding-top:30px}
.collection-page .collection-comfort{padding-bottom:28px}
.feature-illustration-note{margin-top:18px}
.finish-anchor{position:absolute;top:0;scroll-margin-top:90px}
@media(max-width:800px){
 .final-home .living-intro.shell{grid-template-columns:1fr;gap:22px;margin-top:24px;padding:32px 6%;margin-bottom:12px}
 .final-home .living-intro .vh-kicker{max-width:none}
 .final-home .living-intro h2{font-size:clamp(30px,6vw,48px)}
 .room-remote{left:auto;right:5%;width:196px;padding:13px}
 .room-remote>div{grid-template-columns:1fr 1fr}
 .room-experience .room-caption{bottom:235px}
 .collection-page .feature-stories{padding-bottom:18px}
 .collection-page .finish-reveal{padding-top:24px}
}
@media(max-width:600px){
 .room-remote{position:relative;left:auto;right:auto;bottom:auto;width:196px;margin:0 auto}
 .room-experience .room-caption{bottom:auto}
 .final-home .living-controls.shell{padding-top:25px}
}

.vesta-footer-contact{display:flex;flex-wrap:wrap;gap:12px 32px;padding:24px 0 30px;border-top:1px solid #d8ddd6;font-size:14px}.vesta-footer-contact a:hover{text-decoration:underline;text-underline-offset:4px}

/* Contact details belong above the quiet legal footnote. */
.vesta-footer .vesta-footer-contact{width:100%;padding:30px 0 32px;margin-top:42px;gap:28px 70px;border-top:1px solid #d2d7cd}.vesta-footer-contact>div{display:grid;gap:10px}.vesta-footer-contact span{font-size:9px;letter-spacing:.14em;color:#798675}.vesta-footer-contact a{font-size:15px;color:#252b25}.vesta-footer .footnote{margin-top:0;padding-top:20px;border-top:1px solid #d2d7cd}
#warranty-form .warranty-proof{min-width:0;margin:28px 0;padding:24px;border:1px solid #d8ddd3;background:#f7f8f3;border-radius:2px}#warranty-form .warranty-proof legend{padding:0 8px;font-size:14px;font-weight:500;color:#252b25}#warranty-form .warranty-proof label{display:grid;gap:10px;margin:0 0 20px;font-size:13px;color:#65705f}#warranty-form .warranty-proof select{width:100%;min-height:46px;padding:10px 12px;border:1px solid #b5beae;background:#fff;color:#252b25;font:inherit;border-radius:0}#warranty-form .warranty-proof input[type=file]{width:100%;max-width:100%;padding:12px;border:1px dashed #b5beae;background:#fff;font:12px Arial,sans-serif;color:#69765e}#warranty-form .warranty-proof input[type=file]::file-selector-button{border:0;padding:10px 13px;margin-right:12px;background:#252b25;color:#fff;font:inherit;cursor:pointer}#warranty-form .warranty-proof p{font-size:11px;line-height:1.7;color:#69765e;margin:0}#warranty-form .warranty-proof :focus-visible{outline:2px solid #687b62;outline-offset:3px}@media(max-width:500px){#warranty-form .warranty-proof{padding:17px}.vesta-footer .vesta-footer-contact{gap:24px;width:100%}.vesta-footer-contact a{overflow-wrap:anywhere}}

.article-body table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:24px 0;font-size:14px;line-height:1.6}.article-body th,.article-body td{padding:14px 16px;border-bottom:1px solid #d8ddd6;text-align:left;vertical-align:top;min-width:160px}.article-body th{background:#e6e9e4;font-weight:500}.article-body a{text-decoration:underline;text-underline-offset:4px}

.article-cover{margin:0 auto 48px}.article-cover img{display:block;width:100%;height:auto;max-height:650px;object-fit:cover}.journal-cover-card{display:block;margin-bottom:22px}.journal-cover-card img,.journal-art img{display:block;width:100%;height:100%;aspect-ratio:16/10;object-fit:cover}.article-lead-visual:not(:has(svg)){display:block}@media(max-width:700px){.article-cover{margin-bottom:28px}.article-cover img{max-height:400px}}
@media (min-width: 601px) {
 .room-experience .room-pin {
  height: 100vh;
  height: 100dvh;
  min-height: 0;
  max-height: none;
 }
}

/* Four tactile ways to control the same home. */
.living-controls .living-section-head { align-items:center; }
.living-controls .living-section-head h2 { margin-bottom:0; }
.living-controls .living-ways { gap:24px; margin-top:36px; }
.living-controls .living-ways>a { position:relative; display:flex; flex-direction:column; min-width:0; padding:0; border:0; color:inherit; }
.living-controls .living-ways>a:focus-visible { outline:3px solid #66845b; outline-offset:5px; border-radius:12px; }
.control-art { order:-1; display:block; overflow:hidden; aspect-ratio:4/3; border-radius:12px; background:#e7ebe2 center/cover no-repeat; }
.control-art>* { display:none; }
.control-art::after { content:''; display:block; height:100%; background:inherit; background-size:cover; transition:transform .35s ease; }
.living-ways>a:hover .control-art::after { transform:scale(1.025); }
.control-art-touch { background-image:url('/assets/features/two-way-v18-small.webp'); background-position:62% center; }
.control-art-app { background-image:url('/assets/features/app-v18-small.webp'); background-position:50% center; }
.control-art-voice { background-image:url('/assets/features/voice-v18-small.webp'); background-position:38% center; }
.control-art-auto { background-image:url('/assets/features/timer-v18-small.webp'); background-position:55% center; }
.control-card-top { display:flex; justify-content:space-between; align-items:center; margin-top:20px; padding-bottom:12px; border-bottom:1px solid #dfe3da; color:#61705c; }
.control-card-top>span { font-size:12px; letter-spacing:.1em; }
.living-controls .control-card-top .v-icon { width:20px; height:20px; margin:0; color:inherit; }
.living-controls .living-ways h3 { margin:14px 0 6px; color:#222821; }
.living-controls .living-ways p { margin:0; padding-right:28px; color:#61705c; font-size:15px; line-height:1.6; }
.control-card-arrow { position:absolute; right:0; bottom:2px; color:#61705c; font-size:17px; line-height:1; transition:transform .25s ease,color .25s ease; }
.living-ways>a:hover .control-card-arrow { color:#222821; transform:translate(2px,-2px); }
@media(max-width:1000px) { .living-controls .living-ways { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:700px) {
 .living-controls .living-section-head { align-items:flex-start; gap:20px; }
 .living-controls .living-ways { gap:28px 14px; }
 .living-controls .living-ways p { padding-right:20px; font-size:14px; }
}
@media(max-width:459px) { .living-controls .living-ways { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) {
 .control-art::after,.control-card-arrow { transition:none; }
 .living-ways>a:hover .control-art::after { transform:none; }
}

/* The seven-year commitment: one large statement beside the promise. */
.living-warranty { position:relative; background:#252d26; color:#fff; }
.living-warranty .warranty-layout { position:relative; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:40px; align-items:start; }
.warranty-emblem { min-width:0; padding-bottom:44px; }
.warranty-story { min-width:0; }
.living-warranty .warranty-emblem .vh-kicker { margin:0 0 20px; color:#d0d8c9; }
.warranty-seal { display:block; }
.warranty-seal>svg,.warranty-seal-caption,.warranty-seal-dot,.warranty-overline,.warranty-coverage { display:none; }
.living-warranty .warranty-seal strong { display:block; color:#fff; font-size:clamp(80px,10.6vw,170px); font-weight:400; line-height:1.1; letter-spacing:-.06em; }
body[data-page] .living-warranty .warranty-story h2 { margin:0; color:#fff; font-size:clamp(35px,3.8vw,60px)!important; line-height:1.1!important; letter-spacing:-.04em!important; }
body[data-page] main .living-warranty .warranty-summary { margin:14px 0 0; color:#d0d8c9; font-size:16px; }
.warranty-footer { margin-top:16px; }
.living-warranty .warranty-footer .vh-link { display:inline-flex; align-items:center; min-height:44px; padding:0 0 4px; color:#d0d8c9; border-color:#d0d8c9; }
.living-warranty .warranty-footer small { position:absolute; left:0; bottom:0; margin:0; color:#d0d8c9; font-size:12px; }
@media(max-width:800px) {
 .living-warranty .warranty-layout { grid-template-columns:minmax(0,1fr); gap:30px; }
 .warranty-emblem { padding-bottom:0; }
 .living-warranty .warranty-seal strong { font-size:clamp(72px,24vw,100px); }
 .living-warranty .warranty-footer small { position:static; display:block; margin-top:14px; }
}

/* Protection and connectivity: a quiet, connected system rather than five loose icons. */
.protection-opening {
    position: relative;
    padding-top: 88px;
    padding-bottom: 96px;
    border-top: 1px solid #dfe3da;
}
.protection-opening .story-kicker {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 18px;
    color: #62705d;
}
.protection-opening .story-kicker::before {
    content: "";
    width: 28px;
    height: 1px;
    background: #87957f;
}
.protection-opening > h2 {
    margin: 0;
    max-width: 15ch;
    color: #202a22;
}
.protection-opening .protection-circles {
    position: relative;
    counter-reset: protection-item;
    gap: 16px;
    margin-top: 52px;
}
.protection-opening .protection-circles::before {
    content: "";
    position: absolute;
    z-index: 0;
    top: 91px;
    left: 8%;
    right: 8%;
    border-top: 1px solid #d7ddd2;
}
.protection-opening .protection-circles article {
    counter-increment: protection-item;
    position: relative;
    z-index: 1;
    min-width: 0;
    padding: 18px 15px 28px;
    border: 1px solid transparent;
    border-radius: 24px;
    transition: transform .35s ease, background-color .35s ease, border-color .35s ease, box-shadow .35s ease;
}
.protection-opening .protection-circles article::before {
    content: "0" counter(protection-item);
    position: absolute;
    top: 17px;
    right: 18px;
    color: #84907e;
    font-size: 9px;
    font-weight: 600;
    letter-spacing: .14em;
}
.protection-opening .protection-icon {
    width: 148px;
    margin-bottom: 27px;
    background: #f7f8f3;
    border-color: #bcc6b6;
    box-shadow: 0 0 0 8px #fbfcf9;
    transition: transform .35s ease, border-color .35s ease, background-color .35s ease;
}
.protection-opening .protection-icon::before {
    background: #fff;
    box-shadow: inset 0 0 0 1px #edf0e9;
}
.protection-opening .protection-icon .v-icon {
    color: #314033;
    transition: transform .35s ease, color .35s ease;
}
.protection-opening .protection-circles h3 {
    margin: 0 0 9px;
    color: #202a22;
}
.protection-opening .protection-circles p {
    max-width: 25ch;
    margin: 0 auto;
}
.protection-opening .protection-circles article:hover {
    transform: translateY(-5px);
    background: #f1f4ec;
    border-color: #dce3d7;
    box-shadow: 0 18px 45px rgba(38, 54, 40, .07);
}
.protection-opening .protection-circles article:hover .protection-icon {
    transform: translateY(-3px);
    border-color: #71816c;
    background: #edf2e8;
}
.protection-opening .protection-circles article:hover .protection-icon .v-icon {
    transform: scale(1.08);
    color: #486044;
}
@media(max-width:1100px) {
    .protection-opening .protection-circles {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        row-gap: 22px;
    }
    .protection-opening .protection-circles::before { display: none; }
}
@media(max-width:700px) {
    .protection-opening { padding-top: 58px; padding-bottom: 62px; }
    .protection-opening .protection-circles { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; margin-top: 34px; }
    .protection-opening .protection-circles article { padding: 18px 10px 24px; }
    .protection-opening .protection-icon { width: 118px; margin-bottom: 22px; }
}
@media(max-width:430px) {
    .protection-opening .protection-circles { grid-template-columns: 1fr; }
    .protection-opening .protection-circles article:last-child { grid-column: auto; max-width: none; }
}
@media(prefers-reduced-motion:reduce) {
    .protection-opening .protection-circles article,
    .protection-opening .protection-icon,
    .protection-opening .protection-icon .v-icon { transition: none; }
    .protection-opening .protection-circles article:hover,
    .protection-opening .protection-circles article:hover .protection-icon { transform: none; }
}
