:root{color-scheme:dark;--bg:#080808;--ink:#f5f5f2;--muted:#aaa;--line:#343434;--pad:5vw}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--bg);color:var(--ink);font:1rem/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:2px solid white;outline-offset:6px}a,summary{-webkit-tap-highlight-color:transparent}p,h1,h2,h3,figure,dl,dd{margin:0}img{display:block;width:100%;object-fit:cover}h1,h2,h3{line-height:1;letter-spacing:-.055em}a:hover{color:#bababa}.masthead{margin:0 var(--pad);height:112px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand img{width:76px;height:70px;object-fit:contain;filter:invert(1)}nav{display:flex;gap:42px;font-size:.875rem}nav a{padding:12px 0}.hero-heading{padding:50px var(--pad) 35px;display:flex;align-items:end;justify-content:space-between;gap:24px}.hero-heading h1{font-size:clamp(4rem,12vw,12rem);font-weight:800;letter-spacing:-.07em;line-height:.85}.hero-index{white-space:nowrap;padding-bottom:7px;font-size:2.5rem;line-height:1.1}.hero-index p{font-size:.75rem;letter-spacing:.08em;margin-bottom:12px}.hero-index span{color:#707070;margin:0 7px}.hero-image{position:relative}.hero-image img{height:clamp(420px,49vw,720px);object-position:50% 40%}.hero-image figcaption{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;gap:15px;padding:50px var(--pad) 22px;background:linear-gradient(transparent,#000a);font-size:.75rem;letter-spacing:.06em}.intro{margin:0 var(--pad);padding:65px 0 110px;display:grid;grid-template-columns:1.2fr 1fr;gap:12%}.intro>p{font-size:clamp(1.5rem,2.7vw,2.65rem);line-height:1.2;letter-spacing:-.04em}.intro>div{max-width:460px}.intro>div>p{color:var(--muted)}.text-link{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #888;padding:14px 0;font-size:.875rem;width:fit-content;min-width:175px;margin-top:22px}.text-link span{font-size:1.3rem}.range{padding:0 var(--pad)}.model{border-top:1px solid #666;padding-top:25px}.model-heading{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:38px}.label{font: .75rem/1.5 Arial,sans-serif;letter-spacing:.09em}.model-heading h2{font-size:clamp(7rem,15vw,15rem);line-height:.85;font-weight:800;letter-spacing:-.07em;margin:20px 0 0 -8px}.model-heading>p{font-size:1.125rem;line-height:1.45;color:#ccc;width:34%}.model-layout{display:grid;grid-template-columns:1.35fr 1fr;gap:7%}.model-image img{height:100%;max-height:660px;min-height:510px;object-position:42% center}.model-image{position:relative;align-self:start}.model-image figcaption{position:absolute;bottom:0;left:0;right:0;padding:45px 24px 20px;background:linear-gradient(transparent,#0009);font-size:.75rem;letter-spacing:.07em}.model-copy{padding:0 0 18px}.model-copy h3{font-size:clamp(1.8rem,2.65vw,2.8rem);font-weight:500;line-height:1.1;margin:0 0 28px}.model-copy>p{color:#b7b7b7;margin-bottom:20px;max-width:510px}.facts{margin:30px 0 12px}.facts>div{display:flex;justify-content:space-between;gap:18px;padding:13px 0;border-top:1px solid var(--line);font-size:.875rem}.facts dt{color:var(--muted)}.facts dd{white-space:nowrap}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{display:flex;justify-content:space-between;align-items:center;cursor:pointer;list-style:none;font-size:.875rem;padding:16px 0}summary::-webkit-details-marker{display:none}summary>span{font-size:1.5rem;line-height:1}details[open] summary>span{transform:rotate(45deg)}.details-body{font-size:.875rem;color:#bbb;padding:5px 0 20px}.details-body p{margin:12px 0}.details-body dl>div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:10px}.details-body ul{padding-left:20px}.model-two{margin-top:115px}.model-two .model-layout{grid-template-columns:1fr 1.35fr}.model-two .model-image{grid-column:2;grid-row:1}.model-two .model-copy{grid-column:1;grid-row:1}.model-two .model-image img{object-position:72% center}.mounting-note{font-size:.75rem;color:var(--muted);border-top:1px solid var(--line);padding-top:22px;margin-top:50px}.field{padding:110px var(--pad)}.field-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:35px}.field-heading h2{font-size:clamp(2.5rem,5.5vw,5.5rem);font-weight:700}.field-heading>p{color:var(--muted);font-size:.875rem}.field-images{display:grid;grid-template-columns:.75fr 1.25fr;gap:24px;align-items:end}.field-images figure:first-child{padding-bottom:75px}.field-images img{aspect-ratio:1/1.15}.field-images figure+figure img{aspect-ratio:4/3}.field-images figcaption{font-size:.75rem;letter-spacing:.05em;color:var(--muted);padding-top:15px}.business{background:#e6e6e1;color:#101010;padding:65px var(--pad) 75px}.business-content{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;margin-top:35px}.business h2{font-size:clamp(2.5rem,5.5vw,5.5rem);font-weight:500;line-height:1.03}.business-content>div{max-width:470px}.business-content p+p{margin-top:22px}.business .text-link{border-color:#555}.business a:hover{color:#555}.contact{padding:75px var(--pad) 65px}.contact-top{display:flex;align-items:center;justify-content:space-between;gap:20px}.contact h2{font-size:1rem;font-weight:400;letter-spacing:.01em}.contact-top>span{font-size:.75rem;color:var(--muted);letter-spacing:.06em}.email{font-size:clamp(2rem,7.5vw,8rem);line-height:1.2;letter-spacing:-.06em;display:flex;justify-content:space-between;align-items:center;margin-top:30px}.email span{font-size:.65em}footer{border-top:1px solid var(--line);padding:35px var(--pad);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:.75rem;color:var(--muted)}.footer-logo img{width:90px;height:83px;object-fit:contain;filter:invert(1)}.skip{position:fixed;top:-100px;left:15px;background:white;color:black;padding:12px;z-index:10}.skip:focus{top:12px}@media(min-width:1800px){body{max-width:2000px;margin:auto}}@media(max-width:1000px){.model-layout,.model-two .model-layout{gap:5%;grid-template-columns:1fr 1fr}.model-image img{min-height:450px}.model-heading>p{width:45%}.intro,.business-content{gap:7%}.model-copy h3{font-size:1.9rem}.hero-index{font-size:2rem}}@media(max-width:700px){:root{--pad:6vw}.masthead{height:92px}.brand img{width:58px;height:54px}nav{gap:19px;font-size:.875rem}.hero-heading{padding-top:40px;padding-bottom:24px;display:block}.hero-heading h1{font-size:clamp(3.6rem,15.3vw,6.6rem)}.hero-index{display:flex;align-items:baseline;gap:12px;font-size:1.125rem;margin-top:25px;padding:0}.hero-index p{margin:0 auto 0 0;font-size:.75rem}.hero-index span{margin:0}.hero-image img{height:440px;object-position:58% 40%}.hero-image figcaption{font-size:.75rem;letter-spacing:0;padding-bottom:16px}.hero-image figcaption span+span{max-width:140px;text-align:right}.intro{display:block;padding:35px 0 65px}.intro>p{font-size:1.75rem;margin-bottom:26px}.intro>div{max-width:none}.model-heading{margin-bottom:28px}.model-heading h2{font-size:7.5rem;margin:16px 0 0 -5px}.model-heading>p{font-size:.875rem;width:auto}.model-layout,.model-two .model-layout{display:flex;flex-direction:column;gap:32px}.model-image{width:100%}.model-image img{height:auto;min-height:0;aspect-ratio:1/1.1;max-height:none;object-position:43% center}.model-two .model-image img{aspect-ratio:1/1;object-position:73% center}.model-copy{padding:0}.model-copy h3{font-size:2.25rem;margin-bottom:23px}.model-copy>p{max-width:none}.model-two{margin-top:65px}.facts{margin-top:25px}.mounting-note{margin-top:35px}.field{padding-top:65px;padding-bottom:65px}.field-heading{display:block}.field-heading h2{font-size:2.75rem}.field-heading>p{margin-top:18px}.field-images{grid-template-columns:1fr;gap:28px}.field-images figure:first-child{padding:0}.field-images img{aspect-ratio:4/3}.business{padding-top:40px;padding-bottom:45px}.business-content{display:block;margin-top:25px}.business h2{font-size:2.75rem;margin-bottom:28px}.contact{padding-top:45px;padding-bottom:45px}.email{font-size:clamp(1.5rem,8vw,3rem);margin-top:25px}.contact-top{gap:15px}footer{padding-top:25px;padding-bottom:25px;gap:20px}.footer-logo img{width:64px;height:59px}}@media(max-width:370px){nav{gap:13px;font-size:.8rem}.hero-heading h1{font-size:15vw}.model-heading h2{font-size:6rem}.hero-image figcaption{font-size:.7rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Vehicle visualizer */
[hidden]{display:none!important}.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}.configurator{padding:0 var(--pad) 110px}.config-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.config-heading h2{font-size:clamp(2.5rem,5.5vw,5.5rem);margin-top:20px}.config-heading>p{color:var(--muted);font-size:.875rem}.config-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.configurator fieldset{border:0;padding:0;margin:0}.tent-switch{display:flex;gap:6px}.tent-switch label,.car-switch label{position:relative;cursor:pointer}.tent-switch input,.car-switch input{position:absolute;opacity:0;width:1px;height:1px}.tent-switch span{display:block;padding:12px 20px;border:1px solid #555;font-size:.875rem}.tent-switch input:checked+span{background:#f5f5f2;color:#080808;border-color:#f5f5f2}.tent-switch input:focus-visible+span,.car-switch input:focus-visible+span{outline:2px solid white;outline-offset:4px}.config-counter{font-size:.75rem;letter-spacing:.08em;color:var(--muted)}.config-stage{position:relative;aspect-ratio:1.8;background:#e2e2df;color:#111;overflow:hidden;touch-action:pan-y pinch-zoom;user-select:none}.config-stage:focus-visible{outline:2px solid white;outline-offset:5px}.config-stage-label{position:absolute;left:28px;right:28px;top:23px;display:flex;justify-content:space-between;font-size:.75rem;letter-spacing:.08em;color:#444}.config-vehicle{position:absolute;top:54%;left:12%;width:76%;z-index:1;pointer-events:none;transform-origin:center top}.config-vehicle img{width:100%;height:auto;display:block}.config-tent{position:absolute;bottom:46%;left:28%;width:35%;height:auto;z-index:2;pointer-events:none;transform-origin:center bottom}.config-arrow{border:1px solid #aaa;background:#e2e2df99;color:#111;position:absolute;top:55%;width:48px;height:48px;border-radius:50%;font:1.5rem Arial;cursor:pointer;z-index:3;display:grid;place-items:center}.config-arrow:hover{background:white;border-color:#555}.config-arrow:focus-visible{outline:2px solid black;outline-offset:3px}.config-prev{left:22px}.config-next{right:22px}.config-stage-footer{position:absolute;bottom:22px;left:28px;right:28px;display:flex;justify-content:space-between;align-items:end;gap:20px;z-index:3}.config-stage-footer>span:first-child{font-size:clamp(1.1rem,2vw,1.8rem);letter-spacing:-.035em}.swipe-hint{font-size:.75rem;color:#555}.car-switch{display:grid;grid-template-columns:repeat(4,1fr)}.car-switch label span{border-top:3px solid transparent;border-bottom:1px solid var(--line);padding:20px 14px;display:block}.car-switch label:first-of-type span{padding-left:0}.car-switch strong{display:block;font-size:.875rem;font-weight:400}.car-switch small{font-size:.75rem;display:block;color:var(--muted);margin-top:3px}.car-switch input:checked+span{border-top-color:white}.car-switch input:checked+span strong{font-weight:700}.car-switch label:hover span{background:#161616}.config-notes{display:flex;justify-content:space-between;align-items:start;gap:45px;margin-top:25px}.config-notes>p{max-width:640px;font-size:.75rem;color:var(--muted)}.config-notes .text-link{margin-top:0;padding-top:0;flex-shrink:0}.image-credits{margin-top:25px;max-width:680px;border-bottom:0}.image-credits summary{font-size:.75rem;color:var(--muted);padding:12px 0}.image-credits .details-body{font-size:.75rem}.image-credits a{text-decoration:underline}.config-error{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#e2e2df;padding:60px;z-index:4;text-align:center}.config-stage.is-loading img{opacity:.3}@media(max-width:1000px){nav{gap:25px}.config-stage{aspect-ratio:1.65}.config-tent{bottom:48%}.config-vehicle{top:52%}.config-arrow{width:40px;height:40px}.config-prev{left:12px}.config-next{right:12px}}@media(max-width:700px){.config-nav{display:inline}.configurator{padding-bottom:65px}.config-heading{display:block;margin-bottom:25px}.config-heading h2{font-size:2.75rem}.config-heading>p{margin-top:18px}.tent-switch span{padding:11px 16px}.config-stage{aspect-ratio:1.12;margin-left:calc(-1 * var(--pad));margin-right:calc(-1 * var(--pad))}.config-stage-label{left:20px;right:20px;top:19px;font-size:.7rem}.config-vehicle{width:90%;left:5%;top:51%}.config-tent{width:41.45%;left:23.95%;bottom:49%}.config-arrow{width:36px;height:36px;top:auto;bottom:17px;background:transparent;border-color:#999;font-size:1.2rem}.config-prev{left:auto;right:62px}.config-next{right:16px}.config-stage-footer{bottom:20px;left:20px;right:112px}.swipe-hint{display:none}.config-stage-footer>span:first-child{font-size:1rem}.car-switch{grid-template-columns:repeat(2,1fr);gap:0 12px}.car-switch label span{padding:14px 8px}.car-switch label:first-of-type span{padding-left:8px}.config-notes{display:block;margin-top:20px}.config-notes .text-link{margin-top:20px}.image-credits{margin-top:22px}.config-error{padding:35px;font-size:.875rem}}

/* Align actual silhouettes, compensating for transparent image margins. */
.config-stage{aspect-ratio:1.45}
.config-vehicle{top:48%;left:15%;width:70%;transform:translateY(var(--roof-offset,-9.63%))}
.config-stage[data-car="volvo"]{--roof-offset:-9.63%}
.config-stage[data-car="mercedes"]{--roof-offset:-22.46%}
.config-stage[data-car="bmw"]{--roof-offset:-14.11%}
.config-stage[data-car="kia"]{--roof-offset:-5.75%}
.config-tent{bottom:52%;left:25.5%;width:38.7%;transform:translateY(9.4%)}
.config-stage[data-tent="w2"] .config-tent{left:26%;width:37%;transform:translateY(8.7%)}
@media(max-width:700px){.config-stage{aspect-ratio:1.02}.config-vehicle{top:48%;left:5%;width:90%}.config-tent{bottom:52%;left:18.5%;width:49.75%}.config-stage[data-tent="w2"] .config-tent{left:19.14%;width:47.57%}}

/* Original product photographs */
.product-gallery{margin-top:55px;min-width:0}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:25px}.gallery-heading h3{font-size:clamp(1.8rem,3vw,3rem);font-weight:500;margin-top:12px}.gallery-heading>p{font-size:.875rem;color:var(--muted)}.gallery-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-color:#666 #161616;scrollbar-width:thin;padding:4px 4px 20px;margin:0 -4px}.gallery-card{flex:0 0 calc((100% - 60px)/4);min-width:0;scroll-snap-align:start}.gallery-photo{position:relative;background:#171717;overflow:hidden}.gallery-photo img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}.gallery-photo>span{position:absolute;right:12px;bottom:12px;background:#080808c9;color:white;width:36px;height:36px;display:grid;place-items:center;font-size:1.25rem}.gallery-card figcaption{display:flex;justify-content:space-between;gap:16px;font-size:.875rem;padding-top:12px}.gallery-card figcaption>span+span{color:#999}.gallery-card:hover .gallery-photo>span{background:#f5f5f2;color:#080808}.photo-open{overflow:hidden}.photo-viewer{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:20px clamp(16px,4vw,60px);border:0;background:#080808;color:var(--ink)}.photo-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px}.photo-viewer::backdrop{background:#080808}.photo-toolbar,.photo-bottom{display:flex;justify-content:space-between;align-items:center;gap:16px}.photo-toolbar{font-size:.875rem;color:#bbb}.photo-viewer button{background:transparent;border:1px solid #666;color:var(--ink);min-width:48px;min-height:48px;padding:8px 16px;font:inherit;cursor:pointer}.photo-viewer button:hover{background:#242424}.photo-viewer button:focus-visible{outline:2px solid white;outline-offset:3px}.photo-stage{min-height:0;display:grid;place-items:center;position:relative}.photo-stage img{width:100%;height:100%;min-height:0;object-fit:contain}.photo-bottom{max-width:800px;width:100%;margin:auto}.photo-bottom p{font-size:1rem;text-align:center}.photo-error{text-align:center;color:#bbb}@media(max-width:1000px){.gallery-card{flex-basis:calc((100% - 40px)/3)}}@media(max-width:700px){.product-gallery{margin-top:36px}.gallery-heading{display:block}.gallery-heading>p{margin-top:15px}.gallery-track{gap:14px}.gallery-card{flex-basis:76%}.gallery-heading h3{font-size:2rem}.photo-viewer{padding:12px 16px;padding-top:max(12px,env(safe-area-inset-top));padding-bottom:max(12px,env(safe-area-inset-bottom))}}

