/* One product, one visual story. */
:root{--motion-ease:cubic-bezier(.2,.65,.25,1)}
.product-hero{box-shadow:0 22px 65px #161d2910}.product-hero h1{font-size:clamp(2.1rem,2.85vw,3rem);line-height:1.12;letter-spacing:-.035em}.keep-together{white-space:nowrap}.product-copy{padding:40px 30px}.product-hero .eyebrow{letter-spacing:.06em;line-height:1.5}.art-stage{height:510px}.art-fact .hero-fact strong{font-size:3rem}.art-fact .hero-fact strong.phrase-fact{font-size:clamp(1.65rem,2.6vw,2.35rem);line-height:1.2;max-width:400px}.scene-brand strong{font-weight:700;letter-spacing:-.035em}.scene-youth .card-parallax{top:19%;height:31%;left:21%;width:58%}.scene-black .card-parallax,.scene-foreign .card-parallax{top:25%;height:36%;left:15%;width:70%}.art-stage.scene-drive .card-parallax,.art-stage.scene-travel .card-parallax{top:22%;left:14%;width:72%;height:36%}.tile-scene.scene-youth .card-parallax{top:15%;height:34%;left:22%;width:56%}
.scene-image{transition:transform 1.2s var(--motion-ease)}.art-stage .scene-image{animation:scene-breathe 18s ease-in-out infinite alternate}.scene-travel .scene-image{animation-name:scene-travel}.scene-drive .scene-image{animation-name:scene-drive}.scene-youth .scene-image{animation-duration:12s}.scene-light{position:absolute;inset:-20%;z-index:1;pointer-events:none;background:linear-gradient(115deg,transparent 35%,#ffffff16 47%,transparent 60%);transform:translateX(-50%);animation:scene-light 12s ease-in-out infinite}.scene-drive .scene-light{background:linear-gradient(110deg,transparent 35%,#ffb47120 48%,transparent 62%)}.scene-youth .scene-light{background:linear-gradient(115deg,transparent 32%,#d5f57320 48%,transparent 64%);animation-duration:9s}.scene-brand,.motion-toggle,.scene-caption{z-index:3}.card-parallax{z-index:2}.motion-toggle{min-width:44px;min-height:44px;right:16px;top:18px}.motion-paused *, .motion-offscreen *, .motion-document-hidden .art-stage *{animation-play-state:paused!important}.motion-document-hidden .card-parallax{transform:none!important}
.catalog-hero{padding:34px 38px}.catalog-hero h1{font-size:clamp(2.5rem,3.8vw,3.7rem);margin:16px 0;line-height:1.08}.catalog-hero>p:not(.eyebrow){font-size:1rem;max-width:780px}.catalog-jumps{margin-top:22px}.catalog-hero+.product-section{padding-top:36px}.catalog-grid .tile-scene{height:300px}.tile-scene.credit-scene{display:grid;place-items:center;background:radial-gradient(ellipse at 50% 70%,#e4bc74,#f1e9d8 70%)}.catalog-grid .product-tile .credit-scene img{width:100%;height:100%;object-fit:cover;margin:0;mix-blend-mode:multiply;transition:transform .8s var(--motion-ease)}.product-tile:hover .scene-image,.product-tile:focus-visible .scene-image,.product-tile:hover .credit-scene img{transform:scale(1.04)}.product-tile:focus-visible{outline:3px solid #806300;outline-offset:4px}.comparison tbody tr{transition:background .2s}.comparison tbody tr:hover{background:#f5f2e8}.comparison td:nth-child(2){font-weight:700}.comparison th a{text-underline-offset:4px}
.story-section{padding:60px 0}.story-heading h2{max-width:680px}.story-layout{display:grid;grid-template-columns:.95fr 1.05fr;gap:28px;align-items:stretch}.story-picture{position:relative;margin:0;min-height:430px;border-radius:24px;overflow:hidden;background:#19222e}.story-picture img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.story-picture:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#11192595,transparent 55%,#0d142160)}.story-picture figcaption{position:absolute;top:28px;left:28px;right:28px;z-index:1;color:#fff;font-size:2.2rem;font-weight:700;letter-spacing:-.04em;text-shadow:0 2px 10px #0006}.story-picture figcaption span{display:block;font-size:1rem;font-weight:400;letter-spacing:0;margin-top:10px}.story-steps{display:grid;gap:14px;align-content:center}.story-steps article{display:grid;grid-template-columns:44px 1fr;gap:18px;padding:24px;background:var(--tint,#f1eada);border:1px solid #1925350b;border-radius:20px;position:relative}.story-index{font-size:.875rem;width:40px;height:40px;display:grid;place-items:center;background:var(--deep,#25221d);color:#fff;border-radius:50%}.story-steps h3{font-size:1.2rem;line-height:1.3;margin:5px 0 10px;letter-spacing:-.015em}.story-steps p{font-size:1rem;color:#4d5663;line-height:1.65;margin:0}.story-youth .story-layout{grid-template-columns:1.05fr .95fr}.story-youth .story-steps article:nth-child(2){background:#e7eeca}.story-drive .story-picture{border-bottom:5px solid #ffa65c}.story-foreign .story-picture{border-bottom:5px solid #86bf9a}.story-travel .story-picture{border-bottom:5px solid #90c9f7}
.document-section{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:36px!important;margin-top:40px;background:#e1eee5;border-radius:24px}.document-section>div>p{font-size:1rem;line-height:1.7}.document-list{padding:0;margin:0;list-style:none;display:grid;gap:14px}.document-list li{display:flex;gap:18px;padding:20px;background:#ffffffa0;border-radius:16px}.document-list li>span{font-size:.875rem;color:#426950;padding-top:4px}.document-list h3{font-size:1.1rem;margin:0 0 8px}.document-list p{font-size:1rem;line-height:1.55;margin:0;color:#4b6152}
.credit-atmosphere{position:relative;border-radius:18px;overflow:hidden;min-height:190px;background:radial-gradient(ellipse at 50% 90%,#f5c679,#f1e9d8 70%);margin:24px 0 0}.credit-atmosphere img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 55%;mix-blend-mode:multiply}.credit-atmosphere>span{position:absolute;bottom:16px;left:18px;right:18px;font-size:.875rem;color:#27231d;font-weight:700;background:#fff9;padding:9px 12px;border-radius:8px}.hero .credit-atmosphere{grid-column:1/-1}.cost-section .terms-grid article:nth-child(2n){background:#f1eee6}.cost-section .terms-grid h3{font-size:1.25rem}.cost-section .terms-grid article{border-top:3px solid #c1a464}.application-steps li{position:relative;border-top-color:var(--deep,#343c45)}.product-faq summary,.faq summary{transition:color .2s}.product-faq details[open],.faq details[open]{border-color:#8c9095}.product-faq details[open] summary{color:var(--deep,#30343b)}.product-closing{position:relative;overflow:hidden}.product-closing:before{content:'';position:absolute;right:-130px;top:-170px;width:420px;height:420px;border:1px solid #ffffff70;border-radius:50%;pointer-events:none}.button{transition:background .2s,box-shadow .2s,transform .2s}.button:not([aria-disabled=true]):hover{transform:translateY(-2px);box-shadow:0 7px 22px #10151d20}.button:active:not([aria-disabled=true]){transform:translateY(0)}
[data-reveal]{opacity:1;transform:none}.reveal-ready{opacity:0;transform:translateY(18px);transition:opacity .6s var(--motion-ease),transform .6s var(--motion-ease)}.reveal-ready.is-visible{opacity:1;transform:none}.result-updated{animation:result-update .35s ease-out}
@keyframes scene-breathe{from{transform:scale(1.01)}to{transform:scale(1.055) translateY(-3px)}}@keyframes scene-travel{from{transform:scale(1.05) translateX(-5px)}to{transform:scale(1.05) translateX(5px)}}@keyframes scene-drive{from{transform:scale(1.01)}to{transform:scale(1.045) translateY(3px)}}@keyframes scene-light{0%,25%{transform:translateX(-55%);opacity:0}40%{opacity:1}75%,100%{transform:translateX(55%);opacity:0}}@keyframes result-update{from{transform:translateY(3px);opacity:.65}to{transform:none;opacity:1}}
@media(max-width:1050px){.product-nav{background:#f5f4f1!important;border:1px solid #dedfdf;border-radius:12px;padding:6px;box-shadow:0 7px 18px #15213009;top:8px;z-index:20}.product-nav nav a{font-size:.875rem;min-height:44px}.product-nav nav a[aria-current=page]{box-shadow:inset 0 0 0 1px #b3942e}.product-nav nav{scroll-padding-inline:12px}.product-copy{padding:28px 24px}.product-hero h1{font-size:2.25rem}.art-stage{height:465px}section[id]{scroll-margin-top:92px}}
@media(max-width:680px){.product-hero{display:flex;flex-direction:column;padding:0 0 24px}.product-copy{display:contents}.product-copy>.eyebrow{order:0;margin:25px 24px 0}.product-copy>h1{order:1;font-size:2.1rem;line-height:1.12;margin:14px 24px 22px}.product-art.visual-art{order:2}.product-copy>.product-intro{order:3;margin:24px 24px 20px}.product-copy>.button{order:4;width:auto!important;margin:0 24px;justify-content:center}.product-copy>.caption{order:5;margin:12px 24px 0}.product-copy>.hero-price{order:6;margin:18px 24px 0}.product-copy>.hero-links{order:7;margin:18px 24px 0;gap:14px}.art-stage{height:310px}.art-fact{padding:22px 24px}.art-fact .hero-fact strong{font-size:2.5rem}.art-fact .hero-fact strong.phrase-fact{font-size:1.85rem}.art-fact .fact-note{margin-top:10px}.visual-note{font-size:.75rem}.scene-brand{top:18px}.scene-brand strong{font-size:1.45rem}.scene-caption{bottom:15px}.scene-youth .card-parallax{top:23%;height:34%;left:17%;width:66%}.catalog-hero{padding:27px 24px}.catalog-hero h1{font-size:2.25rem}.catalog-hero+.product-section{padding-top:28px}.catalog-grid .tile-scene{height:285px}.story-section{padding:38px 0}.story-layout,.story-youth .story-layout{grid-template-columns:1fr;gap:20px}.story-picture{min-height:280px}.story-picture img{object-position:center 64%}.story-picture figcaption{font-size:1.8rem;top:22px;left:24px}.story-steps article{padding:22px 20px;gap:14px;grid-template-columns:34px 1fr}.story-index{width:32px;height:32px;font-size:.8125rem}.story-steps h3{margin-top:3px}.story-steps p{line-height:1.6}.document-section{grid-template-columns:1fr;padding:25px!important;gap:20px}.document-list li{padding:18px}.credit-atmosphere{min-height:210px}.comparison th,.comparison td{padding:18px}.product-nav{margin-top:0}.story-heading h2{font-size:1.85rem}.product-copy>h1 .keep-together{display:inline-block}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important}.art-stage *,.result-updated{animation:none!important}.reveal-ready{opacity:1!important;transform:none!important;transition:none!important}.scene-image,.button,.credit-scene img{transition:none!important}.product-tile:hover .scene-image{transform:none}}

/* The complete official travel photograph preserves card details without a second product overlay. */
.scene-travel .card-parallax{display:none}.art-stage.scene-travel .scene-image{object-position:50% 65%!important}.scene-travel .scene-shade{background:linear-gradient(180deg,#07101a70,transparent 30%,transparent 78%,#10151b85)}.art-stage.scene-drive .card-parallax{top:15%;left:-12%;width:124%;height:58%}.tile-scene.scene-drive .card-parallax{left:-10%;width:120%;height:65%;top:10%}

.product-hero h1 .keep-together,.product-closing h2 .keep-together{color:inherit;background:none;-webkit-text-fill-color:currentColor}

/* Catalog scenes: contain the official product inside its intended layer. */
.product-tile .tile-scene:is(.scene-drive,.scene-youth) img.official-card{width:100%;height:100%;max-width:none;object-fit:contain;transition:transform .65s var(--motion-ease),filter .65s var(--motion-ease)}
.tile-scene.scene-drive .card-parallax{left:-4%;top:3%;width:91%;height:56%}
.tile-scene.scene-youth .card-parallax{left:7%;top:10%;width:58%;height:43%}
.product-tile.drive .tile-tag{color:#815027}.product-tile.youth .tile-tag{color:#603f89}
.product-tile.drive .tile-link{color:#684323}.product-tile.youth .tile-link{color:#50356b}
.product-tile.drive .tile-scene{box-shadow:inset 0 -3px #ffac6670}.product-tile.youth .tile-scene{box-shadow:inset 0 -3px #c5adff70}
@media(hover:hover) and (pointer:fine){.product-tile:hover .official-card,.product-tile:focus-visible .official-card{transform:translateY(-5px) rotate(-2deg);filter:drop-shadow(0 22px 18px #0008)}}
@media(max-width:680px){.tile-scene.scene-drive .card-parallax{left:-12%;top:4%;width:110%;height:51%}.tile-scene.scene-youth .card-parallax{left:6%;top:11%;width:66%;height:41%}}
@media(prefers-reduced-motion:reduce){.product-tile .official-card{transition:none!important;transform:none!important}}

.product-tile .tile-scene:is(.scene-drive,.scene-youth) img.official-card{position:absolute;inset:0;min-width:0;min-height:0}

@media(min-width:681px){.tile-scene.scene-youth .card-parallax{height:55%}}

.card-parallax .rive-card{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;filter:drop-shadow(0 18px 17px #0007)}.card-parallax.rive-ready>.official-card{opacity:0!important;animation:none!important}.card-parallax:not(.rive-ready)>.rive-card{visibility:hidden}

.art-stage.scene-youth .card-parallax{height:43%;top:15%;left:11%;width:70%}
@media(max-width:680px){.art-stage.scene-youth .card-parallax{height:49%;top:18%;left:6%;width:75%}}

/* Complete grounded product photographs. Only the Rive light moves. */
.tabletop-scene .scene-image{animation:none!important;transform:none!important;transition:none!important;object-position:center 62%!important}
.art-stage.tabletop-scene{height:auto;aspect-ratio:1/1;min-height:410px}
.art-stage.tabletop-scene.scene-travel{aspect-ratio:1.13/1}
.tabletop-scene .scene-shade{background:linear-gradient(180deg,#07101a6b,transparent 25%,transparent 78%,#07101a77)}
.art-stage.tabletop-scene .card-parallax,.tile-scene.tabletop-scene .card-parallax{display:block;inset:0!important;width:100%!important;height:100%!important;transform:none!important;transition:none!important;pointer-events:none;z-index:1;will-change:auto}
.tabletop-scene .scene-rive-light .rive-card{filter:blur(32px) brightness(3);opacity:.22;mix-blend-mode:screen;object-fit:cover;transform:scale(1.1)}
.tile-scene.tabletop-scene{height:auto;aspect-ratio:1.24/1}
.tabletop-scene .scene-brand{top:22px;left:24px}
.tabletop-scene .scene-caption{bottom:16px}
.story-picture img{object-position:center 62%}
@media(max-width:1050px){.art-stage.tabletop-scene{min-height:360px}}
@media(max-width:680px){.art-stage.tabletop-scene{min-height:0;aspect-ratio:1/1}.art-stage.tabletop-scene.scene-travel{aspect-ratio:1/1}.tile-scene.tabletop-scene{height:auto;aspect-ratio:1.08/1}.tabletop-scene .scene-brand{top:17px;left:22px}.tabletop-scene .scene-rive-light .rive-card{filter:blur(23px) brightness(3)}}
.tabletop-scene .motion-toggle{position:absolute!important;left:auto;right:16px;top:18px}

/* Product headlines: lighter type and distinct thought groups. */
.product-hero .product-copy>h1{font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,Arial,sans-serif;font-size:clamp(2rem,2.6vw,2.5rem);font-weight:600;line-height:1.2;letter-spacing:-.025em;margin-block:20px 28px}
.product-copy>h1 .headline-line{display:block;color:inherit;text-wrap:balance}
.product-copy>h1 .headline-support{font-size:.78em;font-weight:400;line-height:1.35;letter-spacing:-.01em;margin-top:16px;color:#eceef2}
.product-hero .product-copy>.eyebrow{font-family:"Segoe UI",system-ui,sans-serif;font-weight:600;font-size:.75rem;line-height:1.65;letter-spacing:.075em;max-width:34em}
@media(max-width:1050px){.product-hero .product-copy>h1{font-size:2.1rem}}
@media(max-width:680px){.product-hero .product-copy>h1{font-size:2rem;line-height:1.22;margin:16px 24px 28px}.product-copy>h1 .headline-support{font-size:.79em;margin-top:12px;line-height:1.38}.product-hero .product-copy>.eyebrow{font-size:.69rem;letter-spacing:.065em;margin-top:26px}}

/* Shared type hierarchy after the art-director review. */
.page-content h2,.page-content h3{font-weight:600;line-height:1.25;letter-spacing:-.015em}
.product-hero .product-copy>.eyebrow{font-family:inherit}
@media(max-width:680px){.product-hero .product-copy>h1{letter-spacing:-.01em}}

.calc-field input[type=text],.calculator-controls .button{font-family:inherit}

/* Direction switcher: shared icon language, quiet surfaces, one clear selection. */
.product-nav .nav-disclosure{padding:0;border:0;min-width:0}
.product-nav .nav-trigger{display:none}
.product-nav .nav-panel{min-width:0}
.product-nav .nav-entry{--nav-accent:#edcd73;position:relative;display:flex;align-items:center;gap:9px;min-height:48px;padding:12px 10px;border-radius:12px;color:#555b64;font-size:.8125rem;font-weight:400;line-height:1.4;text-decoration:none;transition:background .2s,color .2s,box-shadow .2s}
.product-nav .nav-travel{--nav-accent:#99cfff}.product-nav .nav-drive{--nav-accent:#ffb474}.product-nav .nav-youth{--nav-accent:#ceb2ff}.product-nav .nav-foreign{--nav-accent:#99d6b2}
.product-nav .nav-icon{display:block;width:18px;height:18px;flex:0 0 18px;color:inherit;opacity:.85}
.product-nav .nav-entry .nav-label{display:block;font-size:inherit;line-height:inherit;color:inherit;min-width:0}
.product-nav .nav-check,.product-nav .nav-arrow,.product-nav .nav-chevron{width:15px;height:15px;flex:0 0 15px;margin-left:auto}
.product-nav .nav-check{display:none;color:var(--nav-accent)}
.product-nav .nav-entry:hover{background:#e9e8e3;color:#20232a}
.product-nav .nav-entry[aria-current=page]{background:#24272d;color:#faf9f5;font-weight:600;box-shadow:inset 3px 0 var(--nav-accent),0 5px 14px #171d2710}
.product-nav .nav-entry[aria-current=page] .nav-icon{color:var(--nav-accent);opacity:1}
.product-nav .nav-home{margin:0 0 14px;font-size:.8125rem;font-weight:600;border-bottom:1px solid #dcdedb;border-radius:10px 10px 0 0;padding-bottom:16px}
.product-nav .nav-home[aria-current=page]{border-radius:12px;border-bottom-color:transparent}
.product-nav nav{display:grid;gap:6px;padding:0;overflow:visible;white-space:normal;justify-content:stretch}
.product-nav .nav-entry:focus-visible,.product-nav .nav-trigger:focus-visible{outline:2px solid #85703d;outline-offset:3px}
.product-nav .nav-panel>p{margin:24px 10px 0;font-size:.72rem;line-height:1.6}
@media(max-width:1050px){
 .product-nav{padding:0;border:0;background:transparent!important;box-shadow:none;isolation:isolate}
 .product-nav .nav-disclosure{position:relative}
 .product-nav .nav-trigger{--nav-accent:#edcd73;display:flex;align-items:center;gap:12px;min-height:54px;padding:14px 16px;list-style:none;border:1px solid #d9dad8;border-radius:13px;background:#f8f7f4;box-shadow:0 5px 16px #1521300b;color:#24272d;font-size:.9375rem;font-weight:600;line-height:1.4;cursor:pointer}
 .product-nav .nav-trigger.nav-travel{--nav-accent:#99cfff}.product-nav .nav-trigger.nav-drive{--nav-accent:#ffb474}.product-nav .nav-trigger.nav-youth{--nav-accent:#ceb2ff}.product-nav .nav-trigger.nav-foreign{--nav-accent:#99d6b2}
 .product-nav .nav-trigger::-webkit-details-marker{display:none}
 .product-nav .nav-trigger .nav-label{display:block;min-width:0}
 .product-nav .nav-chevron{transition:transform .2s}
 .product-nav .nav-disclosure[open] .nav-chevron{transform:rotate(180deg)}
 .product-nav .nav-disclosure[open] .nav-trigger{background:#24272d;color:#faf9f5;border-color:#24272d;box-shadow:inset 3px 0 var(--nav-accent)}
 .product-nav .nav-disclosure[open] .nav-trigger .nav-icon{color:var(--nav-accent)}
 .product-nav .nav-panel{position:absolute;top:calc(100% + 7px);left:0;right:0;padding:8px;background:#faf9f6;border:1px solid #dedfdc;border-radius:16px;box-shadow:0 18px 42px #17212b24;max-height:min(440px,calc(100dvh - 88px));overflow-y:auto;overscroll-behavior:contain}
 .product-nav nav{display:grid;gap:3px;overflow:visible;white-space:normal}
 .product-nav .nav-entry{display:flex!important;padding:12px;min-height:48px;font-size:.9375rem;gap:12px;flex-shrink:1}
 .product-nav .nav-entry .nav-label{display:block}
 .product-nav .nav-home{margin:0 0 5px;padding-bottom:14px}
 .product-nav .nav-entry[aria-current=page] .nav-check{display:block}
 .product-nav .nav-panel>p{display:none}
}
@media(prefers-reduced-motion:reduce){.product-nav .nav-entry,.product-nav .nav-chevron{transition:none}}

/* Make the purpose of each card visible before its photograph. */
.product-grid .product-tile>.tile-tag{display:block;padding:22px 22px 2px;font-family:inherit;font-size:1.5rem;font-weight:600;line-height:1.25;letter-spacing:-.015em;color:#24272d;text-wrap:balance}
@media(max-width:680px){.product-grid .product-tile>.tile-tag{font-size:1.25rem;line-height:1.3;padding:20px 20px 2px}}

/* Match the credit offer to the catalogue card structure. */
.catalog-grid .credit-tile .credit-scene{height:auto;aspect-ratio:1.24/1}
@media(max-width:680px){.catalog-grid .credit-tile .credit-scene{aspect-ratio:1.08/1}}

/* State the independent publisher identity before the product presentation. */
.publisher-brand{display:flex;flex-direction:column;align-items:flex-start;gap:6px;text-decoration:none;color:#24272d;min-width:0}
.publisher-brand strong{font-size:1.5rem;font-weight:600;letter-spacing:-.025em;line-height:1.2}
.publisher-brand span{font-size:.875rem;font-weight:400;line-height:1.4;color:#555d66;letter-spacing:0}
@media(max-width:680px){.publisher-brand strong{font-size:1.2rem}.publisher-brand span{font-size:.75rem;max-width:230px}.portal-header .publisher-brand{max-width:70%}}
