:root {
  --ink: #202126;
  --ink-soft: #34343a;
  --stone: #a9a196;
  --sand: #e9e1d6;
  --cream: #f8f4ee;
  --white: #ffffff;
  --red: #ae082a;
  --red-dark: #85051f;
  --line: rgba(32, 33, 38, 0.14);
  --shadow: 0 24px 70px rgba(32, 33, 38, 0.12);
  --serif: "Fraunces", Georgia, serif;
  --sans: "Inter", Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); background: var(--cream); font-family: var(--sans); line-height: 1.55; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
.sr-only { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }

.site-header { position: sticky; top: 0; z-index: 30; background: rgba(255, 255, 255, 0.94); border-bottom: 1px solid rgba(32, 33, 38, 0.08); backdrop-filter: blur(14px); }
.nav-shell { width: min(1380px, calc(100% - 64px)); min-height: 116px; margin: 0 auto; display: flex; align-items: center; justify-content: space-between; gap: 28px; }
.brand { display: inline-flex; flex-direction: column; width: 104px; color: #15161a; }
.brand-master-logo { width: 104px; height: auto; }
.brand-storage-extension { display: block; width: 100%; margin-top: 3px; padding-left: .35em; color: #15161a; font-family: Georgia, serif; font-size: 0.58rem; font-weight: 500; letter-spacing: 0.35em; line-height: 1; text-align: center; text-transform: uppercase; }
.site-nav { display: flex; align-items: center; gap: 26px; font-size: 0.88rem; font-weight: 600; }
.site-nav > a:not(.button):not(.nav-phone) { color: #404047; transition: color 160ms ease; }
.site-nav > a:not(.button):not(.nav-phone):hover { color: var(--red); }
.nav-phone { color: var(--ink); font-weight: 700; white-space: nowrap; }
.nav-toggle { display: none; background: none; border: 0; padding: 8px; }
.nav-toggle span:not(.sr-only) { display: block; width: 24px; height: 2px; margin: 5px; background: var(--ink); }

.button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; border: 1px solid transparent; min-height: 51px; padding: 13px 22px; color: white; background: var(--ink); font-size: 0.92rem; font-weight: 700; transition: transform 180ms ease, background 180ms ease; }
.button:hover { transform: translateY(-2px); }
.button-red { background: var(--red); }
.button-red:hover { background: var(--red-dark); }
.button-small { min-height: 42px; padding: 10px 16px; background: var(--red); white-space: nowrap; }
.button-light { background: var(--white); color: var(--ink); }
.button-wide { width: 100%; }
.text-link { display: inline-flex; align-items: center; gap: 9px; color: var(--ink); font-size: 0.9rem; font-weight: 700; border-bottom: 1px solid rgba(32, 33, 38, 0.35); padding-bottom: 4px; }
.text-link:hover { color: var(--red); border-color: var(--red); }

.page-hero { min-height: 620px; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); background: var(--white); }
.hero-copy { align-self: center; max-width: 690px; padding: 88px clamp(32px, 8vw, 140px); padding-right: 44px; }
.kicker { display: inline-flex; align-items: center; gap: 10px; color: #5b5752; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.2em; line-height: 1.2; text-transform: uppercase; }
.kicker::before { content: ""; width: 30px; height: 2px; background: var(--red); }
.kicker-light { color: rgba(255,255,255,.75); }
.kicker-light::before { background: #e7778f; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--serif); color: #16171b; line-height: 1.02; letter-spacing: -0.04em; }
h1 { max-width: 660px; margin: 20px 0 22px; font-size: clamp(3.35rem, 5.6vw, 6.2rem); font-weight: 600; }
.hero-copy > p { max-width: 540px; margin-bottom: 32px; font-size: clamp(1.05rem, 1.5vw, 1.28rem); color: #4c4a48; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; }
.trust-row { display: flex; flex-wrap: wrap; gap: 10px 18px; margin-top: 48px; color: #66615b; font-size: 0.76rem; font-weight: 600; }
.trust-row span { display: inline-flex; align-items: center; gap: 8px; }
.trust-row span::before { content: "◇"; color: var(--red); font-size: 1rem; }
.hero-media { position: relative; min-height: 540px; overflow: hidden; }
.hero-media > img { width: 100%; height: 100%; object-fit: cover; }
.hero-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(100deg, rgba(29, 30, 34, 0.18), transparent 45%); pointer-events: none; }
.hero-media-label { position: absolute; right: 24px; bottom: 24px; z-index: 1; width: min(320px, calc(100% - 48px)); padding: 18px 20px; color: var(--white); background: rgba(24, 25, 29, 0.92); border-left: 3px solid var(--red); }
.hero-media-label span { display: block; margin-bottom: 5px; font-size: 0.62rem; font-weight: 700; letter-spacing: .17em; color: #ded8ce; }
.hero-media-label strong { font-family: var(--serif); font-size: 1.15rem; line-height: 1.2; }
[data-motion-media] { --media-shift: 0px; }
[data-motion-media] > img { transform: translate3d(0, var(--media-shift), 0) scale(1.07); transform-origin: center; transition: transform 120ms linear; will-change: transform; }

.home-hero { display: grid; grid-template-columns: minmax(0, .96fr) minmax(540px, 1.04fr); min-height: 690px; background: var(--white); }
.home-hero-copy { align-self: center; max-width: 720px; padding: 88px clamp(38px, 8vw, 140px); padding-right: clamp(36px, 5vw, 78px); }
.home-hero-copy h1 { max-width: 680px; margin: 18px 0 24px; font-size: clamp(3.7rem, 5.3vw, 6.5rem); }
.home-hero-lead { max-width: 560px; margin-bottom: 32px; color: #42403d; font-size: clamp(1.1rem, 1.45vw, 1.28rem); line-height: 1.56; }
.home-hero-promise { display: grid; gap: 4px; max-width: 555px; margin-top: 41px; padding: 18px 0 0; border-top: 1px solid var(--line); }
.home-hero-promise strong { font-family: var(--serif); font-size: 1.24rem; }
.home-hero-promise span { color: #635e58; font-size: .84rem; }
.home-hero-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 22px; }
.home-hero-steps span { display: flex; flex-direction: column; gap: 3px; color: #46433f; font-size: .73rem; font-weight: 700; line-height: 1.25; }
.home-hero-steps b { color: var(--red); font-size: .64rem; letter-spacing: .16em; }
.home-hero-gallery { display: grid; grid-template-columns: minmax(0, 1.22fr) minmax(205px, .78fr); gap: 10px; min-height: 690px; padding: 10px 10px 10px 0; background: #ddd5c9; }
.home-hero-gallery figure { margin: 0; }
.home-warehouse { position: relative; min-height: 100%; overflow: hidden; }
.home-warehouse > img { width: 100%; height: 100%; object-fit: cover; object-position: 62% center; filter: saturate(.82) contrast(1.04); }
.home-warehouse::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(21,22,26,.78)); pointer-events: none; }
.home-warehouse figcaption { position: absolute; z-index: 1; right: 22px; bottom: 24px; left: 22px; display: grid; gap: 5px; color: var(--white); }
.home-warehouse figcaption span { color: #efc8c3; font-size: .6rem; font-weight: 800; letter-spacing: .19em; }
.home-warehouse figcaption strong { max-width: 260px; font-family: var(--serif); font-size: 1.42rem; line-height: 1.08; }
.home-gallery-side { display: grid; grid-template-rows: 1.02fr .98fr; gap: 10px; min-width: 0; }
.home-collection { position: relative; overflow: hidden; background: var(--ink); }
.home-collection > img { width: 100%; height: 100%; object-fit: cover; object-position: 52% center; }
.home-collection figcaption { position: absolute; right: 0; bottom: 0; left: 0; display: grid; gap: 2px; padding: 13px; color: var(--white); background: linear-gradient(transparent, rgba(21,22,26,.88)); font-size: .72rem; }
.home-collection figcaption b { font-size: .6rem; letter-spacing: .13em; }
.home-collection figcaption span { color: rgba(255,255,255,.8); }
.home-network { position: relative; display: flex; flex-direction: column; justify-content: flex-end; min-height: 0; overflow: hidden; padding: 18px; color: var(--white); background: #1c1d21; }
.home-network > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: .32; filter: grayscale(.25) saturate(.72); transition: transform 250ms ease, opacity 250ms ease; }
.home-network:hover > img { opacity: .44; transform: scale(1.035); }
.home-network::after { content: ""; position: absolute; inset: 0; background: linear-gradient(165deg, rgba(28,29,33,.8), rgba(28,29,33,.2) 72%); }
.home-network > *:not(img) { position: relative; z-index: 1; }
.home-network .kicker { margin-bottom: auto; font-size: .49rem; color: #f0dfd7; }
.home-network .kicker::before { width: 18px; background: #e77476; }
.home-network strong { margin-top: auto; font-family: var(--serif); font-size: 1.5rem; line-height: 1.03; }
.home-network em { margin-top: 9px; color: #f0d5d0; font-size: .72rem; font-style: normal; font-weight: 700; }
.home-network i { font-style: normal; }

.process-strip { display: grid; grid-template-columns: repeat(4, 1fr); padding: 0 clamp(22px, 6vw, 100px); background: #f0e8dd; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.process-strip > div { min-height: 215px; padding: 34px 26px 34px 0; border-right: 1px solid var(--line); margin-right: 26px; }
.process-strip > div:last-child { border: 0; margin: 0; }
.process-strip span { display: block; margin-bottom: 22px; color: var(--red); font-size: 0.75rem; font-weight: 700; letter-spacing: .18em; }
.process-strip h2 { margin-bottom: 10px; font-size: 1.35rem; }
.process-strip p { margin: 0; max-width: 240px; color: #57534f; font-size: 0.9rem; }

.pricing-promise { display: grid; grid-template-columns: .82fr 1.18fr; gap: clamp(42px, 8vw, 140px); padding: 105px max(32px, calc((100vw - 1220px) / 2)); color: var(--white); background: var(--red); }
.pricing-promise h2 { max-width: 520px; margin: 18px 0 0; color: var(--white); font-size: clamp(2.7rem, 4.2vw, 4.6rem); }
.pricing-promise-detail > p { max-width: 670px; margin: 0; color: #fff1ed; font-size: 1.08rem; line-height: 1.62; }
.pricing-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; margin: 36px 0; }
.pricing-steps > div { min-height: 152px; padding: 20px 18px; border: 1px solid rgba(255,255,255,.34); }
.pricing-steps span { display: block; margin-bottom: 22px; color: #ffd4cd; font-size: .68rem; font-weight: 800; letter-spacing: .16em; }
.pricing-steps strong { display: block; margin-bottom: 10px; font-family: var(--serif); font-size: 1.27rem; line-height: 1.05; }
.pricing-steps small { display: block; color: #ffe8e3; font-size: .77rem; line-height: 1.45; }

.situation-selector { padding: 102px max(32px, calc((100vw - 1280px) / 2)); background: var(--cream); }
.situation-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 38px; }
.situation-heading h2 { max-width: 680px; margin: 18px 0 0; font-size: clamp(2.65rem, 4vw, 4.5rem); }
.situation-heading > p { max-width: 380px; margin: 0 0 7px; color: #5b5752; font-size: .98rem; }
.situation-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2px; background: rgba(32,33,38,.13); }
.situation-card { display: flex; flex-direction: column; min-height: 290px; padding: 28px; background: var(--white); transition: background 180ms ease, transform 180ms ease; }
.situation-card:hover { background: #fff5f2; transform: translateY(-4px); }
.situation-card > span { color: var(--red); font-size: .61rem; font-weight: 800; letter-spacing: .17em; text-transform: uppercase; }
.situation-card strong { margin: 23px 0 13px; font-family: var(--serif); font-size: 1.55rem; line-height: 1.06; letter-spacing: -.035em; }
.situation-card p { margin: 0; color: #605b55; font-size: .84rem; line-height: 1.55; }
.situation-card b { margin-top: auto; padding-top: 26px; color: var(--red); font-size: .78rem; }
.situation-card i { font-style: normal; }

.protection-band { display: grid; grid-template-columns: .9fr 1fr; gap: clamp(38px, 7vw, 112px); align-items: center; width: min(1280px, calc(100% - 64px)); margin: 0 auto; padding: 120px 0; }
.protection-copy h2, .section-heading h2, .faq-heading h2 { max-width: 590px; margin: 18px 0 21px; font-size: clamp(2.5rem, 3.8vw, 4.3rem); }
.protection-copy p { max-width: 560px; margin-bottom: 28px; font-size: 1.05rem; color: #5b5752; }
.protection-visual { min-height: 360px; margin: 0; overflow: hidden; box-shadow: var(--shadow); }
.protection-visual img { width: 100%; height: 100%; min-height: 360px; object-fit: cover; }

.premium-feature { display: grid; grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr); align-items: stretch; min-height: 620px; background: var(--white); overflow: hidden; }
.premium-feature-copy { align-self: center; max-width: 680px; padding: clamp(72px, 9vw, 150px); }
.premium-feature-copy h2 { max-width: 580px; margin: 18px 0 24px; font-size: clamp(2.7rem, 4.1vw, 4.75rem); }
.premium-feature-copy p { max-width: 560px; color: #56524e; font-size: 1.04rem; line-height: 1.68; }
.premium-feature-copy p + p { margin-top: 18px; }
.premium-feature-media { position: relative; min-height: 620px; margin: 0; overflow: hidden; background: var(--ink); }
.premium-feature-media > img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
.premium-feature-media::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(20, 20, 23, .8)); pointer-events: none; }
.premium-feature-media figcaption { position: absolute; right: 28px; bottom: 28px; left: 28px; z-index: 1; display: grid; gap: 7px; color: var(--white); }
.premium-feature-media figcaption span { color: #f0d1cd; font-size: .61rem; font-weight: 800; letter-spacing: .18em; }
.premium-feature-media figcaption strong { max-width: 360px; font-family: var(--serif); font-size: clamp(1.35rem, 2vw, 2rem); line-height: 1.06; }
.premium-feature-points { display: flex; flex-wrap: wrap; gap: 8px; margin: 31px 0; }
.premium-feature-points span { padding: 8px 10px; border: 1px solid rgba(32,33,38,.2); color: #55504a; font-size: .73rem; font-weight: 700; }
.premium-feature-soft { background: #ebe3d8; }
.premium-feature-reverse .premium-feature-copy { order: 2; }
.premium-feature-reverse .premium-feature-media { order: 1; }
.premium-feature-dark { background: var(--ink); }
.premium-feature-dark .premium-feature-copy h2 { color: var(--white); }
.premium-feature-dark .premium-feature-copy p { color: rgba(255,255,255,.72); }
.premium-feature-dark .premium-feature-media::after { background: linear-gradient(180deg, transparent 36%, rgba(20,20,23,.88)); }
html.has-motion [data-reveal] { opacity: 0; transform: translate3d(0, 34px, 0); transition: opacity 650ms ease, transform 750ms cubic-bezier(.2,.72,.25,1); }
html.has-motion [data-reveal].is-visible { opacity: 1; transform: translate3d(0, 0, 0); }

.content-wrap { width: min(1120px, calc(100% - 64px)); margin: 0 auto; padding: 78px 0 36px; }
.content-section { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 42px; padding: 55px 42px; margin-bottom: 24px; background: var(--white); border-top: 2px solid var(--red); }
.content-section-tint { background: #f0e8dd; }
.content-index { color: var(--red); font-family: var(--serif); font-size: 2.1rem; font-weight: 600; }
.content-body { max-width: 720px; }
.content-body h2 { margin-bottom: 20px; font-size: clamp(2rem, 3vw, 3.1rem); }
.content-body p { color: #514f4c; font-size: 1.03rem; }
.check-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px 22px; margin: 28px 0 0; padding: 0; list-style: none; }
.check-list li { position: relative; padding-left: 24px; color: #454340; font-size: .93rem; }
.check-list li::before { content: "✓"; position: absolute; left: 0; color: var(--red); font-weight: 800; }
.content-external-link { margin-top: 30px; }
.service-callout { width: min(1120px, calc(100% - 64px)); margin: 24px auto 72px; padding: 48px 55px; color: var(--white); background: var(--red); }
.service-callout p { max-width: 850px; margin: 0; font-family: var(--serif); font-size: clamp(2rem, 3.5vw, 3.4rem); line-height: 1.08; letter-spacing: -.04em; }

.faq-section { display: grid; grid-template-columns: .75fr 1fr; gap: clamp(32px, 7vw, 112px); width: min(1120px, calc(100% - 64px)); margin: 0 auto; padding: 105px 0; }
.faq-heading h2 { font-size: clamp(2.4rem, 3.5vw, 3.9rem); }
.faq-heading p { max-width: 430px; color: #5e5954; }
.faq-list { border-top: 1px solid var(--line); }
.faq-list details { border-bottom: 1px solid var(--line); }
.faq-list summary { display: flex; justify-content: space-between; gap: 24px; padding: 25px 0; cursor: pointer; font-family: var(--serif); font-size: 1.25rem; font-weight: 600; list-style: none; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary span { color: var(--red); font-family: var(--sans); font-weight: 400; }
.faq-list details[open] summary span { transform: rotate(45deg); }
.faq-list details p { max-width: 620px; margin: -5px 0 25px; color: #5b5752; }

.related { padding: 95px max(32px, calc((100vw - 1280px) / 2)); background: #e6ddd0; }
.section-heading { display: flex; align-items: end; justify-content: space-between; gap: 34px; margin-bottom: 35px; }
.section-heading h2 { margin: 16px 0 0; font-size: clamp(2.3rem, 3.7vw, 4rem); }
.related-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 2px; background: rgba(32,33,38,.12); }
.related-card { display: flex; flex-direction: column; min-height: 215px; padding: 26px; background: var(--white); transition: background 180ms ease, transform 180ms ease; }
.related-card:hover { background: #fff5f2; transform: translateY(-4px); }
.related-card .kicker { font-size: .56rem; }
.related-card strong { margin: 20px 0 auto; font-family: var(--serif); font-size: 1.5rem; line-height: 1.1; letter-spacing: -.03em; }
.related-card > span:last-child { margin-top: 24px; color: var(--red); font-size: .8rem; font-weight: 700; }

.area-hub { padding: 94px max(32px, calc((100vw - 1280px) / 2)); background: #f4efe8; }
.area-hub .section-heading > p { max-width: 360px; margin: 0 0 12px; color: #5b5752; font-size: .96rem; }
.area-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2px; background: rgba(32, 33, 38, .12); }
.area-card { display: flex; flex-direction: column; min-height: 255px; padding: 25px; background: var(--white); transition: background 180ms ease, transform 180ms ease; }
.area-card:hover { background: #fff5f2; transform: translateY(-4px); }
.area-card .kicker { font-size: .56rem; }
.area-card strong { display: block; margin: 21px 0 12px; font-family: var(--serif); font-size: 1.55rem; line-height: 1.06; letter-spacing: -.035em; }
.area-card > span:not(.kicker) { color: #615d58; font-size: .82rem; line-height: 1.5; }
.area-card b { margin-top: auto; padding-top: 22px; color: var(--red); font-size: .78rem; }
.area-card i { font-style: normal; }

.quote-panel { display: grid; grid-template-columns: .75fr 1.2fr; gap: clamp(38px, 7vw, 100px); padding: 98px max(32px, calc((100vw - 1220px) / 2)); color: var(--white); background: var(--ink); }
.quote-panel h1, .quote-panel h2 { margin: 18px 0; color: var(--white); font-size: clamp(2.8rem, 4.4vw, 4.9rem); }
.quote-panel-direct { min-height: calc(100vh - 118px); align-items: start; padding-top: 70px; padding-bottom: 70px; }
.quote-panel-intro > p { max-width: 400px; color: rgba(255,255,255,.74); }
.quote-panel-points { display: flex; flex-wrap: wrap; gap: 9px; margin-top: 28px; }
.quote-panel-points span { padding: 7px 10px; border: 1px solid rgba(255,255,255,.25); font-size: .73rem; font-weight: 600; }
.quote-phone-note { margin: 24px 0 0; color: rgba(255,255,255,.72); font-size: .87rem; }
.quote-phone-note a { color: var(--white); font-weight: 700; text-decoration: underline; text-decoration-color: rgba(255,255,255,.4); text-underline-offset: 3px; }
.quote-form { align-self: start; }
.form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.quote-form label { display: flex; flex-direction: column; gap: 7px; color: rgba(255,255,255,.8); font-size: .75rem; font-weight: 600; }
.quote-form .optional { color: rgba(255,255,255,.48); font-weight: 400; }
.quote-form input, .quote-form select, .quote-form textarea { width: 100%; border: 1px solid transparent; border-radius: 0; padding: 13px; color: var(--ink); background: var(--white); outline: 0; font-size: .95rem; }
.quote-form input:focus, .quote-form select:focus, .quote-form textarea:focus { border-color: var(--red); box-shadow: 0 0 0 3px rgba(174,8,42,.25); }
.quote-form textarea { resize: vertical; }
.quote-form .wide { grid-column: 1 / -1; }
.form-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.quote-form .button { margin-top: 20px; }
.form-note { margin: 16px 0 0; color: rgba(255,255,255,.5); font-size: .72rem; }
.form-success, .form-error { margin: 16px 0 0; padding: 12px; font-weight: 600; font-size: .86rem; }
.form-success { color: #fff; background: #7c1b23; }
.form-error { color: #fff; background: #8a141d; }

.site-footer { color: #ded9d0; background: #17181c; }
.footer-top { display: grid; grid-template-columns: 1.3fr 1fr 1fr .9fr; gap: clamp(24px, 4vw, 70px); width: min(1280px, calc(100% - 64px)); margin: 0 auto; padding: 75px 0 55px; }
.site-footer .brand { width: 126px; margin: 16px 0 18px; padding: 10px 12px 9px; background: #fff; }
.site-footer .brand-master-logo { width: 126px; }
.site-footer .brand-storage-extension { color: #15161a; }
.site-footer p { color: #aaa49d; font-size: .86rem; }
.site-footer h2 { margin: 2px 0 18px; color: #fff; font-family: var(--sans); font-size: .82rem; letter-spacing: .11em; text-transform: uppercase; }
.site-footer ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.site-footer li a { color: #bdb7af; font-size: .84rem; }
.site-footer li a:hover { color: #fff; }
.footer-phone { display: block; margin-top: 20px; color: #fff; font-size: 1.1rem; font-weight: 700; }
.address { margin-top: 7px; }
.footer-bottom { display: flex; justify-content: space-between; gap: 20px; width: min(1280px, calc(100% - 64px)); margin: 0 auto; padding: 22px 0; border-top: 1px solid rgba(255,255,255,.12); color: #827d76; font-size: .72rem; }

@media (max-width: 1050px) {
  .nav-shell, .protection-band, .content-wrap, .faq-section, .footer-top { width: min(100% - 44px, 920px); }
  .site-nav { gap: 14px; }
  .site-nav > a:not(.button):not(.nav-phone) { display: none; }
  .page-hero { min-height: 0; }
  .hero-copy { padding: 72px 45px; }
  .home-hero { grid-template-columns: minmax(0, .94fr) minmax(405px, 1.06fr); min-height: 610px; }
  .home-hero-copy { padding: 65px 42px; }
  .home-hero-gallery { min-height: 610px; }
  .process-strip { padding: 0 22px; }
  .process-strip > div { margin-right: 18px; padding-right: 18px; }
  .pricing-promise { gap: 42px; padding: 78px 42px; }
  .situation-selector { padding: 78px 22px; }
  .situation-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .related { padding: 78px 22px; }
  .area-hub { padding: 78px 22px; }
  .quote-panel { padding: 78px 42px; }
  .quote-panel-direct { min-height: 0; padding-top: 64px; padding-bottom: 64px; }
  .premium-feature-copy { padding: 72px 48px; }
  .premium-feature, .premium-feature-media { min-height: 540px; }
  .footer-top { grid-template-columns: 1.3fr 1fr 1fr; }
  .footer-top > div:last-child { grid-column: 1 / -1; }
}

@media (max-width: 760px) {
  .nav-shell { width: calc(100% - 34px); min-height: 92px; }
  .brand { width: 76px; }
  .brand-master-logo { width: 76px; }
  .brand-storage-extension { margin-top: 2px; font-size: .42rem; }
  .nav-toggle { display: block; }
  .site-nav { position: absolute; top: 92px; left: 0; right: 0; display: none; align-items: stretch; gap: 0; padding: 18px 17px 22px; background: var(--white); border-bottom: 1px solid var(--line); box-shadow: 0 20px 35px rgba(32,33,38,.1); }
  .site-nav.is-open { display: grid; }
  .site-nav > a:not(.button):not(.nav-phone) { display: block; padding: 12px 0; }
  .site-nav .nav-phone { padding: 14px 0; }
  .site-nav .button { margin-top: 4px; }
  .page-hero { display: flex; flex-direction: column; }
  .home-hero { display: flex; flex-direction: column; min-height: 0; }
  .home-hero-copy { padding: 48px 22px 44px; }
  .home-hero-copy h1 { margin-top: 16px; font-size: clamp(3.1rem, 13.6vw, 4.4rem); }
  .home-hero-lead { font-size: 1.05rem; }
  .home-hero-gallery { grid-template-columns: minmax(0, 1.2fr) minmax(118px, .8fr); min-height: 440px; padding: 7px 7px 7px 0; gap: 7px; }
  .home-warehouse figcaption { right: 15px; bottom: 16px; left: 15px; }
  .home-warehouse figcaption strong { max-width: 185px; font-size: 1.12rem; }
  .home-gallery-side { gap: 7px; }
  .home-collection figcaption { padding: 9px; font-size: .61rem; }
  .home-collection figcaption b { font-size: .51rem; }
  .home-network { padding: 11px; }
  .home-network .kicker { font-size: .38rem; }
  .home-network strong { font-size: 1.05rem; }
  .home-network em { font-size: .6rem; }
  .home-hero-promise { margin-top: 32px; }
  .home-hero-steps { gap: 8px; }
  .hero-copy { order: 2; padding: 44px 22px 50px; }
  .hero-media { order: 1; min-height: 390px; }
  .hero-media-label { left: 17px; right: auto; bottom: 17px; width: min(310px, calc(100% - 34px)); }
  h1 { font-size: clamp(3rem, 13vw, 4.1rem); }
  .hero-copy > p { font-size: 1.05rem; }
  .trust-row { margin-top: 32px; }
  .process-strip { grid-template-columns: 1fr 1fr; padding: 0 20px; }
  .process-strip > div { min-height: 190px; margin: 0; padding: 26px 16px 26px 0; border-bottom: 1px solid var(--line); }
  .process-strip > div:nth-child(odd) { margin-right: 15px; border-right: 1px solid var(--line); }
  .process-strip > div:nth-last-child(-n+2) { border-bottom: 0; }
  .pricing-promise { display: block; padding: 68px 22px; }
  .pricing-promise-detail > p { margin-top: 24px; }
  .pricing-steps { gap: 9px; margin: 28px 0; }
  .pricing-steps > div { min-height: 165px; padding: 16px 13px; }
  .pricing-steps span { margin-bottom: 17px; font-size: .59rem; }
  .pricing-steps strong { font-size: 1.05rem; }
  .pricing-steps small { font-size: .7rem; }
  .situation-selector { padding: 66px 17px; }
  .situation-heading { display: block; margin-bottom: 28px; }
  .situation-heading > p { margin: 18px 0 0; }
  .situation-grid { grid-template-columns: 1fr 1fr; }
  .situation-card { min-height: 245px; padding: 19px; }
  .situation-card strong { margin-top: 18px; font-size: 1.28rem; }
  .situation-card p { font-size: .76rem; }
  .situation-card b { padding-top: 18px; font-size: .7rem; }
  .protection-band, .faq-section { display: flex; flex-direction: column; width: calc(100% - 44px); padding: 72px 0; }
  .protection-band { gap: 32px; }
  .protection-visual, .protection-visual img { min-height: 270px; }
  .premium-feature { display: flex; flex-direction: column; min-height: 0; }
  .premium-feature-copy, .premium-feature-reverse .premium-feature-copy { order: 1; padding: 64px 22px; }
  .premium-feature-media, .premium-feature-reverse .premium-feature-media { order: 2; min-height: 390px; }
  .premium-feature-media figcaption { right: 18px; bottom: 18px; left: 18px; }
  .premium-feature-points { margin: 26px 0; }
  .content-wrap { width: calc(100% - 34px); padding: 50px 0 18px; }
  .content-section { display: block; padding: 32px 23px; }
  .content-index { margin-bottom: 20px; }
  .check-list { grid-template-columns: 1fr; }
  .service-callout { width: calc(100% - 34px); padding: 36px 26px; margin-bottom: 42px; }
  .faq-section { gap: 32px; }
  .related { padding: 62px 17px; }
  .area-hub { padding: 62px 17px; }
  .section-heading { display: block; }
  .related-grid { grid-template-columns: 1fr 1fr; }
  .area-grid { grid-template-columns: 1fr 1fr; }
  .related-card { min-height: 190px; padding: 19px; }
  .related-card strong { font-size: 1.24rem; }
  .area-card { min-height: 240px; padding: 19px; }
  .area-card strong { font-size: 1.3rem; }
  .quote-panel { display: block; padding: 65px 22px; }
  .quote-panel-direct { padding-top: 48px; }
  .quote-panel-intro { margin-bottom: 34px; }
  .form-grid { grid-template-columns: 1fr; }
  .quote-form .wide { grid-column: auto; }
  .site-footer .brand, .site-footer .brand-master-logo { width: 106px; }
  .footer-top { display: grid; grid-template-columns: 1fr 1fr; width: calc(100% - 44px); padding: 58px 0 38px; }
  .footer-top > div:first-child, .footer-top > div:last-child { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; width: calc(100% - 44px); }
}

@media (max-width: 430px) {
  .nav-phone { display: none; }
  .site-nav .nav-phone { display: block; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 17px; }
  .home-hero-gallery { min-height: 380px; }
  .home-hero-steps span { font-size: .67rem; }
  .process-strip { grid-template-columns: 1fr; }
  .process-strip > div, .process-strip > div:nth-child(odd) { min-height: 0; margin: 0; padding: 23px 0; border-right: 0; border-bottom: 1px solid var(--line); }
  .process-strip > div:last-child { border-bottom: 0; }
  .pricing-steps { grid-template-columns: 1fr; }
  .pricing-steps > div { min-height: 0; }
  .situation-grid { grid-template-columns: 1fr; }
  .situation-card { min-height: 200px; }
  .related-grid { grid-template-columns: 1fr; }
  .area-grid { grid-template-columns: 1fr; }
  .related-card { min-height: 160px; }
  .footer-top { grid-template-columns: 1fr; }
  .footer-top > div { grid-column: 1 / -1; }
}

@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { transition-duration: 0.01ms !important; animation-duration: 0.01ms !important; } [data-motion-media] > img { transform: none !important; } }
