/* Falcon Experience: one continuous studio, from discovery to configuration. */
:root {
  color-scheme: dark;
  --experience-ink: #f0f1e9;
  --experience-muted: #b8c2b7;
  --experience-faint: #96a495;
  --experience-line: #bbc7bc29;
  --experience-panel: #242a25;
  --experience-red: #d9363b;
  --falcon-charcoal: #202120;
  --falcon-paper: #202521;
  --falcon-soft: #262d27;
  --falcon-ink: #f0f1e9;
  --falcon-muted: #b8c2b7;
  --falcon-line: #bbc7bc29;
  --falcon-red: #d9363b;
  --premium-dark: #202120;
  --premium-warm: #f0f1e9;
  --premium-paper: #242a25;
  --premium-red: #d9363b;
  --premium-border: #bbc7bc29;
  --premium-muted: #b8c2b7;
  --purchase-paper: #242a25;
  --purchase-ink: #f0f1e9;
  --purchase-muted: #b8c2b7;
  --purchase-line: #bbc7bc29;
  --purchase-red: #d9363b;
  --ink: #f0f1e9;
  --dark: #191b1a;
  --warm: #222723;
  --paper: #202421;
  --line: #bbc7bc29;
  --muted: #b8c2b7;
  --red: #d9363b;
  --studio-surface: radial-gradient(ellipse at 50% 42%, #899383 0%, #65705f 25%, #404b3d 50%, #2a3129 72%, #202421 100%);
  --studio-floor: radial-gradient(ellipse, #d9e4d528, transparent 72%);
}

body {
  background: #191b1a;
  color: var(--experience-ink);
  font-family: Manrope, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
}
body.premium-home {
  background:
    radial-gradient(ellipse 1000px 900px at 85% 11%, #8b9a7f13, transparent 72%),
    radial-gradient(ellipse 1100px 1000px at 0% 29%, #aa393713, transparent 73%),
    radial-gradient(ellipse 1100px 1300px at 100% 49%, #83917715, transparent 72%),
    radial-gradient(ellipse 1000px 1000px at 5% 73%, #7c927514, transparent 72%),
    linear-gradient(180deg, #202120 0%, #1b1f1c 30%, #242c25 57%, #1c211d 81%, #191b1a 100%);
}
::selection { background: #d9363b66; color: #fff; }
body h1, body h2, body h3, body h1 em, body h2 em, body h3 em {
  font-family: Manrope, Arial, sans-serif;
  font-style: normal;
  transform: none;
}
button, a, input, select, textarea { -webkit-tap-highlight-color: transparent; }
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline: 2px solid #d8e4cf;
  outline-offset: 6px;
}
.p-section {
  padding-block: clamp(82px, 9.7vw, 154px);
  color: var(--experience-ink);
}
.premium-home h2, .premium-home h2 > em {
  font-size: clamp(43px, 5.2vw, 84px);
  letter-spacing: -.046em;
  line-height: 1.1;
  font-weight: 500;
  font-style: normal;
}
.premium-home h2 > em { color: #bbc7bc; }
.p-kicker {
  color: var(--experience-muted);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .16em;
  line-height: 1.8;
}
.p-kicker:not(:has(i))::before {
  content: '';
  display: inline-block;
  width: 19px;
  height: 2px;
  flex-shrink: 0;
  background: linear-gradient(90deg, #d9363b, #d9363b36);
}
.p-section-heading { gap: 40px; margin-bottom: 56px; }
.p-section-heading > p,
.manifesto-grid > p,
.battery-editorial-copy > p:not(.p-kicker),
.offer-overview-heading > p {
  color: var(--experience-muted);
  font-size: 14px;
  line-height: 1.95;
}
.p-section-heading > p { max-width: 330px; }
.p-section-heading .p-kicker, .manifesto > .p-kicker,
.battery-editorial-copy > .p-kicker, .swiss-freedom .p-kicker,
.pay-later-heading > .p-kicker, .premium-faq > div > .p-kicker,
.personal-service > .p-kicker { color: var(--experience-muted); }
.p-button-red, .header-shop, .button.red {
  background: linear-gradient(135deg, #d9363b, #c92e36 68%, #b72730);
  color: #fff;
  border: 1px solid #f46d6945;
  box-shadow: inset 0 1px 0 #ffc6be25, 0 8px 28px #080b091f;
  border-radius: 7px;
  transition: background .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.p-button-red:hover, .header-shop:hover, .button.red:hover {
  background: linear-gradient(135deg, #d9363b, #c72d35 68%, #b92730);
  border-color: #ff8c805c;
  box-shadow: inset 0 1px 0 #ffc6be40, 0 12px 30px #0d100d38;
}
.p-text-link { color: #ecf0e6; border-color: #d0ddc563; font-size: 13px; }
.p-text-link > span { transition: translate .25s ease; }
.p-text-link:hover > span { translate: 4px -2px; }

/* A light, floating navigation over the studio canvas. */
.site-header, .article-page .site-header {
  background: #1b1e1bd9;
  backdrop-filter: blur(22px) saturate(1.1);
  -webkit-backdrop-filter: blur(22px) saturate(1.1);
  border-bottom: 1px solid #c4d0bc1b;
  box-shadow: 0 10px 40px #0b100b0a;
  color: #f0f1e9;
}
.site-header > nav:not(.mobile-nav) { gap: clamp(18px, 2.7vw, 42px); }
.site-header nav > a { font-size: 12px; color: #cbd4c5; }
.site-header nav > a:hover { color: #fff; }
.header-shop { min-height: 48px; padding: 12px 20px; font-size: 12px; }
.mobile-nav {
  background: linear-gradient(145deg, #2a322bef, #1e241ff5);
  border-bottom: 1px solid #bbc7bc29;
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  box-shadow: 0 18px 40px #090e0933;
}
.mobile-nav a { color: #f0f1e9; }

/* The approved hero photography sits inside a softer, deeper studio light. */
.poster-hero {
  --poster-charcoal: #202120;
  background: radial-gradient(ellipse at 85% 30%, #7f8f7314, transparent 53%);
  padding-top: 34px;
}
.poster-hero .campaign-topline { margin-bottom: 32px; }
.poster-hero .campaign-topline .campaign-code { color: #a4b29e; }
.poster-hero .poster-title h1 {
  color: #f0f1e9;
  background: linear-gradient(145deg, #f4f5ed 14%, #e3e7dc 62%, #b3c1af);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: clamp(116px, 17.4vw, 286px);
  line-height: 1;
  font-weight: 500;
  letter-spacing: -.052em;
}
.poster-hero .poster-review { margin-top: 20px; }
.poster-review .review-jump { color: #d5ddcf; gap: 16px; }
.poster-review .review-jump [data-review-summary] { font-size: 12px; }
.poster-layout { gap: 5.5%; }
.poster-hero .poster-product {
  transform: none;
  background: radial-gradient(ellipse at 51% 47%, #89958038 0%, #5b6b5033 31%, #313c2d17 58%, transparent 78%);
}
.poster-hero .poster-product::before { background: none; }
.poster-hero .poster-product > picture { mix-blend-mode: normal; }
.poster-hero .poster-product .atelier-product { filter: brightness(1.04) contrast(1.01); transform: none; }
.poster-product .poster-outline { -webkit-text-stroke-color: #d8e4ce1c; opacity: .85; }
.poster-hero .poster-product .atelier-caption,
.poster-hero .poster-product .atelier-caption > a { color: #d6e0d0; text-shadow: none; }
.poster-hero .poster-copy .campaign-tagline,
.poster-hero .poster-copy .campaign-tagline > span {
  font-size: clamp(40px, 4.45vw, 73px);
  font-weight: 400;
  line-height: 1.1;
  letter-spacing: -.048em;
}
.poster-hero .poster-copy .campaign-tagline > span { color: #bac7b4; }
.poster-hero .poster-copy .campaign-description {
  font-size: 14px;
  line-height: 1.9;
  color: #b8c2b4;
  max-width: 350px;
}
.poster-hero .poster-copy .campaign-purchase { margin-top: 26px; }
.poster-hero .poster-copy .campaign-price { font-size: 29px; letter-spacing: -.035em; }
.poster-hero .poster-copy .campaign-price small { font-size: 12px; color: #bdc8b7; }
.poster-hero .poster-copy .campaign-purchase .p-button {
  max-width: 370px;
  min-height: 62px;
  font-size: 13px;
  padding: 18px 22px;
}
.poster-hero .poster-copy .invoice-micro { color: #e2eadb; font-size: 12px; }
.poster-hero .poster-copy .invoice-micro > span { color: #b2c8a3; }
.poster-hero .poster-copy .campaign-shop-link { color: #b4c2ae; font-size: 12px; }
.poster-range-line { border-color: var(--experience-line); padding-block: 15px; }
.poster-range-line > b { color: #e8efe2; font-size: 21px; }
.poster-range-line > span, .poster-copy .range-clarifier { color: #b8c5b1; }
.poster-hero .poster-facts { margin-top: 22px; padding-block: 28px; border-color: var(--experience-line); }
.poster-facts .selling-fact { padding-inline: 25px; }
.poster-facts .selling-fact:first-child { padding-left: 0; }
.poster-facts .selling-fact strong { font-size: clamp(22px, 2.15vw, 34px); color: #f0f1e9; }
.poster-facts .selling-fact > span { color: #b9c6b2; }
.poster-bottom { border-color: var(--experience-line); color: #a9b8a1; padding-block: 25px; margin-top: 0; }
.poster-hero .campaign-proof { padding-block: 20px 12px; gap: 28px; }
.poster-hero .campaign-proof > div { border-color: var(--experience-line); }
.poster-hero .campaign-proof p { font-size: 12px; color: #a7b69f; }
.poster-hero .campaign-proof b { font-size: 13px; color: #e7ecdf; }
.proof-symbol { color: #b8c7ad; }

/* Wide, quieter editorial sections replace the old hard light/dark bands. */
.manifesto, .offer-overview, .premium-home .premium-gallery,
.swiss-freedom, .battery-editorial, .pay-later, .technical-compact,
.purchase-experience, .reviews-section, .premium-faq, .personal-service,
.review-interlude {
  background: transparent;
  color: var(--experience-ink);
  border-top-color: transparent;
}
.manifesto { padding-top: clamp(100px, 12vw, 178px); }
.manifesto-grid { grid-template-columns: 1.5fr 1fr; gap: 9%; }
.manifesto-grid h2 { font-size: clamp(44px, 5.3vw, 85px); }
.manifesto-grid > p { max-width: 390px; }
.performance-line { border-color: var(--experience-line); gap: 30px; margin-top: 66px; padding-top: 42px; }
.performance-line > div + div { border-color: var(--experience-line); padding-left: 40px; }
.performance-line strong {
  font-size: clamp(64px, 7.6vw, 120px);
  letter-spacing: -.065em;
  color: #edf2e4;
  background: linear-gradient(135deg, #f0f1e9, #b3c2a8);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.performance-line strong > small { font-size: 19px; }
.performance-line strong > sup { font-size: 11px; }
.performance-line > div > span { font-size: 12px; line-height: 1.85; color: #b8c2b7; }
.signature-detail { background: transparent; }
.signature-detail::after {
  background: linear-gradient(90deg, #1d221eee 0%, #1d221ee0 24%, #1d221e66 46%, transparent 66%), linear-gradient(0deg, #1d221e77, transparent 25%);
}
.premium-home .signature-copy h2 { font-size: clamp(48px, 5.4vw, 84px); line-height: 1.1; letter-spacing: -.045em; }
.signature-copy h2 > span { color: #c5cfbd; }
.signature-copy > p { color: #c3cebc; font-size: 14px; }
.signature-copy .design-feature-facts { border-color: var(--experience-line); }
.signature-copy .design-feature-facts > span { color: #c4d0ba; font-size: 12px; }
.signature-detail > .detail-zoom { background: #212a228f; border: 1px solid #cad7c038; border-radius: 50%; }
.offer-overview-heading { gap: 9%; margin-bottom: 42px; }
.offer-overview-heading > p { max-width: 430px; }
.offer-included-grid { border: 0; padding: 0; gap: 16px; }
.offer-included-grid > div {
  padding: 30px 24px;
  border: 1px solid var(--experience-line);
  border-radius: 14px;
  background: linear-gradient(145deg, #b9cfaa0c, #18221a15);
  box-shadow: inset 0 1px 0 #e8f0df08;
}
.offer-included-grid > div + div { border-left: 1px solid var(--experience-line); }
.offer-check { color: #d1dfc4; border-color: #b7c6a84d; background: #bacfa912; }
.offer-included-grid h3 { color: #eef2e6; font-size: 15px; letter-spacing: -.02em; }
.offer-included-grid p { color: #b4c2aa; font-size: 13px; line-height: 1.85; }
.offer-options { margin-top: 12px; padding-top: 28px; gap: 40px; }
.offer-options strong { font-size: 16px; color: #e7efdf; }
.offer-options p { color: #aebbA6; font-size: 13px; line-height: 1.95; max-width: 710px; }
.offer-options .p-text-link { flex-shrink: 0; }

/* The gallery becomes a generous, softly lit product stage. */
.premium-gallery .viewer {
  height: clamp(490px, 48vw, 740px);
  background: var(--studio-surface);
  border: 1px solid #b9c9ad22;
  border-bottom: 0;
  border-radius: 20px 20px 0 0;
  box-shadow: inset 0 1px 0 #e6f1db12, 0 28px 90px #101a1014;
  isolation: isolate;
}
.premium-gallery .viewer::before { opacity: .22; }
.premium-gallery .viewer-bg-word {
  font-size: clamp(100px, 16.7vw, 260px);
  top: 14%;
  -webkit-text-stroke-color: #e7f3de24;
  opacity: .7;
}
.premium-gallery .viewer-image-wrap picture { height: 95%; width: 80%; }
.premium-gallery .viewer-image-wrap:has(img[src*="falcon-hero-studio"]),
.premium-gallery picture:has(img[src*="falcon-hero-studio"]) { mix-blend-mode: normal; }
.premium-gallery img[src*="falcon-hero-studio"] { mix-blend-mode: normal; filter: brightness(1.04) contrast(1.01); }
.premium-gallery .viewer-arrow {
  width: 50px;
  height: 50px;
  color: #eef5e9;
  background: #2430245c;
  border-color: #e4f0d63b;
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
.premium-gallery .viewer-arrow:hover { background: #b9cfaa25; color: #fff; }
.premium-gallery .zoom-button { color: #eef5e7; background: #202c215c; border: 1px solid #dbe9ce29; border-radius: 6px; padding-inline: 13px; }
.premium-gallery .view-counter { color: #edf3e7; font-size: 11px; text-shadow: none; }
.viewer-drag-hint { color: #d5e2ca; font-size: 11px; }
.rotation-control {
  background: linear-gradient(180deg, #202421, #242c24);
  color: #e3edda;
  border: 1px solid #b9c9ad22;
  border-top: 0;
  border-radius: 0 0 20px 20px;
  padding: 24px 32px 26px;
}
.rotation-control label { font-size: 12px; font-weight: 500; }
.rotation-control > div { color: #aebea4; font-size: 11px; }
.rotation-control input { accent-color: #e14f52; }
.premium-gallery .view-thumbs { gap: 16px; margin-top: 20px; }
.premium-gallery .view-thumb {
  min-height: 120px;
  border: 1px solid #bbc7bc29;
  border-radius: 12px;
  background: radial-gradient(ellipse at 25% 35%, #6c805e38, #263025 72%);
  box-shadow: inset 0 1px 0 #e5eddb06;
  color: #d2dfc8;
}
.premium-gallery .view-thumb.selected {
  border: 1px solid #d95f61c9;
  box-shadow: inset 0 0 0 1px #d95f6140, 0 8px 22px #0f1b0e16;
  background: radial-gradient(ellipse at 35% 30%, #8c9b7e40, #303c2b 80%);
}
.premium-gallery .view-thumb span { color: #d6e3cc; font-size: 11px; }
.premium-gallery .view-thumb:hover { border-color: #c3d1b77a; }
.gallery-photo-note { color: var(--experience-faint); margin-top: 16px; font-size: 12px; line-height: 1.8; }
.viewer-image-wrap.is-view-changing { animation: experience-view-change .32s ease both; }
@keyframes experience-view-change {
  from { opacity: .65; transform: translateX(12px); }
  to { opacity: 1; transform: translateX(0); }
}

.swiss-freedom { position: relative; gap: 9%; }
.swiss-freedom::before {
  content: '';
  position: absolute;
  inset: 7% 3%;
  z-index: -1;
  background: radial-gradient(ellipse, #9cb18c0e, transparent 72%);
  pointer-events: none;
}
.swiss-freedom h2 em { color: #bdcbb4; }
.freedom-rules { gap: 34px; }
.freedom-rules > div + div { border-color: var(--experience-line); }
.freedom-rules b { font-size: clamp(78px, 7.1vw, 110px); color: #f0f1e9; letter-spacing: -.06em; }
.freedom-rules b > span { color: #b8cbaa; }
.freedom-rules p { color: #b6c6ac; font-size: 14px; }
.freedom-rules strong { color: #e7f0df; font-size: 15px; }
.freedom-rules > a { color: #a9bda0; font-size: 11px; }
.battery-editorial { gap: 9%; }
.battery-editorial-image {
  background: var(--studio-surface);
  border: 1px solid #b9c9ad20;
  border-radius: 20px;
  padding: 22px 12px 4px;
  overflow: hidden;
  box-shadow: inset 0 1px 0 #e6f1db0c;
}
.battery-editorial-image > span { color: #c6d4bb; font-size: 10px; letter-spacing: .12em; padding: 18px 12px 25px; }
.battery-editorial-copy h2 { font-size: clamp(40px, 4.6vw, 74px); }
.battery-editorial-copy > p:not(.p-kicker) { max-width: 440px; }
.battery-range-options, .battery-editorial-data > div + div { border-color: var(--experience-line); }
.battery-range-options b, .battery-editorial-data b { color: #e9f0e1; }
.battery-range-options small, .battery-editorial-data small { color: #b4c3a9; font-size: 12px; line-height: 1.85; }
.review-interlude { padding-block: 24px; }
.review-interlude .review-jump { color: #d4dfcb; }
.pay-later { padding-top: 82px; }
.pay-later-heading h2 { font-size: clamp(52px, 7.7vw, 118px); line-height: 1.07; }
.pay-later-heading h2 em { color: #becfb4; font-size: inherit; }
.pay-later-heading > p:not(.p-kicker) { color: #c0d0b5; font-size: 16px; }
.pay-later-heading .p-button { min-width: 325px; font-size: 13px; }
.payment-steps { border-color: var(--experience-line); padding-top: 42px; gap: 28px; }
.payment-steps li { padding: 28px 26px 31px; border: 1px solid var(--experience-line); border-radius: 14px; background: linear-gradient(140deg, #afc99d0b, #1a241b10); }
.payment-steps li > span { color: #829879; font-size: 43px; margin-bottom: 25px; }
.payment-steps h3 { color: #e6efdf; font-size: 21px; }
.payment-steps p { color: #aaba9f; font-size: 13px; line-height: 1.9; }
.technical-compact .p-section-heading { margin-bottom: 35px; }
.technical-drawer { border-color: #b6c6a837; }
.technical-drawer > summary { font-size: 19px; padding-block: 28px; color: #e1ebd9; }
.technical-drawer .spec-table > div { border-color: #b6c6a824; font-size: 13px; }
.technical-drawer .spec-table dt { color: #aebea3; }
.technical-drawer .spec-table dd { color: #dce9d3; }
.p-footnote { color: #a2b496; font-size: 12px; line-height: 1.9; }

/* An ordered, tactile configuration surface with clear selection states. */
.purchase-experience { border-top: 0; }
.purchase-experience > .p-section-heading { margin-bottom: 32px; }
.purchase-experience .purchase-review > span { color: #b4c6a8; }
.purchase-review .review-jump {
  background: #d5e5c509;
  border: 1px solid #bfceb333;
  border-radius: 10px;
  color: #dce8d2;
  padding: 13px 18px;
}
.purchase-journey { border: 1px solid #b2c5a32e; background: #b2c5a322; border-radius: 10px; margin-bottom: 18px; }
.purchase-journey > li { background: #273226; color: #c5d6b9; padding: 17px 21px; font-size: 12px; }
.purchase-journey > li::before { color: #9ab38b; }
.purchase-promise {
  background: linear-gradient(120deg, #5065483b, #293b2726);
  border: 1px solid #a7c39433;
  border-radius: 10px;
  color: #bdd2b0;
  padding: 21px 24px;
  margin-bottom: 27px;
}
.purchase-promise strong { color: #ecf2e4; font-size: 16px; }
.purchase-experience .order-layout {
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.25fr);
  background: #242a25;
  border: 1px solid #b9c7ac38;
  border-radius: 18px;
  box-shadow: 0 30px 100px #101b101c, inset 0 1px 0 #e3efd908;
}
.purchase-experience .order-product {
  background: radial-gradient(ellipse at 60% 22%, #8ea28010, transparent 65%);
  border-radius: 17px 0 0 17px;
  padding: 31px 30px;
  top: 106px;
}
.purchase-experience .order-product-top { color: #e5eedc; font-size: 10px; }
.purchase-experience .order-product-top > span:last-child { color: #9db292; font-size: 8px; }
.purchase-experience .order-image-stage { margin: 22px -10px; background: radial-gradient(ellipse at 50% 47%, #7f927343, #354b2d24 50%, transparent 78%); border-radius: 12px; }
.purchase-experience .order-product > #order-variant-label { color: #e8efdf; font-size: 15px; }
.purchase-experience .order-image-note { color: #b1c3a5; font-size: 12px; }
.purchase-included-label { color: #d0e0c4; }
.purchase-assurance, .purchase-contact { border-color: #b7caa12b; }
.purchase-assurance > li, .purchase-assurance > div { color: #b2c5a6; font-size: 12px; }
.purchase-assurance strong { color: #e1ecd8; }
.purchase-assurance > li::before, .purchase-assurance > div::before { color: #b8d6a7; }
.purchase-contact { color: #b4c9a7; }
.purchase-contact strong { color: #dcebd0; font-size: 12px; }
.purchase-contact a { color: #edf3e5; font-size: 16px; }
.purchase-review-quote { background: linear-gradient(145deg, #b6cba411, #8a9c7a08); border: 1px solid #bed1aa2b; border-radius: 10px; padding: 20px; }
.purchase-review-quote blockquote { color: #dce9d2; font-size: 13px; }
.purchase-review-quote .review-highlight-author { color: #a4bd94; font-size: 11px; }
.purchase-experience .order-form-panel {
  background: linear-gradient(145deg, #2b352c, #252e26 53%, #29342a);
  border-left: 1px solid #bdd0ad1a;
  border-radius: 0 17px 17px 0;
  padding: 39px 38px 41px;
}
.purchase-experience .order-step-title { color: #edf2e6; font-size: 20px; line-height: 1.5; letter-spacing: -.025em; }
.purchase-experience .order-step-title > span { border-color: #bed1ae3d; color: #bed2b0; width: 29px; height: 29px; background: #bed1ae0a; }
.purchase-experience .order-field label { color: #c7d6bc; font-size: 12px; }
.purchase-experience .order-field label > span { color: #a8bb9b; }
.purchase-experience .order-field input, .purchase-experience .order-field select {
  background: #19231bb8;
  border: 1px solid #bdcfaa40;
  border-radius: 7px;
  color: #eaf3e1;
  font-size: 16px;
  min-height: 56px;
  box-shadow: inset 0 2px 6px #10171014;
}
.purchase-experience .order-field select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 20 20'%3E%3Cpath d='m5 7 5 5 5-5' fill='none' stroke='%23c4d5b9' stroke-width='1.5'/%3E%3C/svg%3E");
}
.purchase-experience .order-field select option { background: #263228; color: #edf5e4; }
.purchase-experience .order-field input::placeholder { color: #95aa88; font-size: 13px; opacity: 1; }
.purchase-experience .order-field input[readonly] { background: #becdab08; color: #aac19a; }
.purchase-experience .order-field input:focus, .purchase-experience .order-field select:focus {
  border-color: #b2cca1;
  outline: 3px solid #bdd6ac24;
  outline-offset: 3px;
}
.purchase-experience .order-field input:user-invalid { border-color: #ee8e88; }
.purchase-experience .order-field-hint, .purchase-experience .delivery-intro,
.purchase-experience .accessory-unit-note, .battery-option-note {
  color: #aec3a0;
  font-size: 12px;
  line-height: 1.85;
}
.purchase-experience .battery-fieldset, .purchase-experience .accessory-fieldset,
.purchase-experience .delivery-fieldset, .purchase-experience .contact-fields-wrapper,
.purchase-experience .order-acknowledgements, .purchase-experience .order-summary {
  border-color: #bdd0ad27;
}
.battery-choice, .purchase-experience .accessory-option, .purchase-experience .delivery-option {
  background: linear-gradient(145deg, #c2d4b80b, #1c281b42);
  border: 1px solid #bfceaf3b;
  border-radius: 10px;
  transition: background .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.battery-choice:has(input:checked), .purchase-experience .accessory-option:has(input:checked), .purchase-experience .delivery-option:has(input:checked) {
  background: linear-gradient(125deg, #7a3a363b, #c0543a0b 80%);
  border-color: #e37b71;
  box-shadow: inset 0 0 0 1px #e37b7133, 0 6px 20px #131e1214;
}
.battery-choice-content > strong, .battery-choice-content > b { color: #e9f1df; }
.battery-choice-content small { color: #b2c6a5; }
.choice-badge { color: #b9cdae; background: #bed2ad0b; border-color: #bdd0a92b; }
.battery-choice:has(input:checked) .choice-badge { color: #f5c5b8; background: #e7997920; border-color: #eaa18542; }
.battery-range-copy { color: #d3e4c5; }
.battery-choice input, .purchase-experience .accessory-option input, .purchase-experience .delivery-option > input,
.purchase-experience .order-acknowledgements input { accent-color: #e46b65; }
.purchase-experience .accessory-option-title { color: #e4efda; font-size: 13px; }
.purchase-experience .accessory-option-title b { color: #f0b1a3; }
.purchase-experience .accessory-option small { color: #b1c4a4; font-size: 12px; }
.purchase-experience .included-equipment { background: #adc9950a; border-color: #b5cc9f29; border-radius: 10px; color: #bfd5b0; }
.purchase-experience .included-equipment > span { border-color: #bed8a74a; color: #cce5b7; }
.purchase-experience .included-equipment p { color: #d6e9c8; }
.purchase-experience .included-equipment strong { color: #aacb97; }
.purchase-experience .delivery-option-head > strong { color: #e6f0dd; }
.purchase-experience .delivery-option-head > b { color: #e9f1e1; }
.purchase-experience .delivery-option-time { color: #bfd7af; }
.purchase-experience .delivery-option-description { color: #adc29e; font-size: 12px; }
.purchase-experience .order-acknowledgements > label { color: #b6cca9; font-size: 12px; }
.purchase-experience .order-acknowledgements a { color: #e1eed5; }
.purchase-selection-summary { background: #bdcfa90a; color: #c0d5b2; border-color: #bdd0ab25; border-radius: 7px; font-size: 12px; }
.purchase-experience .order-cost-breakdown > div { font-size: 13px; }
.purchase-experience .order-cost-breakdown dt { color: #b0c6a0; }
.purchase-experience .order-cost-breakdown dd { color: #e8f3df; }
.purchase-experience .order-cost-breakdown .order-subtotal-row { border-color: #b8cda52b; }
.purchase-experience .order-final-total { border-color: #c1d4af38; padding-block: 25px; }
.purchase-experience .order-final-total span { color: #d5e7c7; font-size: 13px; }
.purchase-experience .order-final-total b { color: #f0f6e9; font-size: 34px; letter-spacing: -.05em; }
.purchase-experience .order-final-total small, .purchase-experience .order-shipping-note,
.purchase-experience .order-transfer-note, .purchase-experience .order-direct-link,
.purchase-support { color: #a7c196; font-size: 12px; line-height: 1.9; }
.purchase-final-trust { background: #b0d4930a; border-color: #bad4a228; border-radius: 8px; color: #d5eac4; }
.purchase-final-trust .review-jump-compact { color: #c8deba; }
.purchase-experience .order-submit { background: linear-gradient(135deg, #d9363b, #c92e36 68%, #b72730); border-radius: 7px; width: 100%; min-height: 63px; font-size: 13px; box-shadow: inset 0 1px 0 #ffc6be25, 0 8px 25px #111b101f; }
.purchase-experience .order-submit:hover { background: linear-gradient(135deg, #d9363b, #c72d35 68%, #b92730); box-shadow: 0 12px 30px #111b1030; }
.purchase-experience .order-submit-note { color: #c9dfb9; font-size: 12px; }
.purchase-support { border-color: #bdd0a921; }
.purchase-support a { color: #dfefcf; }
.purchase-experience .configuration-request-note { background: #bdd0a90c; color: #d4e8c3; border-color: #a5c68c; border-radius: 7px; }
#order-summary-error { background: #743a333d; color: #ffc6b7; border: 1px solid #e392793d; border-radius: 7px; }

/* Feedback, service and articles use the same materials and spacing. */
.reviews-section { border-top: 0; }
.reviews-section .p-section-heading { margin-bottom: 45px; }
.review-summary-block > small, .review-summary-block #review-count, .review-summary-caption { color: #b1c5a4; }
.review-summary-number, #review-average { color: #edf3e5; }
.reviews-layout { gap: 6%; }
#reviews-list { gap: 17px; }
.review-card, .review-card:first-child { padding: 27px; border: 1px solid #b9ceaa24; border-radius: 13px; background: linear-gradient(135deg, #b9ceaa09, #17221917); box-shadow: inset 0 1px 0 #deefd205; }
.review-author h3 { color: #e6f0dc; font-size: 17px; }
.review-origin, .review-date { color: #a4bd96; }
.review-card-text { color: #c1d5b3; font-size: 14px !important; }
.review-photo-button { border-radius: 8px; background: #2b3827; }
.review-photo-zoom { border: 1px solid #d3e6c632; border-radius: 5px; background: #1d2b20b3; color: #e3f1d8; backdrop-filter: blur(10px); }
.review-form-panel { background: linear-gradient(135deg, #34402e, #283225 80%); border: 1px solid #bfd0af2e; border-radius: 15px; padding: 34px; box-shadow: 0 15px 50px #121e100d; }
.review-form-panel h3 { color: #ebf3e1; font-size: 29px; }
.review-form-panel > p, #review-form > p, .review-field small, .review-field-hint, .review-photo-hint { color: #afc59f; }
#review-form label:not(:has(input[type=radio])), #review-form legend, .review-field-label { color: #c5dab7; font-size: 12px; }
#review-form input[type=text], #review-form textarea { background: #192519b3; color: #eaf5df; border: 1px solid #bad0a542; border-radius: 7px; font-size: 16px; }
#review-form input::placeholder, #review-form textarea::placeholder { color: #90aa80; opacity: 1; font-size: 13px; }
#review-form input:focus-visible, #review-form textarea:focus-visible { border-color: #bdd6a8; outline-color: #a7c38d; }
.review-rating-options label { color: #92a785; border-radius: 7px; }
.review-rating-options label:has(.rating-input:checked), .review-rating-options label.is-rated { color: #e9b84c; background: #f0ce6c0b; }
.review-rating-options label:hover { color: #f2c559; background: #eac25f12; }
.review-rating-options label:focus-within { outline-color: #c4d9b1; }
.review-consent span, .review-consent-label span { color: #aec79c; font-size: 12px; }
.review-consent input, .review-consent-label input, #review-consent { accent-color: #df6a61; }
#review-photo { color: #b5cda3; }
#review-photo::file-selector-button { color: #e0efd1; background: #c3dda911; border-color: #c3dda947; border-radius: 6px; }
#review-photo-remove { color: #c5ddb3; }
#review-photo-preview { background: #2f402a; border-radius: 7px; }
#review-submit { border-radius: 7px; }
.review-feedback { background: #c2dca913; color: #cce6ba; border: 1px solid #c2dca922; border-radius: 7px; }
.review-feedback.error { background: #743a333d; color: #ffc6b7; border-color: #e392793d; }
.review-feedback.success { background: #4f743c30; color: #dcf4c9; border-color: #bada9c3b; }
#reviews-empty, #reviews-status { color: #acc49b; border-color: #b9d0a22c; }
#reviews-next, .review-retry { color: #d1e7bf; border-color: #b9d1a243; border-radius: 6px; }
.premium-faq { gap: 9%; }
.premium-faq .faq-list details { border-color: #b1c8a32b; }
.premium-faq summary { color: #e5f0da; font-size: 14px; min-height: 82px; }
.premium-faq .faq-answer { color: #b1caa0; font-size: 14px; line-height: 1.95; }
.premium-faq .faq-answer a { color: #d9edc9; font-size: inherit; }
.personal-service { padding-top: 82px; padding-bottom: 120px; }
.personal-service h2 em { color: #b4cba7; }
.personal-service > div { border-color: var(--experience-line); gap: 45px; }
.personal-service a { color: #d2e6c4; font-size: 21px; letter-spacing: -.025em; }
.selling-facts-container, .selling-facts {
  background: linear-gradient(180deg, #c4d4b705, #c4d4b708 50%, #c4d4b705);
  color: #e4eedc;
  border-color: #bed2ac21;
}
.selling-fact strong { color: #e6f0de; }
.selling-fact > span, .selling-facts-caption { color: #a9c098; }
.selling-fact + .selling-fact { border-color: #bed2ac21; }
.selling-facts-caption { background: transparent; }
.footer {
  background: radial-gradient(ellipse at 0% 0%, #809c6a13, transparent 65%), linear-gradient(180deg, #1a201b, #151a16);
  color: #c1d0b7;
  border-top: 1px solid #b6c9a51a;
  padding-top: 86px;
}
.footer-top > p { color: #dce8d2; font-size: 34px; line-height: 1.3; }
.footer-top a { color: #c9dfbb; border-color: #aac39440; }
.footer-links { border-color: #afc59e24; font-size: 11px; gap: 16px 25px; }
.footer-links a, .footer-links button { color: #bdcdb1; font-size: 11px; }
.footer-note { color: #93ad83; font-size: 11px; line-height: 1.9; }
.whatsapp-float { background: linear-gradient(140deg, #188c55, #0e6c43); box-shadow: 0 8px 28px #08130c44, inset 0 1px 0 #8bd4ab40; border: 1px solid #b1ecc82b; }
.whatsapp-float:hover { background: linear-gradient(140deg, #209e62, #137b4c); }

.article-page { background: linear-gradient(145deg, #202722, #1c231d 60%, #243023); color: #e7efde; }
.article-page .warm, .article-page .article-hero, .article-page .service-cta { background: transparent; }
.article-page .article-hero { padding-top: 65px; padding-bottom: 80px; border-color: #b4c9a02b; background: radial-gradient(ellipse at 80% 35%, #95b77b14, transparent 70%); }
.article-page .article-hero h1 { color: #ebf3e3; font-size: clamp(44px, 6.3vw, 96px); line-height: 1.1; letter-spacing: -.045em; }
.article-page .article-hero p, .article-page .eyebrow { color: #b1c79f; }
.article-page .prose { color: #c2d4b6; line-height: 1.95; font-size: 15px; }
.article-page .prose h2, .article-page .prose h3, .article-page h2, .article-page h3 { color: #e7f0df; }
.article-page .prose a, .article-page .article-aside a, .article-page .article-toc a { color: #dceecb; }
.article-page .article-toc, .article-page .article-aside { color: #aec79c; border-color: #b9d0a22b; }
.article-page .article-callout, .article-page .battery-specs, .article-page .article-next { background: #c4dcb00a; color: #ccdfbd; border-color: #bad2a237; border-radius: 10px; }
.article-page .article-callout b, .article-page .battery-specs b { color: #e4f1d9; }
.article-page .battery-specs span, .article-page .source-note { color: #a9c295; }
.article-page .service-grid { background: radial-gradient(ellipse at 78% 50%, #8aab6e13, transparent 65%); }
.article-page .contact-block p, .article-page .service-location p { color: #b9ceaa; }
.article-page .contact-large { color: #e2f0d5; }
.article-page .service-location { color: #bfd4ae; border-color: #b7d09d2e; background: #c1d7ac06; border-radius: 12px; }
.article-page .service-questions .faq-answer, .article-page .service-cta p { color: #bbd3a9; }
.article-page .service-questions details { border-color: #b7d09d2e; }
.article-page .service-questions summary { color: #ddebce; }
.article-page .button.outline { color: #d8edc7; border-color: #b7d09d4d; border-radius: 7px; background: #c1d7ac05; }
dialog .button.outline { background: #263526; color: #e1efd8; border-color: #b7d09d4d; border-radius: 7px; }
.button.outline:hover, dialog .button.outline:hover { background: #354632; color: #f1f5eb; border-color: #b8cf9e72; }
dialog:not(.zoom-dialog):not(#review-photo-dialog) { background: #273325; color: #e5f1da; border: 1px solid #b8d29d3b; border-radius: 15px; }
dialog .notice { background: #b9d49f0b; color: #bfd7ad; border-color: #bbd6a32e; }
dialog .consent-option { border-color: #bbd6a32e; color: #d5e9c3; }
dialog .consent-option small, dialog .small { color: #a6c291; }
dialog::backdrop { background: #0b140bc9; backdrop-filter: blur(9px); -webkit-backdrop-filter: blur(9px); }
.zoom-dialog { border: 1px solid #c2d7ad26; background: #202722; border-radius: 12px; }
.zoom-dialog > img { border-radius: 6px; }
#review-photo-dialog { background: #202a20; border: 1px solid #bed6a72e; border-radius: 12px; }
#review-photo-dialog [data-close-dialog] { color: #e1f2d4; background: #253723d9; border-color: #bbd8a345; }

@media (min-width: 1060px) and (max-height: 980px) {
  .poster-hero .poster-title h1 { font-size: clamp(130px, 14.3vw, 215px); }
  .poster-hero .poster-product { height: 580px; }
}
@media (max-width: 1059px) and (min-width: 761px) {
  .p-section { padding-block: 95px; }
  .premium-home h2, .premium-home h2 > em { font-size: 48px; }
  .poster-hero .poster-copy .campaign-tagline, .poster-hero .poster-copy .campaign-tagline > span { font-size: 40px; }
  .poster-hero .poster-copy .campaign-description { font-size: 13px; }
  .poster-hero .poster-copy .campaign-purchase .p-button { padding-inline: 16px; font-size: 12px; }
  .offer-included-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .offer-included-grid > div { padding: 25px; }
  .purchase-experience .order-layout { grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
  .purchase-experience .order-product { padding: 27px 23px; }
  .purchase-experience .order-form-panel { padding: 31px 27px; }
  .reviews-layout { grid-template-columns: 1fr 1fr; gap: 4%; }
  .review-card { padding: 23px; }
  .review-form-panel { padding: 28px 25px; }
  .payment-steps { gap: 17px; }
  .payment-steps li { padding: 25px 21px; }
  .payment-steps h3 { font-size: 18px; }
}
@media (max-width: 760px) {
  :root { --pad: 24px; }
  body.premium-home { background: radial-gradient(ellipse 600px 1200px at 100% 20%, #87a16f0b, transparent 75%), linear-gradient(180deg, #202120, #1d231e 26%, #273026 58%, #1b221b 100%); }
  .site-header { height: 70px; gap: 12px; }
  .brand, .brand img { width: 114px; }
  .header-shop { min-height: 44px; padding: 10px 12px; gap: 9px; font-size: 10px; border-radius: 6px; }
  .header-shop > span { font-size: 20px; }
  .menu-toggle { width: 44px; min-width: 44px; height: 44px; padding-inline: 11px; margin-inline: -4px; }
  .p-section { padding-block: 80px; }
  .premium-home h2, .premium-home h2 > em { font-size: clamp(33px, 8.5vw, 55px); line-height: 1.15; letter-spacing: -.035em; }
  .p-kicker { font-size: 9px; letter-spacing: .13em; }
  .p-section-heading { gap: 22px; margin-bottom: 34px; }
  .p-section-heading > p, .manifesto-grid > p, .battery-editorial-copy > p:not(.p-kicker), .offer-overview-heading > p { font-size: 14px; line-height: 1.9; }
  .p-section-heading > p { max-width: none; }
  .p-text-link { font-size: 13px; }
  .poster-hero { padding-top: 26px; }
  .poster-hero .campaign-topline { margin-bottom: 22px; gap: 8px 15px; }
  .poster-hero .campaign-topline .p-kicker { font-size: 8px; letter-spacing: .12em; }
  .poster-hero .campaign-topline .campaign-code { font-size: 8px !important; letter-spacing: .08em !important; }
  .poster-hero .poster-title h1 { font-size: 21.4vw; line-height: 1; letter-spacing: -.046em; }
  .poster-hero .poster-review { margin: 0 0 21px; }
  .poster-review .review-jump { gap: 10px 13px; }
  .poster-review .review-jump [data-review-summary] { font-size: 11px; }
  .poster-layout { margin-top: -3px; }
  .poster-hero .poster-product { height: clamp(380px, 118vw, 570px); background: radial-gradient(ellipse at 50% 47%, #89958038, #516f4224 37%, transparent 75%); }
  .poster-hero .poster-product > picture { inset: 0 -9% 4%; }
  .poster-product .poster-outline { font-size: 42vw; }
  .poster-hero .poster-product .atelier-caption { bottom: 0; font-size: 9px; }
  .poster-hero .poster-product .atelier-caption > span { font-size: 9px; }
  .poster-hero .poster-product .atelier-caption > a { font-size: 10px; }
  .poster-hero .poster-copy { padding-top: 24px; }
  .poster-hero .poster-copy .campaign-tagline, .poster-hero .poster-copy .campaign-tagline > span { font-size: clamp(36px, 9.6vw, 58px); line-height: 1.13; letter-spacing: -.038em; }
  .poster-hero .poster-copy .campaign-description { font-size: 14px; max-width: none; margin-top: 22px; }
  .poster-range-line { padding-block: 15px; margin-top: 23px; }
  .poster-range-line > b { font-size: 22px; }
  .poster-range-line > span, .poster-copy .range-clarifier { font-size: 12px; }
  .poster-hero .poster-copy .campaign-price { font-size: 29px; }
  .poster-hero .poster-copy .campaign-purchase .p-button { font-size: 13px; min-height: 62px; max-width: none; margin-top: 23px; }
  .poster-hero .poster-copy .campaign-shop-link { font-size: 12px; }
  .poster-hero .poster-facts { margin-top: 32px; padding-block: 23px; gap: 25px 17px; }
  .poster-facts .selling-fact { padding-inline: 0; }
  .poster-facts .selling-fact strong { font-size: 25px; line-height: 1.3; }
  .poster-facts .selling-fact > span { font-size: 12px; line-height: 1.8; }
  .poster-bottom { padding-block: 22px; font-size: 9px; }
  .poster-hero .campaign-proof { padding-block: 15px 0; gap: 21px; }
  .poster-hero .campaign-proof p { font-size: 12px; }
  .poster-hero .campaign-proof b { font-size: 13px; }
  .manifesto { padding-top: 95px; }
  .manifesto > .p-kicker { margin-bottom: 26px; }
  .manifesto-grid { display: block; }
  .manifesto-grid > p { margin-top: 26px; max-width: none; }
  .performance-line { margin-top: 39px; padding-top: 37px; gap: 30px 22px; }
  .performance-line > div + div { padding-left: 0; border-left: 0; }
  .performance-line strong { font-size: clamp(62px, 17vw, 90px); line-height: 1.05; }
  .performance-line strong > small { font-size: 16px; margin-left: 7px; }
  .performance-line > div > span { font-size: 12px; margin-top: 12px; line-height: 1.8; }
  .performance-line strong > sup { font-size: 10px; top: -16px; }
  .signature-detail { background: transparent; }
  .signature-detail::after { background: linear-gradient(180deg, #1e231e99, transparent 13%, transparent 39%, #1e231e 64%); }
  .signature-media { height: clamp(365px, 108vw, 580px); }
  .signature-copy { padding: 26px 24px 65px; margin-top: -5px; }
  .premium-home .signature-copy h2, .signature-copy h2 > span { font-size: clamp(28px, 7.65vw, 56px); letter-spacing: -.03em; line-height: 1.16; }
  .signature-copy > p { font-size: 14px; }
  .signature-copy .design-feature-facts { margin-top: 23px; padding-top: 20px; gap: 9px 17px; }
  .signature-copy .design-feature-facts > span { font-size: 12px; }
  .signature-copy > p.signature-equipment-note { font-size: 12px; color: #a6b99d; }
  .offer-overview { padding-top: 48px; }
  .offer-overview-heading { margin-bottom: 30px; }
  .offer-overview-heading > p { margin-top: 24px; }
  .offer-included-grid { padding: 0; gap: 12px; }
  .offer-included-grid > div { display: block; padding: 23px 19px !important; border: 1px solid var(--experience-line) !important; border-radius: 12px; }
  .offer-check { margin-bottom: 14px; }
  .offer-included-grid h3 { font-size: 14px; line-height: 1.6; }
  .offer-included-grid p { font-size: 12px; margin-top: 8px; line-height: 1.85; }
  .offer-options { margin-top: 4px; padding-top: 27px; gap: 21px; }
  .offer-options p { font-size: 13px; }
  .premium-gallery .viewer { height: clamp(355px, 105vw, 550px); border-radius: 14px 14px 0 0; }
  .premium-gallery .viewer-image-wrap picture { width: 98%; height: 94%; margin-top: -8px; }
  .premium-gallery .viewer-bg-word { font-size: 22vw; top: 19%; }
  .premium-gallery .viewer-arrow { width: 44px; height: 44px; font-size: 21px; top: 44%; }
  .premium-gallery .view-counter { left: 19px; bottom: 21px; font-size: 10px; max-width: 48%; }
  .premium-gallery .zoom-button { right: 14px; bottom: 12px; font-size: 10px; padding-inline: 10px; }
  .viewer-drag-hint { top: 20px; left: 20px; font-size: 10px; max-width: 230px; }
  .rotation-control { padding: 22px 20px; border-radius: 0 0 14px 14px; }
  .rotation-control label { margin-bottom: 13px; }
  .premium-gallery .view-thumbs { gap: 9px; margin-top: 13px; }
  .premium-gallery .view-thumb { min-height: 108px; border-radius: 8px; }
  .premium-gallery .view-thumb img { width: 66px; height: 66px; }
  .premium-gallery .view-thumb span { font-size: 10px; }
  .swiss-freedom { gap: 35px; }
  .freedom-rules { gap: 25px; }
  .freedom-rules > div + div { padding-left: 25px; }
  .freedom-rules b { font-size: 80px; }
  .freedom-rules p { font-size: 13px; margin-top: 17px; }
  .freedom-rules strong { font-size: 14px; }
  .freedom-rules > a { font-size: 11px; }
  .battery-editorial { gap: 34px; }
  .battery-editorial-image { border-radius: 14px; }
  .battery-editorial-image > span { font-size: 9px; padding-bottom: 22px; }
  .battery-editorial-copy h2 { font-size: clamp(34px, 8.6vw, 54px); }
  .battery-editorial-copy > p:not(.p-kicker) { max-width: none; }
  .battery-range-options small, .battery-editorial-data small { font-size: 12px; }
  .pay-later { padding-top: 58px; }
  .pay-later-heading h2, .pay-later-heading h2 em { font-size: clamp(37px, 9.7vw, 61px); letter-spacing: -.04em; line-height: 1.13; }
  .pay-later-heading > p:not(.p-kicker) { font-size: 14px; line-height: 1.9; }
  .pay-later-heading .p-button { min-width: 0; width: 100%; font-size: 13px; padding-inline: 20px; }
  .payment-steps { padding-top: 29px; margin-top: 38px; gap: 12px; }
  .payment-steps li { padding: 25px 23px; border-radius: 12px; }
  .payment-steps li > span { margin-bottom: 18px; font-size: 37px; }
  .payment-steps h3 { font-size: 21px; }
  .payment-steps p { font-size: 13px; max-width: none; }
  .technical-drawer > summary { font-size: 16px; padding-block: 23px; }
  .technical-drawer .spec-table > div { font-size: 12px; gap: 17px; }
  .p-footnote { font-size: 12px; line-height: 1.9; }
  .purchase-experience { padding-inline: 18px; }
  .purchase-experience > .p-section-heading { margin-bottom: 26px; padding-inline: 6px; }
  .purchase-experience .purchase-review { margin-top: 24px; }
  .purchase-review .review-jump { border-radius: 8px; }
  .purchase-journey { border-radius: 9px; margin-bottom: 16px; }
  .purchase-journey > li { font-size: 11px; padding: 12px 10px; }
  .purchase-promise { padding: 18px; font-size: 12px; line-height: 1.8; gap: 12px; border-radius: 9px; margin-bottom: 20px; }
  .purchase-promise strong { font-size: 15px; }
  .purchase-experience .order-layout { display: block; border-radius: 14px; }
  .purchase-experience .order-product { padding: 28px 23px; position: static; border-radius: 13px 13px 0 0; }
  .purchase-experience .order-product-top { font-size: 10px; }
  .purchase-experience .order-product-top > span:last-child { font-size: 8px; }
  .purchase-experience .order-image-stage { margin: 19px -8px; }
  .purchase-experience .order-product > #order-variant-label { font-size: 14px; }
  .purchase-experience .order-image-note { font-size: 12px; }
  .purchase-assurance { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px 14px; margin-top: 23px; }
  .purchase-assurance > li { font-size: 12px; line-height: 1.75; }
  .purchase-contact a { font-size: 15px; }
  .purchase-review-quote { padding: 18px; margin-top: 21px; }
  .purchase-review-quote blockquote { font-size: 13px; }
  .purchase-experience .order-form-panel { border: 0; border-top: 1px solid #bad0a624; border-radius: 0 0 13px 13px; padding: 31px 23px 34px; }
  .purchase-experience .order-step-title { font-size: 19px; line-height: 1.55; gap: 11px; }
  .purchase-experience .order-step-title > span { min-width: 27px; width: 27px; height: 27px; }
  .purchase-experience .order-field input, .purchase-experience .order-field select { font-size: 16px; min-height: 56px; padding: 14px 13px; }
  .purchase-experience .order-field select { padding-right: 36px; }
  .purchase-experience .order-field label { font-size: 12px; }
  .purchase-experience .order-fields.configuration-fields { grid-template-columns: minmax(0, 1fr) 68px; }
  .battery-choice { padding: 18px 16px; }
  .purchase-experience .accessory-option, .purchase-experience .included-equipment { padding: 17px 14px; }
  .purchase-experience .delivery-option, .purchase-experience .delivery-option:has(input:checked) { padding: 19px 15px; }
  .purchase-experience .order-final-total b { font-size: 29px; }
  .purchase-experience .order-final-total span { font-size: 12px; }
  .purchase-experience .order-cost-breakdown > div { font-size: 12px; }
  .purchase-experience .order-submit { width: 100%; font-size: 13px; padding-inline: 18px; min-height: 63px; }
  .purchase-experience .order-acknowledgements > label { font-size: 12px; }
  .reviews-section .p-section-heading { margin-bottom: 31px; }
  .reviews-layout { gap: 28px; }
  .review-card, .review-card:first-child { padding: 25px 21px; border-radius: 11px; }
  .review-author h3 { font-size: 16px; }
  .review-card-text { font-size: 14px !important; }
  .review-form-panel { padding: 29px 23px; border-radius: 13px; }
  .review-form-panel h3 { font-size: 27px; }
  .review-summary-block #review-count { font-size: 12px; }
  #review-form input[type=text], #review-form textarea { font-size: 16px; }
  #review-form label:not(:has(input[type=radio])), #review-form legend { font-size: 12px; }
  .review-rating-options { gap: 5px; }
  .review-rating-options label { min-width: 44px; min-height: 48px; }
  .review-date { font-size: 10px; max-width: 105px; }
  .premium-faq { gap: 30px; }
  .premium-faq summary { font-size: 14px; min-height: 79px; padding-block: 23px; }
  .personal-service { padding-bottom: 86px; }
  .personal-service > div { gap: 15px; margin-top: 33px; }
  .personal-service a { font-size: 20px; }
  .selling-facts, .selling-facts-container { background: linear-gradient(180deg, #b8cf9e06, #b8cf9e09, #b8cf9e06); }
  .selling-fact strong { font-size: 25px; }
  .selling-fact > span { font-size: 12px; }
  .footer { padding-top: 61px; }
  .footer-top > p { font-size: 30px; }
  .footer-links, .footer-links a, .footer-links button { font-size: 11px; }
  .footer-note { font-size: 11px; line-height: 1.9; }
  .article-page .article-hero { padding-top: 39px; padding-bottom: 52px; }
  .article-page .article-hero h1 { font-size: clamp(34px, 9.2vw, 59px); letter-spacing: -.035em; line-height: 1.15; }
  .article-page .prose { font-size: 14px; }
  .article-page .prose h2 { font-size: clamp(26px, 6.8vw, 40px); }
  .article-page .contact-large { font-size: 23px; }
}
@media (max-width: 430px) {
  .purchase-experience .order-fields.configuration-fields { grid-template-columns: minmax(0, 1fr); }
  .purchase-experience .quantity-field { max-width: 112px; }
  .purchase-journey { grid-template-columns: 1fr; }
  .purchase-journey > li { flex-direction: row; padding: 12px 16px; font-size: 12px; }
  .purchase-journey > li::before { display: block; content: '→'; width: 15px; }
}
@media (max-width: 350px) {
  :root { --pad: 20px; }
  .site-header { gap: 8px; }
  .brand, .brand img { width: 99px; }
  .header-shop { padding-inline: 10px; font-size: 9px; gap: 6px; }
  .menu-toggle { width: 44px; min-width: 44px; padding-inline: 11px; margin-inline: -6px; }
  .poster-hero { --poster-pad: 20px; }
  .poster-hero .campaign-topline .p-kicker, .poster-hero .campaign-topline .campaign-code { font-size: 7px !important; }
  .poster-hero .poster-copy .campaign-tagline, .poster-hero .poster-copy .campaign-tagline > span { font-size: 34px; }
  .poster-facts .selling-fact strong { font-size: 23px; }
  .poster-hero .poster-copy .campaign-purchase .p-button { padding-inline: 16px; font-size: 12px; }
  .performance-line strong { font-size: 61px; }
  .signature-copy { padding-inline: 20px; }
  .offer-included-grid { grid-template-columns: 1fr; }
  .offer-included-grid > div { display: grid; grid-template-columns: 26px minmax(0, 1fr); gap: 0 14px; padding: 22px 19px !important; }
  .offer-check { grid-row: 1 / 3; margin: 0; }
  .offer-included-grid p { grid-column: 2; margin-top: 7px; }
  .premium-gallery .zoom-button { font-size: 9px; padding-inline: 7px; }
  .premium-gallery .view-counter { font-size: 9px; left: 16px; }
  .purchase-experience { padding-inline: 14px; }
  .purchase-experience .order-product, .purchase-experience .order-form-panel { padding-inline: 19px; }
  .purchase-assurance { grid-template-columns: 1fr; gap: 12px; }
  .purchase-experience .accessory-options { grid-template-columns: 1fr; }
  .purchase-experience .order-final-total b { font-size: 29px; }
  .purchase-experience .order-final-total > div { flex-direction: column; align-items: flex-start; gap: 9px; }
  .purchase-experience .order-final-total span { max-width: none; }
  .purchase-experience .order-step-title { font-size: 18px; }
  .purchase-experience .order-submit { font-size: 12px; padding-inline: 15px; }
  .review-form-panel { padding-inline: 19px; }
  .review-rating-options { gap: 3px; }
}
@media (prefers-reduced-motion: reduce) {
  .p-button-red, .header-shop, .button.red, .p-text-link > span,
  .battery-choice, .purchase-experience .accessory-option,
  .purchase-experience .delivery-option, .viewer-image-wrap.is-view-changing { transition: none; animation: none; }
  .atelier-stage, .atelier-product { transform: none; transition: none; }
}
