/**
 * Copyright (c) 2026 DNA Genics, S.L. All rights reserved.
 *
 * Shared editorial product landing components. Opt in with .product-landing.
 */

.product-landing { --ink:#142027;
      --deep:#121b20;
      --deep2:#1a262c;
      --paper:#f5f2eb;
      --white:#fffdf8;
      --line:#cfcac0;
      --line-dark:#3a484c;
      --muted:#586167;
      --muted-light:#b5c0c1;
      --gold:#d5a96e;
      --gold-dark:#79562b;
      --width:1320px;
      --sans: "Helvetica Neue", Helvetica, Arial, sans-serif;
      --serif: Georgia, "Times New Roman", serif;
      --mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace; }
.product-landing * { box-sizing:border-box }
.product-landing *::before { box-sizing:border-box }
.product-landing *::after { box-sizing:border-box }
.product-landing { margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased }
.product-landing a { color:inherit }
.product-landing button { font:inherit }
/* Decorative image icons must never expand to their intrinsic SVG dimensions. */
.product-landing img[src*="/img/icons/"] { width:20px;height:20px;max-width:100%;object-fit:contain;flex-shrink:0;vertical-align:middle }
.product-landing button { -webkit-tap-highlight-color:transparent }
.product-landing a { -webkit-tap-highlight-color:transparent }
.product-landing :focus-visible { outline:3px solid #9d6630;outline-offset:4px }
.product-landing .pl-wrap { width:min(calc(100% - 92px),var(--width));margin-inline:auto }
.product-landing .pl-sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0 }
.product-landing .pl-eyebrow { font-size:11px;font-weight:750;letter-spacing:.19em;text-transform:uppercase;line-height:1.6 }
.product-landing .pl-eyebrow .pl-accent { color:var(--gold-dark) }
.product-landing h1 { color: inherit; }
.product-landing h2 { color: inherit; }
.product-landing h3 { color: inherit; }
.product-landing .pl-serif { font-family:var(--serif);font-weight:normal;letter-spacing:-.045em }
.product-landing .pl-hero { background:var(--deep);color:var(--white);position:relative;overflow:hidden }
.product-landing .pl-hero::after { content:"";display:block;position:absolute;bottom:0;left:0;right:0;height:5px;background:var(--gold) }
.product-landing .pl-hero-inner { display:grid;grid-template-columns: minmax(0,1.03fr) minmax(400px,.87fr);column-gap:clamp(40px,7vw,115px);align-items:center;padding-top:102px;padding-bottom:119px }
.product-landing .pl-hero .pl-eyebrow { color:var(--gold);margin-bottom:29px }
.product-landing .pl-hero h1 { font-size:clamp(62px,5.9vw,90px);line-height:.99;margin:0 0 33px;max-width:780px;letter-spacing:-.062em }
.product-landing .pl-hero h1 em { font-style:normal;color:var(--gold) }
.product-landing .pl-hero-lede { max-width:630px;font-size:19px;line-height:1.7;letter-spacing:-.012em;color:#d1d7d6;margin:0 }
.product-landing .pl-hero-lede strong { font-weight:750;color:var(--white) }
.product-landing .pl-hero .pl-inline-note { color:var(--muted-light) }
.product-landing .pl-hero-action { margin-top:34px;display:flex;align-items:center;gap:23px;flex-wrap:wrap }
.product-landing .pl-btn { display:inline-flex;align-items:center;justify-content:space-between;gap:34px;text-decoration:none;padding:18px 23px;border:1px solid transparent;min-height:59px;white-space:nowrap;font-weight:750;font-size:15px;cursor:pointer;transition:background .18s,color .18s,transform .18s }
.product-landing .pl-btn:hover { transform:translateY(-2px) }
.product-landing .pl-btn-primary { background:var(--gold);color:#121b20 }
.product-landing .pl-btn-primary:hover { background:#e4bd88 }
.product-landing .pl-btn-secondary { background:transparent;color:var(--white);border-color:#667378 }
.product-landing .pl-btn-secondary:hover { border-color:var(--gold) }
.product-landing .pl-hero-price { display:flex;flex-direction:column;gap:5px }
.product-landing .pl-hero-price strong { font-family:var(--serif);font-size:30px;font-weight:400;line-height:1 }
.product-landing .pl-hero-price small { font-size:12px;color:#b9c3c5 }
.product-landing .pl-hero-beneath { margin-top:56px;border-top:1px solid #39464b;display:grid;grid-template-columns:repeat(3,1fr);gap:25px;max-width:605px;padding-top:21px }
.product-landing .pl-hero-beneath strong { font-size:22px;font-family:var(--serif);font-weight:400;color:var(--gold);display:block;line-height:1.2 }
.product-landing .pl-hero-beneath span { font-size:11px;color:#b1bdbf;letter-spacing:.02em;line-height:1.6;display:block;margin-top:5px }
.product-landing .pl-section { padding:111px 0;background:var(--paper);color:var(--ink) }
.product-landing .pl-section-header { display:grid;grid-template-columns:190px minmax(0,1fr);gap:32px;margin-bottom:59px }
.product-landing .pl-section-no { font:normal 58px/1 var(--serif);letter-spacing:-.065em;color:var(--gold-dark);padding-top:4px }
.product-landing .pl-section-heading .pl-eyebrow { color:var(--gold-dark);margin:0 0 17px }
.product-landing .pl-section-heading h2 { font:normal clamp(42px,4.1vw,62px)/1.09 var(--serif);letter-spacing:-.055em;max-width:780px;margin:0 }
.product-landing .pl-section-heading p { max-width:790px;font-size:18px;line-height:1.7;color:#49565c;margin:22px 0 0 }
.product-landing .pl-package-layout { display:grid;grid-template-columns: minmax(0,1fr) minmax(330px,.83fr);border-top:1px solid #c7c4ba;border-bottom:1px solid #c7c4ba }
.product-landing .pl-package-list { padding-right:65px }
.product-landing .pl-package-item { display:grid;grid-template-columns:50px 1fr;gap:14px;padding:27px 0;border-bottom:1px solid #d2cfc5 }
.product-landing .pl-package-item:last-child { border-bottom:none }
.product-landing .pl-package-index { font:12px/1.6 var(--mono);color:var(--gold-dark);padding-top:4px }
.product-landing .pl-package-item h3 { margin:0 0 9px;font:normal 27px/1.12 var(--serif);letter-spacing:-.03em }
.product-landing .pl-package-item p { margin:0;color:#526067;line-height:1.65;font-size:14px;max-width:520px }
.product-landing .pl-package-item code { display:inline-block;margin-top:10px;color:#865f30;font:12px/1.6 var(--mono);word-break:break-word }
.product-landing .pl-package-aside { background:#e9e5dc;border-left:1px solid #c7c4ba;padding:42px 39px }
.product-landing .pl-package-aside .pl-eyebrow { color:#786244;margin-bottom:33px }
.product-landing .pl-package-aside .pl-big-number { font:normal 132px/.85 var(--serif);letter-spacing:-.095em }
.product-landing .pl-package-aside .pl-big-number span { font:13px/1.3 var(--mono);letter-spacing:.07em;display:block;margin-top:20px;color:#596263;text-transform:uppercase }
.product-landing .pl-package-aside .pl-rule { height:1px;background:#bfb7aa;margin:37px 0 26px }
.product-landing .pl-package-aside p { font:normal 25px/1.32 var(--serif);letter-spacing:-.024em;margin:0 0 20px;max-width:345px }
.product-landing .pl-package-aside small { color:#5b6668;font-size:12px;line-height:1.65;display:block;max-width:370px }
.product-landing .pl-usage { background:#e9e6de;border-top:1px solid #d3cec3;border-bottom:1px solid #d3cec3 }
.product-landing .pl-comparison { display:grid;grid-template-columns:1fr 1fr;border:1px solid #bbbdb8 }
.product-landing .pl-comparison article { padding:44px 45px 48px }
.product-landing .pl-comparison article+article { border-left:1px solid #bbbdb8 }
.product-landing .pl-comparison .pl-eyebrow { color:#84613c;margin-bottom:30px }
.product-landing .pl-comparison h3 { font:normal 32px/1.12 var(--serif);letter-spacing:-.04em;margin:0 0 21px }
.product-landing .pl-comparison ul { list-style:none;margin:0;padding:0 }
.product-landing .pl-comparison li { font-size:15px;line-height:1.55;padding:12px 0 12px 25px;border-top:1px solid #c9c8c1;position:relative }
.product-landing .pl-comparison li::before { content:"+";position:absolute;top:11px;left:0;font:20px/1 var(--serif);color:#806039 }
.product-landing .pl-comparison .pl-not li::before { content:"—";font:14px/1.7 var(--sans) }
.product-landing .pl-interpret-note { padding:20px 24px;background:#d9d5cc;border-left:3px solid var(--gold-dark);font-size:13px;line-height:1.7;color:#4b5558;margin-top:23px }
.product-landing .pl-interpret-note b { color:var(--ink) }
.product-landing .pl-steps { display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid #c7c4ba;border-bottom:1px solid #c7c4ba }
.product-landing .pl-step { padding:33px 36px 40px;border-right:1px solid #c7c4ba }
.product-landing .pl-step:first-child { padding-left:0 }
.product-landing .pl-step:last-child { border-right:0;padding-right:0 }
.product-landing .pl-step .pl-step-no { font:normal 49px/1 var(--serif);color:var(--gold-dark);margin-bottom:42px;display:block }
.product-landing .pl-step h3 { font:normal 29px/1.15 var(--serif);letter-spacing:-.035em;margin:0 0 13px }
.product-landing .pl-step p { font-size:14px;line-height:1.75;color:#566268;max-width:330px;margin:0 }
.product-landing .pl-file-types { display:grid;grid-template-columns:190px 1fr;gap:32px;margin-top:40px;align-items:start }
.product-landing .pl-file-types h3 { margin:0;color:#735734;font-size:12px;line-height:1.65;text-transform:uppercase;letter-spacing:.13em }
.product-landing .pl-providers { display:flex;flex-wrap:wrap;gap:10px }
.product-landing .pl-providers span { display:inline-block;padding:10px 13px;border:1px solid #bbbfb8;font-size:12px;font-weight:650;white-space:nowrap }
.product-landing .pl-file-types p { color:#5b6467;font-size:12px;line-height:1.65;margin:17px 0 0;max-width:850px }
.product-landing .pl-limits { background:var(--deep);color:var(--white) }
.product-landing .pl-limits .pl-section-heading p { color:#c2cbca }
.product-landing .pl-limits .pl-section-no { color:var(--gold) }
.product-landing .pl-limits .pl-step-no { color:var(--gold) }
.product-landing .pl-limits .pl-section-heading .pl-eyebrow { color:var(--gold) }
.product-landing .pl-limits-grid { display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #495457;border-bottom:1px solid #495457 }
.product-landing .pl-limit { padding:32px 35px 33px 0;border-right:1px solid #495457 }
.product-landing .pl-limit+ .pl-limit { padding-left:35px }
.product-landing .pl-limit:last-child { border-right:0 }
.product-landing .pl-limit h3 { font:normal 28px/1.16 var(--serif);letter-spacing:-.035em;margin:0 0 12px;color:var(--white) }
.product-landing .pl-limit p { font-size:14px;line-height:1.7;margin:0;color:#bfc8c8 }
.product-landing .pl-limits-outro { margin:30px 0 0;font-size:13px;color:#b5bdbe;line-height:1.65;max-width:860px }
.product-landing .pl-purchase { padding-top:106px;padding-bottom:100px }
.product-landing .pl-purchase-layout { display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start }
.product-landing .pl-purchase-copy { padding-top:25px }
.product-landing .pl-purchase-copy .pl-eyebrow { color:var(--gold-dark);margin-bottom:18px }
.product-landing .pl-purchase-copy h2 { font:normal clamp(45px,4.2vw,65px)/1.07 var(--serif);letter-spacing:-.05em;margin:0 0 25px }
.product-landing .pl-purchase-copy p { font-size:17px;line-height:1.68;color:#546065;max-width:460px;margin:0 }
.product-landing .pl-purchase-copy a { display:inline-block;margin-top:22px;text-decoration:underline;text-underline-offset:4px;font-size:13px;font-weight:700 }
.product-landing .pl-order-card { border:1px solid #7e745f;background:var(--white);box-shadow:8px 8px 0 #d2c8b8 }
.product-landing .pl-order-top { display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d6cfc1;padding:23px 30px;gap:15px }
.product-landing .pl-order-top .pl-eyebrow { color:#8b6d44 }
.product-landing .pl-order-top span { font:11px var(--mono);color:#5e6668 }
.product-landing .pl-order-body { padding:29px 30px 32px }
.product-landing .pl-order-name { font:normal 32px/1.2 var(--serif);letter-spacing:-.04em;margin:0 0 3px }
.product-landing .pl-order-caption { font-size:13px;color:#657070 }
.product-landing .pl-order-price { font:normal 74px/1 var(--serif);letter-spacing:-.065em;margin:21px 0 14px }
.product-landing .pl-order-price span { font:12px var(--sans);letter-spacing:0;color:#5d6665;margin-left:14px;vertical-align:middle }
.product-landing .pl-order-includes { padding:12px 0 20px;margin:0;list-style:none;border-top:1px solid #d6cfc1 }
.product-landing .pl-order-includes li { font-size:14px;padding:9px 0 9px 24px;line-height:1.4;position:relative }
.product-landing .pl-order-includes li::before { content:"✓";position:absolute;left:0;color:#856136;font-weight:800 }
.product-landing .pl-order-card .pl-btn { width:100%;justify-content:space-between }
.product-landing .pl-order-footnote { font-size:11px;line-height:1.65;color:#586167;text-align:center;margin:14px 0 0 }
.product-landing .pl-faq-section { background:#e9e6de;padding-top:100px;padding-bottom:110px;border-top:1px solid #d6d0c5 }
.product-landing .pl-faq-layout { display:grid;grid-template-columns: .5fr 1fr;gap:90px }
.product-landing .pl-faq-intro .pl-eyebrow { color:var(--gold-dark);margin-bottom:18px }
.product-landing .pl-faq-intro h2 { font:normal clamp(42px,4vw,58px)/1.07 var(--serif);letter-spacing:-.05em;margin:0 }
.product-landing .pl-faq-list { border-top:1px solid #bdbeb8 }
.product-landing .pl-faq-list details { border-bottom:1px solid #bdbeb8 }
.product-landing .pl-faq-list summary { list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer;gap:20px;padding:23px 3px;font-size:15px;line-height:1.45;font-weight:750 }
.product-landing .pl-faq-list summary::-webkit-details-marker { display:none }
.product-landing .pl-faq-list summary .pl-plus { color:#866136;font-size:26px;line-height:1;font-weight:400;transition:transform .2s }
.product-landing .pl-faq-list details[open] .pl-plus { transform:rotate(45deg) }
.product-landing .pl-faq-list details p { font-size:14px;line-height:1.75;color:#526063;max-width:710px;margin:0;padding:0 50px 23px 3px }
.product-landing .pl-mobile-buy { display:none }
@media (max-width:1080px) {
.product-landing .pl-wrap { width:min(calc(100% - 64px),var(--width)) }
.product-landing .pl-hero-inner { grid-template-columns:1fr 420px;gap:44px }
.product-landing .pl-hero h1 { font-size:64px }
.product-landing .pl-hero-lede { font-size:17px }
.product-landing .pl-section-header { grid-template-columns:120px 1fr }
.product-landing .pl-file-types { grid-template-columns:120px 1fr }
.product-landing .pl-purchase-layout { gap:35px }
}
@media (max-width:850px) {
.product-landing .pl-hero-inner { grid-template-columns:1fr;padding-top:75px;padding-bottom:96px;gap:52px }
.product-landing .pl-hero h1 { font-size:clamp(54px,9vw,75px);max-width:720px }
.product-landing .pl-hero-lede { max-width:680px }
.product-landing .pl-hero-beneath { max-width:600px }
.product-landing .pl-package-layout { grid-template-columns:1fr }
.product-landing .pl-package-list { padding:0 16px }
.product-landing .pl-package-aside { border-top:1px solid #c7c4ba;border-left:0;display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:center }
.product-landing .pl-package-aside .pl-eyebrow { grid-column:1/-1;margin:0 }
.product-landing .pl-package-aside .pl-rule { display:none }
.product-landing .pl-package-aside .pl-big-number { font-size:100px }
.product-landing .pl-package-aside p { font-size:24px }
.product-landing .pl-package-aside small { grid-column:2 }
.product-landing .pl-section { padding:84px 0 }
.product-landing .pl-section-header { margin-bottom:40px }
.product-landing .pl-section-heading h2 { font-size:50px }
.product-landing .pl-section-heading p { font-size:16px }
.product-landing .pl-comparison article { padding:34px 27px }
.product-landing .pl-steps { grid-template-columns:1fr }
.product-landing .pl-step { padding:25px 0 28px;border-bottom:1px solid #c7c4ba;border-right:0;display:grid;grid-template-columns:80px 1fr;column-gap:20px }
.product-landing .pl-step:first-child { padding:25px 0 28px;border-bottom:1px solid #c7c4ba;border-right:0;display:grid;grid-template-columns:80px 1fr;column-gap:20px }
.product-landing .pl-step:last-child { padding:25px 0 28px;border-bottom:1px solid #c7c4ba;border-right:0;display:grid;grid-template-columns:80px 1fr;column-gap:20px }
.product-landing .pl-step:last-child { border-bottom:0 }
.product-landing .pl-step .pl-step-no { grid-row:1/3;margin:0 }
.product-landing .pl-step p { max-width:none }
.product-landing .pl-limits-grid { grid-template-columns:1fr }
.product-landing .pl-limit { padding:25px 0;border-right:0;border-bottom:1px solid #495457 }
.product-landing .pl-limit+.pl-limit { padding:25px 0;border-right:0;border-bottom:1px solid #495457 }
.product-landing .pl-limit:last-child { border-bottom:0 }
.product-landing .pl-purchase-layout { grid-template-columns:1fr;gap:32px }
.product-landing .pl-purchase-copy { padding-top:0 }
.product-landing .pl-order-card { max-width:620px }
.product-landing .pl-faq-layout { grid-template-columns:1fr;gap:35px }
}
@media (max-width:580px) {
.product-landing .pl-wrap { width:calc(100% - 38px) }
.product-landing .pl-hero-inner { padding-top:55px;padding-bottom:73px;gap:42px }
.product-landing .pl-hero .pl-eyebrow { font-size:10px;margin-bottom:19px }
.product-landing .pl-hero h1 { font-size:clamp(47px,12vw,64px);margin-bottom:23px;line-height:1.025 }
.product-landing .pl-hero-lede { font-size:16px;line-height:1.6 }
.product-landing .pl-hero-action { margin-top:26px;gap:16px }
.product-landing .pl-hero-action .pl-btn { flex:1 0 100%;justify-content:space-between }
.product-landing .pl-hero-price { flex-direction:row;align-items:center;gap:11px }
.product-landing .pl-hero-price strong { font-size:25px }
.product-landing .pl-hero-beneath { margin-top:37px;gap:8px;padding-top:17px }
.product-landing .pl-hero-beneath strong { font-size:21px }
.product-landing .pl-hero-beneath span { font-size:10px }
.product-landing .pl-section { padding:70px 0 }
.product-landing .pl-section-header { display:block;margin-bottom:30px }
.product-landing .pl-section-no { font-size:42px;margin-bottom:22px }
.product-landing .pl-section-heading .pl-eyebrow { font-size:10px;margin-bottom:13px }
.product-landing .pl-section-heading h2 { font-size:clamp(37px,10vw,50px) }
.product-landing .pl-section-heading p { font-size:15px;line-height:1.65;margin-top:16px }
.product-landing .pl-package-item { grid-template-columns:33px 1fr;gap:7px;padding:24px 0 }
.product-landing .pl-package-item h3 { font-size:25px }
.product-landing .pl-package-aside { padding:28px 23px;grid-template-columns:1fr;gap:13px }
.product-landing .pl-package-aside .pl-eyebrow { grid-column:auto }
.product-landing .pl-package-aside .pl-big-number { font-size:100px }
.product-landing .pl-package-aside .pl-big-number span { margin-top:9px }
.product-landing .pl-package-aside small { grid-column:auto }
.product-landing .pl-package-aside p { margin:10px 0 0 }
.product-landing .pl-comparison { grid-template-columns:1fr }
.product-landing .pl-comparison article { padding:28px 23px }
.product-landing .pl-comparison article+article { border-left:0;border-top:1px solid #bbbdb8 }
.product-landing .pl-comparison h3 { font-size:27px }
.product-landing .pl-comparison .pl-eyebrow { margin-bottom:17px }
.product-landing .pl-file-types { display:block;margin-top:32px }
.product-landing .pl-file-types h3 { margin-bottom:15px }
.product-landing .pl-providers { gap:7px }
.product-landing .pl-providers span { padding:9px 11px;font-size:11px }
.product-landing .pl-step { grid-template-columns:53px 1fr;column-gap:13px }
.product-landing .pl-step:first-child { grid-template-columns:53px 1fr;column-gap:13px }
.product-landing .pl-step:last-child { grid-template-columns:53px 1fr;column-gap:13px }
.product-landing .pl-step .pl-step-no { font-size:38px }
.product-landing .pl-step h3 { font-size:26px }
.product-landing .pl-limit h3 { font-size:26px }
.product-landing .pl-purchase-copy h2 { font-size:46px }
.product-landing .pl-purchase-copy p { font-size:15px }
.product-landing .pl-order-top { padding:17px 18px }
.product-landing .pl-order-body { padding:23px 18px 25px }
.product-landing .pl-order-name { font-size:28px }
.product-landing .pl-order-price { font-size:65px }
.product-landing .pl-order-price span { font-size:11px }
.product-landing .pl-order-card .pl-btn { font-size:14px;gap:12px }
.product-landing .pl-faq-section { padding-bottom:91px }
.product-landing .pl-faq-intro h2 { font-size:44px }
.product-landing .pl-faq-list summary { font-size:14px;padding:21px 0 }
.product-landing .pl-mobile-buy { position:fixed;bottom:0;left:0;right:0;background:#121b20;border-top:1px solid #5e6260;z-index:30;color:#f7f1e7;display:flex;gap:14px;padding:10px 18px calc(10px + env(safe-area-inset-bottom));align-items:center;justify-content:space-between }
.product-landing .pl-mobile-buy span { display:flex;flex-direction:column;gap:3px;white-space:nowrap }
.product-landing .pl-mobile-buy strong { font:normal 25px/.9 var(--serif);color:var(--gold) }
.product-landing .pl-mobile-buy small { font-size:10px;color:#c3c9ca }
.product-landing .pl-mobile-buy .pl-btn { min-height:43px;padding:12px 14px;gap:13px;font-size:12px;white-space:nowrap }
}
@media (prefers-reduced-motion:reduce) {
.product-landing .pl-btn { transition:none }
.product-landing .pl-faq-list summary .pl-plus { transition:none }
}
.product-landing { padding-top: calc(var(--nav-height, 72px) + 8px); background: var(--deep); }
.product-landing .pl-hero-inner { padding-top: 42px; }
.product-landing [id] { scroll-margin-top: calc(var(--nav-height, 72px) + 16px); }
.product-landing .pl-section-nav { background: var(--deep); color: var(--white); border-top: 1px solid var(--line-dark); }
.product-landing .pl-section-nav .pl-wrap { display: flex; flex-wrap: wrap; gap: 12px 28px; padding-block: 18px; }
.product-landing .pl-section-nav a { font-size: 13px; text-decoration: none; padding-block: 4px; }
.product-landing .pl-section-nav a:hover { color: var(--gold); }
.product-landing .pl-skip-link { position: absolute; left: 12px; top: -200px; z-index: 1040; padding: 12px; background: var(--white); color: var(--ink); }
.product-landing .pl-skip-link:focus { top: calc(var(--nav-height, 72px) + 8px); }
.product-landing .pl-discount-notice { color: var(--gold); display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }
.product-landing .pl-order-price > span { font: inherit; color: inherit; }
.product-landing .pl-order-price > small { display: block; font: 12px/1.5 var(--sans); margin-top: 8px; }
.product-landing .pl-price-unavailable { font: 600 16px/1.5 var(--sans); }
.product-landing .price-unavailable { font: 600 16px/1.5 var(--sans); }
.product-landing .pl-order-price > .pl-price-unavailable { font: 600 18px/1.5 var(--sans); }
.product-landing .pl-mobile-price { display: flex; flex-direction: column; gap: 4px; color: var(--gold); font: 25px/1.1 var(--serif); }
.product-landing .pl-mobile-price small { color: var(--muted-light); font: 10px/1.4 var(--sans); }
.product-landing .pl-mobile-buy { z-index: 1020; }
.product-landing .pl-mobile-buy .pl-btn span { display: inline; }
.product-landing .pl-comparison article > p { font-size: 14px; line-height: 1.7; margin: 22px 0 0; }
.product-landing .pl-hero-copy { min-width: 0; }
.product-landing .pl-btn { white-space: normal; }
.product-landing .pl-related-products { padding-block: 60px; }
.product-landing .pl-related-title { font: 36px/1.2 var(--serif); margin-bottom: 28px; color: var(--ink); }
.product-landing .pl-related-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px; }
.product-landing .pl-related-card { border-top: 1px solid var(--line); }
.product-landing .pl-related-img { width: 100%; height: 180px; object-fit: cover; margin-top: 20px; }
.product-landing .pl-related-content { padding-top: 20px; }
.product-landing .pl-related-content h4 { font: 26px/1.25 var(--serif); color: var(--ink); }
.product-landing .pl-related-content p { font-size: 14px; line-height: 1.7; color: var(--muted); }
.product-landing .pl-related-link { font-size: 14px; font-weight: 700; text-underline-offset: 4px; }
@media (max-width: 1080px) and (min-width: 851px) {
.product-landing .pl-hero-inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; }
.product-landing .pl-hero h1 { font-size: 56px; }
}
@media (max-width: 580px) {
.product-landing .pl-hero-inner { padding-top: 28px; }
.product-landing .pl-hero h1 { font-size: clamp(42px, 11vw, 62px); }
.product-landing .pl-mobile-buy { gap: 8px; padding-inline: 12px; }
.product-landing .pl-related-grid { grid-template-columns: 1fr; }
.product-landing .pl-mobile-price .price-unavailable { max-width: 125px; font-size: 12px; }
body:has(.product-landing) { padding-bottom: calc(88px + env(safe-area-inset-bottom)); }
}
@media print {
.product-landing { padding: 0; }
.product-landing .pl-mobile-buy { display: none; }
.product-landing .pl-section-nav { display: none; }
.product-landing .pl-skip-link { display: none; }
}
.product-landing > main { background: var(--paper); }
.product-landing .pl-order-price > span { margin-left: 0; vertical-align: baseline; }

/* Additional reusable components for products with a larger feature catalog. */
.product-landing .pl-feature-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 48px; border-top: 1px solid var(--line); }
.product-landing .pl-feature { padding: 28px 0; border-bottom: 1px solid var(--line); min-width: 0; }
.product-landing .pl-feature h3 { font: 28px/1.2 var(--serif); margin: 0 0 14px; }
.product-landing .pl-feature p, .product-landing .pl-feature li { font-size: 15px; line-height: 1.7; color: var(--muted); }
.product-landing .pl-feature ul { padding-left: 20px; margin: 0; }
.product-landing .pl-feature a { text-underline-offset: 4px; }
.product-landing .pl-badge { display: inline-block; border: 1px solid var(--gold-dark); padding: 4px 7px; color: #79562b; font: 700 10px/1.4 var(--sans); vertical-align: middle; letter-spacing: .08em; }
.product-landing .pl-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.product-landing .pl-gallery figure { margin: 0; background: var(--white); border: 1px solid var(--line); min-width: 0; }
.product-landing .pl-gallery img { display: block; width: 100%; aspect-ratio: 16 / 10; object-fit: contain; background: #e9e5dc; }
.product-landing .pl-gallery figcaption { padding: 16px 20px; font: 14px/1.6 var(--sans); color: var(--muted); }
.product-landing .pl-gallery figcaption strong { display: block; color: var(--ink); }
.product-landing .pl-media-frame { min-width: 0; margin: 0; border: 1px solid #dbc7a7; background: var(--white); color: var(--ink); box-shadow: 12px 12px 0 #273238; }
.product-landing .pl-media-frame img { display: block; width: 100%; height: auto; }
.product-landing .pl-media-frame figcaption { padding: 18px 22px; font: 12px/1.6 var(--mono); }
.product-landing .pl-inline-note { margin: 28px 0 0; font-size: 14px; line-height: 1.7; }
.product-landing .pl-btn-outline { color: var(--ink); border-color: #7e745f; background: transparent; }
.product-landing .pl-btn-outline:hover { background: #e9e5dc; }
.product-landing .pl-offer-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 30px; margin-top: 35px; }
.product-landing .pl-offer-grid .pl-order-card { display: flex; flex-direction: column; min-width: 0; }
.product-landing .pl-offer-grid .pl-order-body { display: flex; flex-direction: column; flex: 1; }
.product-landing .pl-offer-grid .pl-order-includes { flex: 1; }
.product-landing .pl-standard-access { display: flex; align-items: center; justify-content: space-between; gap: 30px; border-block: 1px solid var(--line); padding-block: 30px; }
.product-landing .pl-standard-access h3 { font: 32px/1.2 var(--serif); margin: 0 0 12px; }
.product-landing .pl-standard-access p { margin: 0; max-width: 740px; color: var(--muted); font-size: 15px; line-height: 1.7; }
@media (max-width: 850px) {
    .product-landing .pl-feature-grid { gap: 0 28px; }
    .product-landing .pl-standard-access { align-items: flex-start; flex-direction: column; }
    .product-landing .pl-offer-grid { grid-template-columns: 1fr; }
    .product-landing .pl-offer-grid .pl-order-card { max-width: none; }
}
@media (max-width: 580px) {
    .product-landing .pl-feature-grid, .product-landing .pl-gallery { grid-template-columns: 1fr; }
    .product-landing .pl-media-frame { box-shadow: 6px 6px 0 #273238; }
}