/* W1 stays fixed; each car moves to align its rear roof edge beneath it. */
.config-stage[data-car="volvo"]{--w1-car-left:15%;--w1-car-mobile:5%}
.config-stage[data-car="mercedes"]{--w1-car-left:15.75%;--w1-car-mobile:5.97%}
.config-stage[data-car="bmw"]{--w1-car-left:17%;--w1-car-mobile:7.57%}
.config-stage[data-car="kia"]{--w1-car-left:16%;--w1-car-mobile:6.29%}
.config-stage[data-tent="w1"] .config-tent{left:17.91%}
.config-stage[data-tent="w1"] .config-vehicle{left:var(--w1-car-left)}
.config-stage.is-loading .config-tent{opacity:1}
@media(max-width:700px){.config-stage[data-tent="w1"] .config-tent{left:8.75%}.config-stage[data-tent="w1"] .config-vehicle{left:var(--w1-car-mobile)}}

/* More moments from the same outdoor shoot. */
.field-images{row-gap:48px}.field-images .field-extra img{aspect-ratio:4/3}.field-images .field-extra:nth-child(3) img,.field-images .field-extra:nth-child(4) img{aspect-ratio:3/4}.field-images .field-extra:nth-child(4){padding-top:40px}.field-images .field-extra:nth-child(5){grid-column:1/-1}.field-images .field-extra:nth-child(5) img{aspect-ratio:16/9}.field-images .field-extra:nth-child(6){grid-column:1/-1}.field-images .field-extra:nth-child(6) img{aspect-ratio:2/1}@media(max-width:700px){.field-images{row-gap:30px}.field-images .field-extra:nth-child(4){padding-top:0}.field-images .field-extra:nth-child(5) img,.field-images .field-extra:nth-child(6) img{aspect-ratio:4/3}}

/* W2 unfolds across the car: use front views with a shared roof anchor. */
.config-stage[data-tent="w2"] .config-vehicle{top:48%;left:35.25%;width:32%;transform:none}
@media(max-width:700px){.config-stage[data-tent="w2"] .config-vehicle{left:31.04%;width:41.14%}}
