/* Full-width backgrounds, with a shared readable content measure. */
.home-canvas>.editorial-band .eyebrow{color:#ffb599!important}.home-canvas>.editorial-band .button.outline{color:#fff;border-color:#9fbeec}.home-canvas>.editorial-band .button.outline:hover{background:#fff;color:#102b56}
:root{--page-gutter:max(24px,calc((100% - 1180px)/2))}
body{background:#fff}
.breadcrumb-band{background:#f4f7ff;border-bottom:1px solid #e3ebf7}
.breadcrumb-band .breadcrumb{padding-block:16px;font-size:11px}
.page-banner{--banner-ink:#fff;--banner-muted:#e2edff;--banner-key:#fff0a0;display:block;position:relative;isolation:isolate;overflow:hidden;width:100%;margin:0 0 54px;border:0;border-radius:0;background:linear-gradient(115deg,#073ba9 0%,#075bea 60%,#1386ff 100%);color:var(--banner-ink)}
.page-banner:before,.page-banner:after{content:'';position:absolute;z-index:-1;pointer-events:none;border-radius:50%}
.page-banner:before{width:620px;height:620px;right:-100px;top:-200px;background:#ffffff0a;border:1px solid #ffffff2a}
.page-banner:after{width:380px;height:380px;left:-240px;bottom:-250px;border:55px solid #ffffff0c}
.banner-inner{display:grid;grid-template-columns:1.06fr 1fr;align-items:center;gap:64px;padding-block:64px}
.banner-copy{padding:0;min-width:0}.banner-copy h1{font-size:clamp(2.15rem,3.8vw,3.3rem);line-height:1.08;max-width:620px;margin:0 0 24px}.banner-copy .eyebrow{color:var(--banner-key)!important;letter-spacing:.16em;margin-bottom:20px}.banner-copy .lede{color:var(--banner-muted);font-size:17px;max-width:55ch}.banner-copy .meta{color:var(--banner-muted);font-size:11px}.banner-jump{color:var(--banner-ink);font-size:13px}.banner-jump:hover{color:var(--banner-key)}.banner-jump span{background:#ffdc45;color:#102b56;box-shadow:0 4px 12px #102b5620}
.banner-scene{align-self:center;display:block;position:relative;background:transparent;border-radius:48px 14px 48px 14px;box-shadow:0 22px 44px #102b5629;min-width:0;margin:0 10px 0 0}
.banner-scene:before{content:'';position:absolute;inset:16px -12px -12px 16px;border:2px solid #ffdc45;border-radius:48px 14px 48px 14px;z-index:-1}
.banner-scene img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;min-height:0;border-radius:48px 14px 48px 14px}
.scene-orbit{right:-9px;bottom:24px;width:58px;height:58px;background:#ffdc45;border:5px solid #fff;font-size:31px;box-shadow:0 8px 20px #102b5620}
.banner-sunrise{--banner-ink:#102b56;--banner-muted:#40516e;--banner-key:#953816;background:linear-gradient(110deg,#fff4d4 0%,#fff5e8 48%,#ffd8cc 100%)}
.banner-sunrise:before{background:#fff9;border-color:#fff}.banner-sunrise:after{border-color:#ffb78730}
.banner-mint{--banner-ink:#102b56;--banner-muted:#345368;--banner-key:#0758b0;background:linear-gradient(115deg,#e1f5f0 0%,#eaf8ff 55%,#cedfff 100%)}
.banner-mint:before{background:#ffffff40;border-color:#fff}.banner-mint:after{border-color:#8edcce33}
.banner-midnight{--banner-key:#ffb599;background:linear-gradient(115deg,#091b40 0%,#142e61 56%,#2846a3 100%)}
.article-layout{padding-bottom:22px}.article-aside{background:#f3f7ff;border:1px solid #dce7fa;border-top:4px solid #0866ff;border-radius:0 0 18px 18px;padding:24px}.visual-module{box-shadow:0 14px 40px #183b7610;border-color:#dbe7f9}.visual-module-2{background:#fffbf0;border-color:#f1e4bd}.visual-module-2 .module-copy{background:#fffbf0}.ready-check{background:linear-gradient(120deg,#0b2451,#173f87);position:relative;border-top:5px solid #ffdc45}.visual-toc{border-left:4px solid #0866ff;background:#f8fbff}.article-content .expansion-section{background:linear-gradient(130deg,#eef4ff,#f4eeff)}
.home-canvas>section,.home-canvas>.trust-strip{width:100%;max-width:none;margin:0;border-radius:0;padding-inline:var(--page-gutter)}
.home-canvas>.hero{position:relative;isolation:isolate;overflow:hidden;gap:56px;padding-block:76px;background:linear-gradient(115deg,#073ba9,#075bea 62%,#147eff);color:#fff}
.home-canvas>.hero:before{content:'';position:absolute;z-index:-1;right:-190px;top:-260px;width:860px;height:860px;border-radius:50%;border:90px solid #ffffff08;background:#ffffff04}
.home-canvas>.hero:after{content:'';position:absolute;z-index:-1;left:42%;bottom:-190px;width:300px;height:300px;border:2px solid #ffffff1f;border-radius:50%}
.home-canvas>.hero h1{font-size:clamp(2.9rem,4.5vw,4.4rem);line-height:1.04;letter-spacing:-.05em;color:white}.home-canvas>.hero h1 .accent{color:#ffdc45}.home-canvas>.hero p{color:#e4eeff;font-size:18px}.home-canvas>.hero .eyebrow{color:#fff2a6!important}.home-canvas>.hero .tiny{color:#e4eeff}.home-canvas>.hero .button:not(.outline){background:#ffdc45;color:#102b56}.home-canvas>.hero .button:not(.outline):hover{background:#fff0a4}.home-canvas>.hero .button.outline{border-color:#b9d4ff;color:#fff}.home-canvas>.hero .button.outline:hover{background:white;color:#064abb}.home-canvas>.hero .hero-art{border:6px solid #ffffff22;border-radius:100px 24px 100px 24px;overflow:hidden;box-shadow:0 30px 65px #05226755;transform:rotate(2deg);background:#fff}.home-canvas>.hero .hero-art img{border-radius:0}
.home-canvas>.trust-strip{padding-block:23px;background:#102b56;border:0;color:#f2f7ff;gap:24px}.home-canvas>.trust-strip span:before{color:#ffdc45}
.home-canvas>.section{padding-block:78px}.home-canvas>.section .section-heading{margin-bottom:36px}.home-canvas>.section:has(.route-card){background:#fff}.home-canvas>.section:has(.guide-list){background:#fff5e8}.home-canvas>#selector{background:#f4f0ff}.home-canvas>#selector .selector{box-shadow:0 22px 50px #152f6a14}.home-canvas>.section:has(.product-card){background:#fff}
.home-canvas>.learning-lab{background:linear-gradient(120deg,#e5f5ef,#eaf6ff);padding-block:70px;border:0}.home-canvas>.learning-lab .learning-step{background:#fff;box-shadow:0 10px 24px #153f6310;border:1px solid #d6e9ec}.home-canvas>.learning-lab .learning-step:nth-child(3){background:#fff9e3}
.home-canvas>.route-lab{padding-block:60px;border:0;background:#fff4d1;gap:70px}.home-canvas>.route-lab .lab-copy{max-width:480px}.home-canvas>.route-lab .lab-play{max-width:430px;width:100%;margin:auto}.home-canvas>.route-lab .lab-board{background:#eedda5}
.home-canvas>.editorial-band{padding-block:70px;background:#102b56;color:white;gap:60px}.home-canvas>.editorial-band p{color:#dce9ff}.home-canvas>.editorial-band h2{padding-left:24px;border-left:5px solid #ff9472}.home-canvas>.expansion-section{padding-block:76px;border:0;background:linear-gradient(120deg,#eaf2ff,#f4f0ff)}.home-canvas>.expansion-section>.eyebrow{color:#0754d4}.home-canvas>.expansion-section .expansion-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.home-canvas>.expansion-section .expansion-card-copy{padding:20px}.home-canvas>.expansion-section .expansion-card-copy>strong{font-size:18px}.home .site-footer{margin-top:0}
@media(min-width:1700px){.banner-inner{gap:80px;padding-block:78px}.home-canvas>.hero{padding-block:96px}}
@media(max-width:1000px){.banner-inner{gap:32px;padding-block:48px}.banner-copy h1{font-size:2.35rem}.home-canvas>.hero{gap:32px}.home-canvas>.expansion-section .expansion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-canvas>.route-lab{gap:30px}}
@media(max-width:760px){:root{--page-gutter:18px}.breadcrumb-band .breadcrumb{padding-block:13px;font-size:10px}.page-banner{margin-bottom:30px}.banner-inner{grid-template-columns:1fr;gap:30px;padding-block:34px 42px}.banner-copy{padding:0}.banner-copy h1{font-size:clamp(2rem,8.3vw,3rem);margin-bottom:20px}.banner-copy .lede{font-size:16px}.banner-scene{margin-right:10px;border-radius:32px 12px 32px 12px}.banner-scene img,.banner-scene:before{border-radius:32px 12px 32px 12px}.scene-orbit{width:48px;height:48px;border-width:4px;font-size:25px}.home-canvas>.hero{grid-template-columns:1fr;padding-block:40px 48px;gap:24px}.home-canvas>.hero h1{font-size:clamp(2.75rem,11.8vw,4rem)}.home-canvas>.hero p{font-size:17px}.home-canvas>.hero .hero-art{margin:8px 6px 0;border-radius:62px 20px 62px 20px;transform:none}.home-canvas>.trust-strip{gap:13px;padding-block:22px;font-size:12px}.home-canvas>.section,.home-canvas>.learning-lab,.home-canvas>.expansion-section{padding-block:46px}.home-canvas>.route-lab{padding-block:42px;gap:24px}.home-canvas>.editorial-band{padding-block:46px;gap:22px}.home-canvas>.expansion-section .expansion-grid{grid-template-columns:1fr}.article-aside{padding:20px}}

/* Natural photography: every scene has one exclusive placement. */
.visual-module{grid-template-columns:1fr;border-left:4px solid #0866ff}.visual-module-2{border-left-color:#c34329}.visual-module .module-copy{padding:28px 32px}.visual-module .idea-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.visual-module .idea-steps details{border-top:1px solid #d5e2f4}.visual-module .idea-steps summary{align-items:flex-start}.visual-module .idea-steps summary:after{line-height:1}.visual-module .module-copy>p{max-width:70ch}
.route-card:nth-child(1) .card-icon{background-image:url(editorial/photo-maze-480.webp)}.route-card:nth-child(2) .card-icon{background-image:url(editorial/photo-pair-480.webp)}.route-card:nth-child(3) .card-icon{background-image:url(editorial/photo-family-480.webp)}
.expansion-card{border-top:4px solid #0866ff}.expansion-card:nth-child(3n+2){border-top-color:#c34329}.expansion-card:nth-child(3n){border-top-color:#148274}.expansion-card-copy{height:100%;display:flex;flex-direction:column}.expansion-card-cta{margin-top:auto;padding-top:16px}.product-card .product-shop-note{font-size:12px;color:#405576;background:#f1f6ff;border-radius:10px;padding:12px;margin-top:auto}.product-card .product-buy{width:100%;background:#ffdc45;color:#102b56;border:1px solid #e2bd24;font-size:14px;text-align:center;justify-content:center;box-shadow:0 5px 0 #d9b724}.product-card .product-buy:hover{background:#ffe777;color:#102b56}.product-card .secondary-link{margin-top:17px}.article-visual{border-left:4px solid #ffdc45}
@media(max-width:760px){.visual-module .module-copy{padding:22px}.visual-module .idea-steps{grid-template-columns:1fr;gap:0}.product-card .product-buy{min-height:48px}}

/* Model-specific scenes remain uncropped on narrow screens. */
.banner-product .banner-scene img{aspect-ratio:auto;object-fit:contain;height:auto;width:100%}.banner-product .scene-orbit{display:none}
