@font-face {
  font-family: Manrope;
  src: url('assets/manrope.woff2') format('woff2');
  font-weight: 300 600;
  font-display: swap;
}

body.studio {
  --display: Manrope, Arial, sans-serif;
  --deep: #092b35;
  --ink: #15343c;
  --navy: #102f3a;
  --muted: #68767a;
  --paper: #f1f4f3;
  --line: #d9e0df;
  --gutter: clamp(24px, 4.2vw, 76px);
  --max: 1500px;
}
.studio h1,.studio h2 { font-weight: 400; letter-spacing: -.055em; }
.studio-container { max-width: 1500px; margin-inline: auto; padding-inline: var(--gutter); }
.studio .eyebrow { font-size: 10px; font-weight: 500; letter-spacing: .09em; }
.studio .text-link { gap: 28px; font-size: 13px; font-weight: 400; }
.studio .text-link svg { width: 20px; height: 20px; }
.studio-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 45px; min-height: 53px; padding: 15px 21px; background: var(--deep); border: 1px solid var(--deep); color: white; font-size: 12px; transition: background .25s, color .25s; }
.studio-button svg { width: 23px; height: 23px; flex: none; transition: transform .25s; }
.studio-button:hover { background: #174754; }
.studio-button:hover svg { transform: translateX(4px); }
.studio-button.orange { background: var(--orange); border-color: var(--orange); color: var(--deep); }
.studio-button.orange:hover { background: #ffad65; }

/* The masthead keeps the same scale on every page. */
.site-header.studio-header { background: var(--deep); color: white; position: relative; z-index: 60; }
.brandbar { min-height: 94px; padding: 0 var(--gutter); display: flex; align-items: center; gap: 48px; border-bottom: 1px solid #ffffff24; }
.studio-brand { display: block; margin-right: auto; flex: none; }
.studio-brand img { width: 140px; height: 60px; object-fit: contain; }
.studio-header .desktop-nav { gap: 31px; }
.studio-header .desktop-nav>a { color: #e0e8e7; font-size: 12px; font-weight: 400; padding: 13px 0; }
.studio-header .desktop-nav>a.active { color: #ffac64; }
.studio-header .desktop-nav>a::after { background: var(--orange); height: 1px; bottom: 6px; }
.studio-contact { display: inline-flex; align-items: center; gap: 25px; font-size: 12px; border-left: 1px solid #ffffff38; padding-left: 31px; }
.studio-contact svg { color: var(--orange); width: 20px; height: 20px; }
.studio-header .menu-toggle { display: none; background: none; border: none; color: white; height: 44px; width: 44px; padding: 9px; }
.studio-menu-open { overflow: hidden; }

/* A panorama and its surrounding typography form one viewfinder. */
.campaign-hero { color: white; background: var(--deep); padding: 39px var(--gutter) 0; }
.campaign-heading { display: grid; grid-template-columns: 1.4fr 1fr; align-items: end; gap: 60px; padding-bottom: 36px; max-width: 1450px; margin-inline: auto; }
.campaign-heading .eyebrow { display: flex; align-items: center; gap: 13px; font-size: 9px; color: #c5d1d2; text-transform: none; letter-spacing: .035em; }
.link-mark { display: block; width: 24px; height: 12px; border: 1px solid var(--orange); border-left: 0; transform: skewX(-29deg); position: relative; }
.link-mark::after { content: ''; position: absolute; width: 14px; height: 1px; background: var(--orange); top: 5px; left: -6px; }
.campaign-heading h1 { font: 400 clamp(66px,6.8vw,106px)/.99 var(--display); letter-spacing: -.06em; margin-top: 21px; }
.campaign-heading h1>span { color: #c6d6d9; }
.campaign-introduction { max-width: 290px; justify-self: end; padding-bottom: 5px; }
.campaign-introduction>p { font-size: 16px; line-height: 1.55; color: #e2e9e9; }
.campaign-introduction>span { display: block; color: #93adb3; margin-top: 14px; font-size: 10px; letter-spacing: .02em; }
.campaign-introduction .studio-button { margin-top: 25px; width: 100%; }
.campaign-window { position: relative; height: clamp(310px,43svh,550px); max-width: 1450px; margin-inline: auto; background: #173a45; isolation: isolate; }
.campaign-imagery { position: absolute; inset: 0; overflow: hidden; z-index: -1; }
.campaign-photo { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 50% 64%; opacity: 0; transition: opacity .7s ease; }
.campaign-photo.is-active { opacity: 1; }
.campaign-photo[data-scene-photo='detail'] { object-position: 50% 57%; }
.campaign-window::after { content: ''; position: absolute; inset: 50% 0 0; background: linear-gradient(0deg,#061c28bf,transparent); z-index: -1; pointer-events: none; }
.campaign-photo-caption { position: absolute; left: 25px; right: 25px; bottom: 20px; display: flex; justify-content: space-between; align-items: center; gap: 30px; }
.campaign-photo-caption>span { font-size: 11px; color: #e1e8e9; }
.scene-switch { display: flex; gap: 25px; }
.scene-switch button { display: inline-flex; gap: 8px; align-items: center; background: none; border: none; color: #d1dcde; font-size: 10px; padding: 8px 0; }
.scene-switch button>span { width: 6px; height: 6px; border: 1px solid #dde6e8; }
.scene-switch button[aria-pressed='true'] { color: white; }
.scene-switch button[aria-pressed='true']>span { border-color: var(--orange); background: var(--orange); }
.viewfinder-corner { position: absolute; left: -10px; top: -10px; height: 36px; width: 36px; border-left: 1px solid var(--orange); border-top: 1px solid var(--orange); }
.campaign-routes { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); max-width: 1450px; margin-inline: auto; gap: 45px; padding-block: 25px 29px; }
.campaign-routes a { display: flex; align-items: center; justify-content: space-between; font-family: var(--display); font-size: 15px; gap: 25px; }
.campaign-routes a+a { border-left: 1px solid #ffffff29; padding-left: 34px; }
.campaign-routes small { display: block; font: 10px var(--body); color: #9fb3b8; margin-top: 5px; }
.campaign-routes svg { width: 21px; height: 21px; color: #b6cbcf; transition: transform .25s,color .25s; }
.campaign-routes a:hover svg { color: var(--orange); transform: translateX(5px); }

/* Actual stock, set with the clarity of a printed vehicle catalogue. */
.studio-collection { padding-top: 104px; padding-bottom: 100px; }
.collection-heading { display: flex; justify-content: space-between; align-items: end; gap: 60px; }
.collection-heading .eyebrow { color: var(--muted); margin-bottom: 17px; }
.collection-heading h2 { font-size: clamp(38px,4vw,59px); line-height: 1.12; }
.collection-heading>p { max-width: 310px; font-size: 13px; line-height: 1.8; color: var(--muted); padding-bottom: 2px; }
.collection-toolbar { margin: 43px 0 30px; display: flex; align-items: center; justify-content: space-between; gap: 35px; border-block: 1px solid var(--line); }
.collection-count { font-size: 11px; color: var(--muted); }
.collection-toolbar .filter-tabs { margin: 0; border: none; gap: 28px; }
.collection-toolbar .filter-tabs button { padding: 16px 0; font-size: 11px; font-weight: 400; }
.collection-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 35px; }
.studio .car-info h3 { font: 400 27px/1.2 var(--display); letter-spacing: -.045em; }
.studio .car-price { font-family: var(--display); font-weight: 500; font-size: 23px; letter-spacing: -.04em; }
.studio .car-price small { font-size: 10px; letter-spacing: .02em; font-family: var(--body); }
.studio .car-year { font-size: 10px; letter-spacing: .04em; color: var(--muted); }
.studio .car-meta { font-size: 11px; }
.studio .car-kind { font-size: 9px; font-weight: 400; letter-spacing: .07em; }
.studio .car-media { aspect-ratio: 1.4; }
.collection-grid .car-media { aspect-ratio: 1.46; }
.collection-grid .car-info { padding-top: 22px; }
.collection-grid .car-info h3 { font-size: 29px; }
.collection-grid .car-bottom { margin-top: 20px; border-top: 1px solid var(--line); padding-top: 16px; }
.collection-grid .car-media img { transition: transform .7s; }
.collection-grid .car-media:hover img { transform: scale(1.035); }
.collection-grid .car-bottom .text-link { font-size: 11px; padding-block: 8px; }
.collection-end { display: flex; justify-content: space-between; align-items: center; margin-top: 40px; gap: 40px; }
.collection-end p { color: var(--muted); font-size: 11px; line-height: 1.9; }

/* Two real perspectives on Rwanda: a destination and the car to get there. */
.studio-rental { color: white; background: var(--deep); padding: 88px var(--gutter) 85px; display: grid; grid-template-columns: 1fr 1.5fr; gap: clamp(70px,10vw,165px); }
.rental-editorial>.eyebrow { color: #a4bdc3; margin-bottom: 23px; }
.rental-editorial h2 { font-size: clamp(43px,4.7vw,70px); line-height: 1.07; }
.rental-story-copy { max-width: 300px; color: #b8cbd0; font-size: 13px; line-height: 1.9; margin-top: 25px; }
.rental-editorial .text-link { color: white; border-color: #5b7981; margin-top: 22px; font-size: 12px; }
.rental-editorial .text-link svg { color: var(--orange); }
.rental-landscape { max-width: 270px; margin-top: 46px; }
.rental-landscape img { width: 100%; height: auto; aspect-ratio: 1.9; object-fit: cover; }
.rental-landscape figcaption { color: #9fb9c0; font-size: 9px; letter-spacing: .025em; margin-top: 10px; }
.rental-vehicle { padding-top: 4px; min-width: 0; }
.rental-vehicle-top { display: flex; justify-content: space-between; gap: 30px; font-size: 9px; color: #b6cbd1; border-top: 1px solid #ffffff30; padding-top: 14px; margin-bottom: 24px; }
.rental-vehicle-photo { display: block; overflow: hidden; }
.rental-vehicle-photo img { width: 100%; height: auto; aspect-ratio: 1.5; object-fit: contain; transition: transform .7s; }
.rental-vehicle-photo:hover img { transform: scale(1.035); }
.rental-vehicle-caption { display: flex; justify-content: space-between; align-items: start; gap: 30px; padding-top: 23px; }
.rental-vehicle-caption h3 { font: 400 25px/1.3 var(--display); letter-spacing: -.035em; }
.rental-vehicle-caption div>p { font-size: 10px; color: #aec6cd; margin-top: 7px; }
.rental-vehicle-caption div>.rental-studio-caption { margin: 0 0 7px; font-size: 8px; }
.rental-rate { font: 400 28px/1.25 var(--display); letter-spacing: -.035em; text-align: right; color: #ffac64; }
.rental-rate span { display: block; font: 10px var(--body); color: #b1c8cf; letter-spacing: .015em; margin-top: 6px; }
.rental-availability { font-size: 10px; color: #9eb8c1; border-top: 1px solid #ffffff2b; margin-top: 25px; padding-top: 17px; max-width: 100%; }

/* The import story gives the details space to breathe. */
.studio-import { display: grid; grid-template-columns: 1fr 1fr; gap: 115px; align-items: center; padding-top: 118px; padding-bottom: 110px; }
.import-image { padding: 0 0 35px 0; position: relative; }
.import-image img { width: 100%; height: auto; aspect-ratio: .98; object-fit: cover; }
.import-image figcaption { font-size: 10px; color: var(--muted); margin-top: 15px; }
.image-bracket { position: absolute; right: -30px; bottom: 34px; width: 90px; height: 125px; border-right: 1px solid var(--orange); border-bottom: 1px solid var(--orange); pointer-events: none; }
.import-story>.eyebrow { color: var(--muted); margin-bottom: 22px; }
.import-story h2 { font-size: clamp(34px,3.6vw,52px); line-height: 1.16; }
.import-story>p:not(.eyebrow) { font-size: 13px; color: var(--muted); line-height: 1.85; max-width: 370px; margin-top: 23px; }
.import-stages { margin: 29px 0; border-top: 1px solid var(--line); }
.import-stages details { border-bottom: 1px solid var(--line); }
.import-stages summary { list-style: none; display: flex; align-items: center; justify-content: space-between; gap: 25px; padding: 17px 0; cursor: pointer; font-size: 12px; }
.import-stages summary::-webkit-details-marker { display: none; }
.import-stages summary svg { width: 16px; height: 16px; transition: transform .25s; }
.import-stages [open] summary svg { transform: rotate(90deg); }
.import-stages details p { font-size: 12px; line-height: 1.8; color: var(--muted); padding: 0 30px 20px 0; }

/* A short reading pause, rather than another campaign. */
.studio-journal { padding-bottom: 100px; }
.journal-label { display: flex; align-items: center; justify-content: space-between; gap: 30px; border-top: 1px solid var(--line); padding: 25px 0 32px; }
.journal-label>.eyebrow { color: var(--muted); }
.journal-label>span { color: var(--muted); font-size: 11px; }
.journal-feature { display: grid; grid-template-columns: .65fr 1.35fr; gap: 65px; align-items: center; }
.journal-feature>img { width: 100%; height: auto; aspect-ratio: 1.6; object-fit: cover; }
.journal-feature>div>.eyebrow { color: var(--muted); margin-bottom: 13px; font-size: 9px; }
.journal-feature h2 { font-size: clamp(28px,3vw,44px); line-height: 1.2; }
.journal-feature>div>span { display: inline-flex; align-items: center; gap: 45px; margin-top: 20px; font-size: 12px; }
.journal-feature svg { width: 21px; height: 21px; transition: transform .25s; }
.journal-feature:hover svg { transform: translateX(6px); }

/* A compact directory ends the experience with the actual company. */
.site-footer.studio-footer { --muted: #c0d0d3; --line: #ffffff30; background: var(--navy); color: #fff; padding: 0 var(--gutter); border-top: 1px solid var(--line); }
.studio-footer .footer-brand img { filter: brightness(0) invert(1); }
.studio-footer .footer-conversation .studio-button { background: #fff; color: var(--deep); border-color: #fff; }
.studio-footer .footer-conversation .studio-button:hover { background: var(--orange); border-color: var(--orange); }
.footer-conversation { display: flex; justify-content: space-between; align-items: center; padding: 55px 0 48px; border-bottom: 1px solid var(--line); gap: 45px; }
.footer-conversation .eyebrow { font-size: 9px; color: var(--muted); margin-bottom: 13px; text-transform: none; letter-spacing: .015em; }
.footer-conversation h2 { font-size: clamp(32px,3.5vw,52px); line-height: 1.16; }
.footer-directory { display: grid; grid-template-columns: 1.2fr 1fr .8fr .7fr; gap: 55px; padding: 43px 0 40px; }
.footer-brand img { width: 145px; height: 64px; object-fit: contain; }
.footer-brand>p { font-size: 10px; color: var(--muted); line-height: 1.9; margin-top: 17px; }
.footer-directory .eyebrow { color: var(--muted); font-size: 9px; margin-bottom: 16px; }
.footer-address>a { display: block; font-size: 13px; margin-top: 7px; }
.footer-address>a.footer-map { display: inline-flex; align-items: center; gap: 25px; font-size: 11px; margin-top: 17px; }
.footer-map svg { width: 16px; height: 16px; }
.footer-directory nav { display: flex; flex-direction: column; align-items: start; gap: 8px; padding-top: 1px; font-size: 12px; }
.footer-social>a { display: inline-flex; gap: 25px; align-items: center; font-size: 12px; }
.footer-social svg { width: 16px; height: 16px; }
.footer-social>p:last-child { font-size: 10px; color: var(--muted); line-height: 1.9; margin-top: 20px; }
.footer-directory a:hover { color: #ffad65; }
.studio-footer-bottom { display: flex; justify-content: space-between; align-items: center; gap: 30px; border-top: 1px solid var(--line); padding: 22px 0; font-size: 9px; color: var(--muted); }
.studio-footer-bottom>div { display: flex; gap: 28px; }
.studio-footer-bottom button { border: 0; background: none; font: inherit; color: inherit; padding: 0; }

/* The same typography and measures continue through the functional pages. */
.studio .page-intro { padding-top: 52px; padding-bottom: 44px; }
.studio .page-intro h1 { font: 400 clamp(45px,5.5vw,78px)/1.06 var(--display); letter-spacing: -.055em; }
.studio .page-intro .eyebrow { margin-bottom: 23px; font-size: 9px; }
.studio .intro-row>p { max-width: 330px; font-size: 13px; }
.studio .catalogue-toolbar { padding-block: 25px; }
.studio .catalogue>.wrap>.car-grid { gap: 60px 30px; }
.studio .vehicle-overview h1 { font: 400 clamp(40px,4.3vw,65px)/1.05 var(--display); letter-spacing: -.05em; }
.studio .vehicle-overview .car-price { font-size: 33px; }
.studio .section-heading h2 { font: 400 clamp(34px,3.5vw,52px)/1.12 var(--display); letter-spacing: -.05em; }
.studio .gallery-main { aspect-ratio: 1.2; }
.studio .related { background: var(--paper); }
.studio .import-intro { background: var(--deep); color: white; padding-block: 65px; }
.studio .import-intro h1 { font: 400 clamp(53px,5.8vw,86px)/1.04 var(--display); letter-spacing: -.055em; }
.studio .import-intro p,.studio .import-intro figcaption { color: #b9ccd3; }
.studio .import-intro .button { background: var(--orange); color: var(--deep); border-color: var(--orange); }
.studio .process-section h2,.studio .faq-grid h2 { font: 400 46px/1.1 var(--display); letter-spacing: -.05em; }
.studio .process-row h3 { font: 400 25px/1.2 var(--display); }
.studio .about-lead .statement { font: 400 30px/1.4 var(--display); }
.studio .about-banner .copy h2 { font: 400 46px/1.12 var(--display); }
.studio .team-person h3 { font: 500 14px/1.5 var(--body); letter-spacing: 0; }
.studio .contact-direct h2,.studio .contact-form h2 { font: 400 31px/1.2 var(--display); }
.studio .contact-form { padding: 40px; }
.studio .article-intro h1 { font: 400 clamp(40px,5vw,70px)/1.13 var(--display); letter-spacing: -.045em; }
.studio .article-body h2 { font: 400 31px/1.25 var(--display); letter-spacing: -.035em; }
.studio .article-card h2,.studio .article-card:first-child h2 { font: 400 32px/1.2 var(--display); letter-spacing: -.045em; }

@media(min-width:1700px) {
  .studio-rental { padding-inline: max(var(--gutter),calc((100vw - 1440px)/2)); }
  .studio-footer>* { max-width: 1440px; margin-inline: auto; }
}
@media(max-width:1150px) {
  .brandbar { gap: 30px; min-height: 86px; }
  .studio-header .desktop-nav { gap: 23px; }
  .studio-contact { padding-left: 23px; gap: 17px; }
  .campaign-heading { gap: 40px; }
  .campaign-introduction { max-width: 245px; }
  .studio-rental { gap: 65px; }
  .studio-import { gap: 75px; }
  .footer-directory { gap: 35px; }
}
@media(max-width:1000px) {
  .studio-header .desktop-nav { display: none; }
  .studio-header .menu-toggle { display: block; }
  .studio-contact { border: 0; padding-left: 0; }
  .studio-header .mobile-nav.open { display: flex; flex-direction: column; position: fixed; top: 86px; bottom: 0; left: 0; right: 0; overflow-y: auto; padding: 25px var(--gutter) 35px; background: var(--deep); color: white; border: none; }
  .studio-header .mobile-nav>a { display: flex; justify-content: space-between; align-items: center; gap: 30px; font: 400 33px/1.15 var(--display); letter-spacing: -.04em; padding: 17px 0; border-bottom: 1px solid #ffffff24; color: white; }
  .studio-header .mobile-nav>a>svg { width: 25px; height: 25px; color: #99bac4; }
  .studio-header .mobile-nav>a.active { color: #ffac64; }
  .studio-header .nav-mobile-tools { display: flex; gap: 35px; margin-top: 30px; padding-top: 0; font-size: 12px; }
  .campaign-heading h1 { font-size: 75px; }
  .campaign-routes { gap: 25px; }
  .campaign-routes a+a { padding-left: 23px; }
  .studio-collection { padding-top: 75px; padding-bottom: 75px; }
  .collection-heading { gap: 40px; }
  .collection-heading h2 { font-size: 40px; }
  .collection-heading>p { max-width: 245px; font-size: 12px; }
  .collection-toolbar .filter-tabs { gap: 20px; }
  .collection-grid { gap: 27px; }
  .collection-grid .car-info h3 { font-size: 25px; }
  .collection-grid .car-price { font-size: 21px; }
  .collection-grid .car-bottom { gap: 10px; }
  .collection-grid .car-bottom .text-link { gap: 12px; font-size: 10px; }
  .studio-rental { gap: 40px; padding-block: 65px; }
  .rental-editorial h2 { font-size: 43px; }
  .rental-vehicle-photo img { aspect-ratio: 1.03; }
  .rental-vehicle-caption h3 { font-size: 21px; }
  .rental-vehicle-caption div>.rental-studio-caption { margin: 0 0 7px; font-size: 8px; }
.rental-rate { font-size: 24px; }
  .rental-landscape { max-width: 225px; margin-top: 33px; }
  .studio-import { gap: 65px; padding-top: 85px; padding-bottom: 80px; }
  .import-story h2 { font-size: 34px; }
  .import-story>p:not(.eyebrow) { font-size: 12px; }
  .image-bracket { right: -20px; width: 60px; height: 100px; }
  .import-image img { aspect-ratio: .7; }
  .journal-feature { gap: 45px; }
  .journal-feature h2 { font-size: 32px; }
  .footer-directory { grid-template-columns: 1.15fr 1fr 1fr; }
  .footer-social { display: none; }
  .studio .page-intro h1 { font-size: 54px; }
  .studio .car-info h3 { font-size: 25px; }
}
@media(max-width:700px) {
  .brandbar { gap: 22px; }
  .studio-brand img { width: 125px; height: 57px; }
  .studio-contact { font-size: 10px; gap: 13px; }
  .studio-contact svg { width: 17px; height: 17px; }
  .studio-header .menu-toggle { width: 34px; padding: 5px; }
  .campaign-hero { padding-top: 29px; }
  .campaign-heading { grid-template-columns: 1fr; gap: 25px; padding-bottom: 31px; }
  .campaign-heading h1 { font-size: clamp(66px,12vw,88px); margin-top: 17px; }
  .campaign-introduction { justify-self: stretch; max-width: none; display: flex; align-items: center; gap: 20px; padding: 0; }
  .campaign-introduction>p { font-size: 12px; line-height: 1.7; flex: 1; }
  .campaign-introduction>span { display: none; }
  .campaign-introduction .studio-button { margin: 0; width: auto; gap: 20px; padding: 13px 15px; font-size: 10px; min-height: 47px; }
  .campaign-introduction .studio-button svg { width: 19px; height: 19px; }
  .campaign-window { height: 335px; }
  .campaign-photo { object-position: 64% 55%; }
  .campaign-photo[data-scene-photo='detail'] { object-position: 49% 58%; }
  .campaign-photo-caption { left: 16px; right: 16px; bottom: 13px; }
  .campaign-photo-caption>span { display: none; }
  .scene-switch { gap: 19px; }
  .scene-switch button { font-size: 9px; }
  .viewfinder-corner { width: 27px; height: 27px; left: -7px; top: -7px; }
  .campaign-routes { gap: 12px; padding-block: 23px 25px; }
  .campaign-routes a { font-size: 11px; gap: 7px; }
  .campaign-routes a>span { white-space: nowrap; }
  .campaign-routes a+a { padding-left: 12px; }
  .campaign-routes small { display: none; }
  .campaign-routes svg { width: 15px; height: 15px; flex: none; }
  .studio-collection { padding-top: 63px; padding-bottom: 62px; }
  .collection-heading { display: block; }
  .collection-heading h2 { font-size: 36px; }
  .collection-heading .eyebrow { margin-bottom: 16px; }
  .collection-heading>p { max-width: 310px; margin-top: 21px; font-size: 12px; }
  .collection-toolbar { display: block; margin: 30px 0 25px; padding-top: 13px; }
  .collection-count { font-size: 10px; }
  .collection-toolbar .filter-tabs { justify-content: space-between; gap: 16px; margin-top: 1px; }
  .collection-toolbar .filter-tabs button { padding: 12px 0; font-size: 10px; }
  .collection-grid { grid-template-columns: minmax(0,1fr); gap: 34px; }
  .collection-grid .car-media { aspect-ratio: 1.3; }
  .collection-grid .car-info { padding-top: 17px; }
  .collection-grid .car-info h3 { font-size: 27px; }
  .collection-grid .car-bottom .text-link { font-size: 11px; gap: 24px; }
  .collection-grid .car-bottom { margin-top: 17px; padding-top: 13px; }
  .collection-grid .car-price { font-size: 23px; }
  .collection-end { display: block; margin-top: 31px; }
  .collection-end p { font-size: 10px; }
  .collection-end .studio-button { margin-top: 23px; width: 100%; }
  .studio-rental { grid-template-columns: minmax(0,1fr); gap: 40px; padding: 57px var(--gutter); }
  .rental-editorial h2 { font-size: 51px; }
  .rental-editorial>.eyebrow { margin-bottom: 20px; }
  .rental-story-copy { font-size: 12px; margin-top: 23px; }
  .rental-landscape { display: none; }
  .rental-vehicle-top { margin-bottom: 21px; }
  .rental-vehicle-photo img { aspect-ratio: 1.2; }
  .rental-vehicle-caption { gap: 20px; padding-top: 20px; }
  .rental-vehicle-caption h3 { font-size: 22px; }
  .rental-vehicle-caption div>p { font-size: 9px; }
  .rental-vehicle-caption div>.rental-studio-caption { margin: 0 0 7px; font-size: 8px; }
.rental-rate { font-size: 24px; }
  .rental-rate span { font-size: 9px; }
  .rental-availability { margin-top: 22px; line-height: 1.8; }
  .studio-import { grid-template-columns: minmax(0,1fr); gap: 37px; padding-top: 65px; padding-bottom: 65px; }
  .import-image { padding: 0 17px 20px 0; }
  .import-image img { aspect-ratio: 1.2; }
  .image-bracket { bottom: 23px; right: 0; height: 65px; }
  .import-image figcaption { font-size: 9px; }
  .import-story h2 { font-size: 37px; }
  .import-story>.eyebrow { margin-bottom: 17px; }
  .import-story>p:not(.eyebrow) { font-size: 12px; margin-top: 23px; }
  .import-stages { margin: 25px 0; }
  .import-story .studio-button { width: 100%; }
  .studio-journal { padding-bottom: 63px; }
  .journal-label { padding: 22px 0 27px; }
  .journal-label>span { font-size: 10px; }
  .journal-feature { grid-template-columns: minmax(0,1fr); gap: 27px; }
  .journal-feature>img { aspect-ratio: 1.7; }
  .journal-feature h2 { font-size: 31px; }
  .journal-feature>div>.eyebrow { margin-bottom: 13px; }
  .footer-conversation { display: block; padding-block: 40px; }
  .footer-conversation h2 { font-size: 36px; }
  .footer-conversation .eyebrow { max-width: 260px; font-size: 9px; line-height: 1.7; }
  .footer-conversation .studio-button { width: 100%; margin-top: 24px; font-size: 11px; gap: 30px; }
  .footer-directory { grid-template-columns: 1.1fr 1fr; gap: 32px 23px; padding-block: 33px; }
  .footer-brand { grid-column: 1/-1; display: flex; gap: 25px; align-items: center; justify-content: space-between; }
  .footer-brand img { width: 123px; height: 54px; }
  .footer-brand>p { margin: 0; font-size: 9px; }
  .footer-address>a { font-size: 11px; }
  .footer-directory nav { font-size: 11px; }
  .footer-directory .eyebrow { font-size: 8px; }
  .footer-address>a.footer-map { font-size: 10px; gap: 19px; }
  .studio-footer-bottom { align-items: start; flex-direction: column; gap: 15px; padding-block: 20px; font-size: 8px; }
  .studio-footer-bottom>div { justify-content: space-between; width: 100%; gap: 20px; }
  .studio .page-intro { padding-block: 36px; }
  .studio .page-intro h1 { font-size: 42px; }
  .studio .intro-row>p { margin-top: 22px; font-size: 12px; }
  .studio .car-info h3 { font-size: 27px; }
  .studio .vehicle-overview h1 { font-size: 41px; }
  .studio .section-heading h2 { font-size: 33px; }
  .studio .import-intro { padding-block: 42px; }
  .studio .import-intro h1 { font-size: 47px; }
  .studio .process-section h2,.studio .faq-grid h2 { font-size: 37px; }
  .studio .process-row h3 { font-size: 25px; }
  .studio .about-lead .statement { font-size: 24px; }
  .studio .about-banner .copy h2 { font-size: 33px; }
  .studio .contact-form { padding: 26px 21px; }
  .studio .article-intro h1 { font-size: 39px; }
  .studio .article-body h2 { font-size: 27px; }
}
@media(max-width:370px) {
  .brandbar { gap: 13px; }
  .studio-brand img { width: 112px; }
  .studio-contact { gap: 8px; font-size: 9px; }
  .campaign-introduction { gap: 12px; }
  .campaign-introduction>p { font-size: 11px; }
  .campaign-introduction .studio-button { gap: 12px; padding-inline: 11px; }
  .campaign-heading h1 { font-size: 64px; }
  .campaign-routes { gap: 11px; }
  .campaign-routes a+a { padding-left: 11px; }
  .campaign-routes a { font-size: 10px; gap: 7px; }
  .campaign-routes svg { display: none; }
}
@media(prefers-reduced-motion:reduce) {
  .campaign-photo { transition: none; }
}
