/* Britton's own road motif, original-photo presentation and travel idea card. */
:root { --experience-hero:#34434b; --ticket:#eee5d7; --ticket-ink:#293236; --ticket-muted:#5a625e }
html[data-theme="black"] { --experience-hero:#0c1419 }
.signature-hero { position:relative; isolation:isolate; overflow:hidden; background:var(--experience-hero); color:#f5f3ee }
.signature-grid { position:relative; display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:clamp(40px,6vw,96px); padding-block:54px 44px }
.signature-copy { position:relative; z-index:2; padding-bottom:18px }
.signature-copy>.eyebrow { color:#efbc94; font-size:10px; letter-spacing:.16em; display:flex; gap:12px; align-items:center }
.departure-dot { width:6px; height:6px; border-radius:50%; background:#efbc94; box-shadow:0 0 0 5px #efbc9412; flex-shrink:0 }
.signature-copy h1 { margin-top:35px; font-size:clamp(58px,7.15vw,113px); line-height:1.03; letter-spacing:-.065em }
.signature-copy h1 em { color:#efbc94; white-space:nowrap; letter-spacing:-.055em }
.signature-description { max-width:440px; color:#d7dfdf; font-size:17px; line-height:1.8; margin-top:29px }
.signature-actions { display:flex; align-items:center; flex-wrap:wrap; gap:20px 26px; margin-top:33px }
.signature-actions .button { color:#202a30 }
.signature-actions .text-link { color:#f4e9db; font-size:12px }
.departure-line { display:flex; align-items:center; gap:22px; margin-top:46px; color:#c0cdd0 }
.departure-line svg { width:150px; height:42px; overflow:visible; stroke:#c1916e; fill:none; stroke-width:1.1; flex-shrink:0 }
.departure-line svg circle { fill:#c1916e; stroke:none }
.departure-line p { font-size:10px; letter-spacing:.03em; line-height:1.8 }
.departure-line strong { font-weight:500; color:#f0e4d7 }
.signature-photo { position:relative; width:100%; max-width:450px; justify-self:end; padding:16px 0 0 }
.signature-photo-frame { position:relative; border-radius:240px 240px 4px 4px }
.signature-photo-frame::before { content:""; position:absolute; inset:-13px 14px 13px -14px; border:1px solid #c8976d65; border-radius:inherit; z-index:-1 }
.signature-photo img { width:100%; aspect-ratio:3/4; height:auto; object-fit:cover; border-radius:inherit }
.signature-photo figcaption { display:flex; justify-content:space-between; gap:12px; margin-top:16px; color:#c7d1d2; font-size:9px; letter-spacing:.03em }
.signature-photo figcaption>span:first-child { color:#eabd99; text-transform:uppercase; letter-spacing:.16em; flex-shrink:0 }
.signature-seal { position:absolute; left:-57px; bottom:64px; width:128px; height:128px; border-radius:50%; background:#e8b992; color:#253138; border:6px solid var(--experience-hero); outline:1px solid #e8b99255; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:5px; transform:rotate(-9deg) }
.signature-seal span { font-size:8px; text-transform:uppercase; letter-spacing:.1em }
.signature-seal strong { font:italic 25px/1 Georgia,serif; text-align:center }
.hero-wordmark { position:absolute; left:2vw; bottom:43px; z-index:-1; color:transparent; -webkit-text-stroke:1px #96a5a620; font-size:clamp(100px,22vw,350px); line-height:.9; letter-spacing:-.075em; font-weight:800; pointer-events:none; user-select:none }
.departure-nav { display:grid; grid-template-columns:repeat(3,1fr); position:relative; z-index:2 }
.departure-nav a { display:flex; align-items:center; gap:15px; padding:21px 24px; border-top:1px solid #bdcec62d; font-size:12px; transition:background .2s }
.departure-nav a:first-child { padding-left:0 }
.departure-nav a+a { border-left:1px solid #bdcec62d }
.departure-nav span { font:10px/1.4 monospace; color:#d5a482 }
.departure-nav b { font-size:20px; font-weight:400; margin-left:auto; color:#d5a482 }
.departure-nav a:hover { background:#ffffff06; color:#ecc3a3 }
.signature-hero+.planner-shell { margin-top:0; padding-top:26px }
.camper-card .card-heading h3 { font-family:Georgia,serif; font-weight:400; letter-spacing:-.06em }
.camper-card .card-number { font:italic 26px/1 Georgia,serif }
.twins-note { display:grid; grid-template-columns:.8fr 1.2fr; gap:36px; border-block:1px solid var(--line); padding:26px 0; margin-top:34px }
.twins-note h3 { font:italic 26px/1.2 Georgia,serif; color:var(--copper); letter-spacing:-.03em }
.twins-note p { font-size:13px; color:var(--muted); max-width:620px }
.twins-plates { display:flex; flex-wrap:wrap; gap:10px; margin-top:13px }
.twins-plates span { font:11px/1.4 monospace; color:var(--ink); border:1px solid var(--line); padding:7px 10px }
.studio-section { background:var(--paper); border-block:1px solid var(--line) }
.studio-tabs { display:grid; grid-template-columns:repeat(4,1fr); border-block:1px solid var(--line); margin-bottom:34px }
.studio-tab { display:grid; grid-template-columns:auto 1fr; column-gap:13px; align-items:center; padding:22px 25px; position:relative; transition:background .2s }
.studio-tab+.studio-tab { border-left:1px solid var(--line) }
.studio-tab>span { font:11px/1.4 monospace; color:var(--muted); grid-row:span 2 }
.studio-tab { font:27px/1.1 Georgia,serif; letter-spacing:-.025em }
.studio-tab small { font:9px/1.5 Arial,sans-serif; text-transform:uppercase; letter-spacing:.13em; color:var(--muted); margin-top:6px }
.studio-tab[aria-selected="true"]::after { content:""; position:absolute; bottom:-1px; inset-inline:0; height:3px; background:var(--metal) }
.studio-tab[aria-selected="true"],.studio-tab:hover { background:var(--ground) }
.studio-tab[aria-selected="true"]>span { color:var(--copper) }
.studio-panel { display:grid; grid-template-columns:.75fr 1.25fr; column-gap:7vw; row-gap:20px; align-items:center }
.studio-profile { position:relative; padding-block:22px }
.studio-index { position:absolute; top:-11px; right:3px; font:130px/1 Georgia,serif; color:var(--ink); opacity:.055; pointer-events:none }
.studio-profile h3 { font:64px/1.05 Georgia,serif; letter-spacing:-.055em; margin-top:25px }
.studio-profile h3 em { display:block; font:italic 26px/1.2 Georgia,serif; letter-spacing:-.025em; color:var(--copper); margin-top:14px }
.studio-model { font-size:11px; color:var(--muted); margin-top:24px; letter-spacing:.04em }
.studio-description { max-width:395px; font-size:14px; margin-top:18px; line-height:1.85; color:var(--muted) }
.studio-specs { display:flex; flex-wrap:wrap; gap:10px; margin-top:24px }
.studio-specs>span { font-size:10px; padding:7px 10px; border:1px solid var(--line); color:var(--ink) }
.studio-specs>span:empty { display:none }
.studio-profile .text-link { margin-top:25px; font-size:12px }
.studio-stage { height:460px; position:relative; background:var(--ground); border:1px solid var(--line); padding:24px; overflow:hidden }
.studio-stage::before,.studio-stage::after { content:""; position:absolute; width:48px; height:48px; border:1px solid var(--copper); pointer-events:none; opacity:.5 }
.studio-stage::before { top:12px; left:12px; border-right:0; border-bottom:0 }
.studio-stage::after { bottom:12px; right:12px; border-left:0; border-top:0 }
.studio-original { position:absolute; left:24px; top:25px; z-index:1; font-size:8px; letter-spacing:.12em; text-transform:uppercase; color:var(--ink); background:var(--paper); border:1px solid var(--line); padding:6px 9px; pointer-events:none }
.studio-enlarge { display:block; height:100%; position:relative }
.studio-main-photo { width:100%; height:100%; object-fit:contain }
.studio-enlarge-mark { position:absolute; bottom:4px; right:4px; background:var(--paper); border:1px solid var(--line); display:grid; place-items:center; width:38px; height:38px; color:var(--ink); font-size:22px }
.studio-caption { margin-block:10px 18px; font-size:10px; line-height:1.6; color:var(--muted); min-height:16px }
.studio-thumbnails { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px }
.studio-thumbnail { display:grid; grid-template-columns:47px 1fr; align-items:center; gap:10px; background:var(--ground); border:1px solid var(--line); padding:7px; min-height:68px; font-size:10px; line-height:1.3; transition:border-color .2s }
.studio-thumbnail img { width:47px; height:50px; object-fit:cover }
.studio-thumbnail span { overflow-wrap:anywhere }
.studio-thumbnail[aria-current="true"] { border-color:var(--copper); box-shadow:inset 0 -2px 0 var(--copper) }
.studio-thumbnail:hover { border-color:var(--copper) }
.studio-note { grid-column:1/-1; font-size:11px; line-height:1.75; color:var(--muted); border-top:1px solid var(--line); padding-top:16px; max-width:100% }
.compass-layout { display:grid; grid-template-columns:1.03fr 1fr; align-items:start; gap:clamp(35px,6vw,96px); padding-top:17px }
.compass-controls legend { font-size:13px; font-weight:650; padding:0; margin-bottom:18px }
.compass-controls fieldset { min-width:0 }
.compass-controls legend>span { color:var(--copper); font:11px monospace; padding-right:13px }
.mood-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px }
.mood-choice { position:relative; cursor:pointer; display:block; min-width:0 }
.mood-choice input,.choice-pills input { position:absolute; opacity:0; width:1px; height:1px }
.mood-choice>span { display:flex; flex-direction:column; align-items:start; gap:18px; min-height:150px; padding:21px 15px 17px; background:var(--paper); border:1px solid var(--line); transition:background .2s,border-color .2s }
.mood-choice strong { font-size:12px; line-height:1.4; letter-spacing:-.02em; font-weight:650 }
.mood-choice small { font:8px/1.4 monospace; color:var(--muted); margin-top:auto }
.mood-choice .icon { width:28px; height:28px }
.mood-choice input:checked+span { border-color:var(--copper); box-shadow:inset 0 -3px 0 var(--copper) }
.mood-choice:hover>span { border-color:var(--copper) }
.mood-choice input:focus-visible+span,.choice-pills input:focus-visible+span { outline:3px solid var(--copper); outline-offset:4px }
.compass-options { margin-top:32px }
.choice-pills { display:flex; gap:9px; flex-wrap:wrap }
.choice-pills label { cursor:pointer; position:relative; flex:1; min-width:130px }
.choice-pills span { display:block; text-align:center; background:var(--paper); border:1px solid var(--line); padding:12px 19px; font-size:13px; min-height:46px }
.choice-pills input:checked+span { border-color:var(--copper); box-shadow:inset 0 -2px 0 var(--copper) }
.choice-pills span:hover { border-color:var(--copper) }
.compass-options>.micro { margin-top:9px; font-size:11px }
.compass-dial { display:flex; align-items:center; gap:25px; border-top:1px solid var(--line); padding-top:23px; margin-top:31px; position:relative; color:var(--muted) }
.dial-label { position:absolute; top:34px; right:0; font:8px monospace; text-transform:uppercase; letter-spacing:.08em; color:var(--copper) }
.dial-ring { position:relative; width:125px; height:125px; border:1px solid var(--line); border-radius:50%; background:repeating-conic-gradient(from 0deg,var(--line) 0deg .7deg,transparent .7deg 30deg); flex-shrink:0 }
.dial-ring::after { content:""; position:absolute; inset:7px; border-radius:50%; background:var(--ground); border:1px solid var(--line) }
.dial-ring>span { position:absolute; z-index:2; font:8px monospace; color:var(--muted) }
.dial-north { top:8px; left:59px }.dial-east { right:10px; top:59px }.dial-south { bottom:8px; left:59px }.dial-west { left:8px; top:59px }
.dial-needle { position:absolute; inset:17px; z-index:1; width:91px; height:91px; transform:rotate(-30deg); transition:transform .7s cubic-bezier(.22,.68,.22,1); stroke:var(--copper); stroke-width:.6 }
.dial-needle>path:first-child { fill:var(--copper) }.dial-needle>path:nth-child(2) { fill:transparent }.dial-needle circle { fill:var(--ground) }
[data-compass][data-mood="mountains"] .dial-needle { transform:rotate(35deg) }
[data-compass][data-mood="weekend"] .dial-needle { transform:rotate(110deg) }
.compass-dial>p { font:italic 18px/1.45 Georgia,serif; margin-top:14px; color:var(--muted) }
.compass-dial>p strong { color:var(--copper); font-weight:400 }
.departure-card { background:var(--ticket); color:var(--ticket-ink); border:1px solid #ab907a65; box-shadow:7px 9px 0 #7f624714,0 14px 35px #0000000b; transform:rotate(1deg); position:relative }
.departure-card-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; padding:20px 28px; border-bottom:1px solid #9d88713a; font:8px/1.5 monospace; letter-spacing:.1em }
.departure-card-head>span:first-child { font-weight:700; color:#835336 }
.departure-card-body { padding:26px 28px 23px }
.card-origin { font:9px/1.5 monospace; color:var(--ticket-muted); display:flex; align-items:center; justify-content:space-between; gap:15px }
.card-origin>span { color:#8f573a; font-size:17px }
.compass-story h3 { font:italic clamp(32px,3.2vw,47px)/1.12 Georgia,serif; letter-spacing:-.055em; margin-top:23px; max-width:420px; text-wrap:balance }
.compass-story p { color:var(--ticket-muted); font-size:12px; line-height:1.8; margin-top:17px; max-width:365px }
.ticket-perforation { height:1px; border-top:1px dashed #92796170; margin-block:24px; position:relative }
.ticket-perforation::before,.ticket-perforation::after { content:""; position:absolute; top:-10px; width:20px; height:20px; background:var(--ground); border-radius:50% }
.ticket-perforation::before { left:-39px }.ticket-perforation::after { right:-39px }
.candidate-label { font-size:10px; color:var(--ticket-muted); margin-bottom:13px; font-weight:650 }
.compass-candidates { display:grid; gap:9px }
.compass-candidate { display:grid; grid-template-columns:88px 1fr; gap:17px; padding:12px; border:1px solid #92796145; background:#f8f2e8; transition:border-color .2s,background .2s; color:var(--ticket-ink) }
.compass-candidate:hover { border-color:#965b37; background:#fffaf3 }
.compass-candidate:focus-visible { outline-color:#965b37 }
.compass-candidate>img { width:88px; height:116px; object-fit:cover; object-position:center 75%; align-self:center }
.candidate-info { display:flex; flex-direction:column; align-items:start; justify-content:center; gap:6px }
.candidate-info>strong { font:26px/1.1 Georgia,serif; letter-spacing:-.04em }
.candidate-info>small { font-size:9px; color:var(--ticket-muted) }
.candidate-price { font-size:10px; color:var(--ticket-muted) }
.candidate-action { color:#865235; font-size:10px; font-weight:700; margin-top:3px; display:flex; align-items:center; gap:13px }
.candidate-action>span { font-size:18px; font-weight:400 }
.compass-price-note { font-size:9px; color:var(--ticket-muted); line-height:1.8; margin-top:16px }
.ticket-note { font-size:10px; line-height:1.6; margin-top:13px; padding-top:12px; border-top:1px solid #92796138; color:var(--ticket-muted) }
.compass-status { font:9px/1.6 monospace; color:#865235; margin-top:9px }
.departure-card-foot { display:flex; align-items:center; justify-content:space-between; padding:15px 28px; border-top:1px solid #92796138; font:9px/1.5 monospace; color:var(--ticket-muted) }
.departure-card-foot>span:last-child { font:23px/1 Georgia,serif; color:#865235 }
.detail-intro h1 { font-family:Georgia,serif; font-weight:400 }
.detail-photo { border-radius:120px 120px 3px 3px; overflow:hidden }
.detail-photo img { object-position:center 82% }
@media(min-width:1560px) { .signature-grid { gap:110px; padding-block:65px 52px }.signature-photo { max-width:470px } }
@media(max-width:1150px) {
  .signature-grid { gap:40px; grid-template-columns:1.08fr .92fr }
  .signature-copy h1 { font-size:clamp(52px,7.1vw,80px) }
  .signature-description { font-size:15px }
  .signature-actions { gap:12px }.signature-actions .button { font-size:12px; padding-inline:18px }
  .signature-seal { width:105px; height:105px; left:-33px; bottom:57px }.signature-seal strong { font-size:22px }
  .signature-photo figcaption { flex-direction:column; gap:5px }
  .studio-panel { gap:30px }.studio-thumbnails { gap:7px }
  .studio-thumbnail { grid-template-columns:1fr; padding:6px; text-align:center; font-size:9px }.studio-thumbnail img { width:100%; height:58px }
  .studio-profile h3 { font-size:54px }.studio-profile h3 em { font-size:23px }
  .compass-layout { gap:35px }.mood-choice>span { padding:18px 12px; min-height:151px }.mood-choice strong { font-size:11px }
  .dial-label { display:none }.compass-dial { gap:18px }
}
@media(max-width:900px) {
  .signature-grid { grid-template-columns:1fr 1fr; padding-block:45px 36px; gap:30px }
  .signature-copy h1 { font-size:clamp(49px,6.8vw,66px) }.signature-copy>.eyebrow { font-size:8px; letter-spacing:.12em }
  .signature-description { font-size:14px; margin-top:20px }.signature-actions { margin-top:24px }.signature-actions .text-link { font-size:11px }
  .departure-line { gap:10px; margin-top:24px }.departure-line svg { width:110px }.departure-line p { font-size:9px }
  .signature-seal { width:94px; height:94px; left:-25px; bottom:70px; border-width:4px }
  .departure-nav a { padding-inline:18px; font-size:10px; gap:10px }
  .studio-tab { padding:20px 15px; font-size:23px }.studio-tab>span { font-size:9px }
  .studio-panel { grid-template-columns:.85fr 1.15fr; gap:26px }.studio-stage { height:390px; padding:18px }
  .compass-layout { grid-template-columns:1fr; gap:38px }
  .compass-controls { display:grid; grid-template-columns:1fr 1fr; gap:0 25px }.mood-options { grid-column:1/-1 }.compass-dial { grid-column:1/-1; margin-top:25px }
  .mood-choice>span { min-height:134px; padding:20px }.mood-choice strong { font-size:13px }
  .departure-card { transform:none; max-width:650px; width:100%; justify-self:center }
  .compass-story h3 { font-size:43px }.compass-candidates { grid-template-columns:1fr 1fr }.compass-candidate { grid-template-columns:75px 1fr; gap:12px }.compass-candidate>img { width:75px; height:116px }
  .compass-candidates[data-count="1"] { grid-template-columns:1fr }
  .candidate-info>strong { font-size:25px }.candidate-price { font-size:9px }
}
@media(max-width:760px) {
  .signature-grid { grid-template-columns:1fr; gap:31px; padding-block:37px 27px }
  .signature-copy { padding-bottom:0 }.signature-copy>.eyebrow { font-size:9px; letter-spacing:.11em }
  .signature-copy h1 { margin-top:24px; font-size:clamp(51px,10vw,76px) }.signature-description { max-width:410px; font-size:15px; margin-top:22px }
  .signature-actions { margin-top:25px; gap:16px 23px }.signature-actions .button { min-height:50px; padding-inline:22px; font-size:13px }.signature-actions .text-link { font-size:12px }
  .departure-line { display:none }
  .signature-photo { max-width:440px; justify-self:center; padding-top:12px; width:calc(100% - 28px) }
  .signature-photo img { max-height:430px; aspect-ratio:1.03; object-position:center 86% }
  .signature-photo-frame { border-radius:180px 180px 3px 3px }
  .signature-seal { width:104px; height:104px; left:-23px; bottom:54px }.signature-seal span { font-size:7px }
  .signature-photo figcaption { flex-direction:row; font-size:8px }
  .hero-wordmark { bottom:55px; left:0; font-size:27vw }
  .departure-nav { gap:0 }.departure-nav a { display:grid; grid-template-columns:1fr auto; padding:15px 12px; font-size:10px; line-height:1.4; gap:7px }
  .departure-nav a>span { grid-column:1/-1 }.departure-nav b { font-size:14px }.departure-nav a:first-child { padding-left:0 }
  .signature-hero+.planner-shell { padding-top:22px }
  .twins-note { grid-template-columns:1fr; gap:14px; margin-top:25px; padding-block:22px }.twins-note h3 { font-size:23px }.twins-note p { font-size:12px }
  .studio-tabs { margin-bottom:25px }.studio-tab { font-size:23px; padding:18px 12px; column-gap:9px }.studio-tab>span { display:none }.studio-tab small { font-size:8px; letter-spacing:.08em }
  .studio-panel { grid-template-columns:1fr; row-gap:25px }
  .studio-profile { display:grid; grid-template-columns:1fr auto; gap:0 18px; padding-block:0 }
  .studio-profile .eyebrow { grid-column:1/-1 }.studio-profile h3 { grid-column:1/-1; font-size:48px; margin-top:18px }.studio-profile h3 em { font-size:23px; margin-top:11px }
  .studio-model { grid-column:1/-1; margin-top:18px; font-size:10px }.studio-description { grid-column:1/-1; max-width:560px; margin-top:13px; font-size:13px }
  .studio-specs { margin-top:19px; gap:7px; grid-column:1/-1 }.studio-profile .text-link { margin-top:13px; justify-self:start; grid-column:1/-1 }
  .studio-index { font-size:115px; top:-9px }.studio-stage { height:380px; padding:20px }.studio-note { font-size:10px; padding-top:18px }
  .studio-thumbnails { gap:9px }.studio-thumbnail { padding:7px; min-height:98px; font-size:10px; gap:7px }.studio-thumbnail img { height:72px }.studio-caption { font-size:9px; margin-bottom:15px }
  .compass-layout { padding-top:3px; gap:32px }.compass-controls { gap:0 18px }.compass-options { margin-top:27px }
  .compass-controls legend { font-size:12px; margin-bottom:14px }.compass-controls legend>span { padding-right:8px }
  .mood-choice>span { padding:17px 13px; min-height:138px; gap:14px }.mood-choice strong { font-size:12px }.mood-choice small { font-size:8px }
  .choice-pills { gap:7px }.choice-pills label { min-width:90px }.choice-pills span { font-size:12px; padding-inline:12px }
  .compass-options>.micro { font-size:10px }.compass-dial { padding-top:20px; gap:25px }.dial-ring { width:110px; height:110px }.dial-needle { inset:15px; width:80px; height:80px }.dial-ring>span { font-size:7px }.dial-north,.dial-south { left:52px }.dial-east,.dial-west { top:52px }.compass-dial>p { font-size:17px }
  .departure-card-head { padding:18px 25px; font-size:8px }.departure-card-body { padding:24px 25px 23px }.compass-story h3 { font-size:39px }
  .ticket-perforation::before { left:-36px }.ticket-perforation::after { right:-36px }.departure-card-foot { padding-inline:25px }
  .compass-candidates { grid-template-columns:1fr }.compass-candidate { grid-template-columns:83px 1fr; gap:17px }.compass-candidate>img { width:83px; height:111px }.candidate-price { font-size:10px }
  .detail-photo { border-radius:70px 70px 3px 3px }
}
@media(max-width:520px) {
  .signature-copy h1 { font-size:clamp(42px,11.5vw,60px) }.signature-copy>.eyebrow { font-size:8px; letter-spacing:.09em }.signature-description { font-size:14px }
  .signature-actions { gap:14px 19px }.signature-actions .text-link { font-size:11px }.signature-actions .button { padding-inline:18px; font-size:12px }
  .signature-photo img { height:340px; aspect-ratio:auto; object-position:center 85% }.signature-photo-frame { border-radius:150px 150px 3px 3px }
  .signature-seal { width:91px; height:91px; bottom:59px; left:-20px }.signature-seal strong { font-size:21px }.signature-photo figcaption { flex-direction:column; gap:4px }
  .departure-nav a { font-size:9px; padding:15px 11px; gap:6px }.departure-nav span { font-size:9px }
  .studio-tabs { grid-template-columns:1fr 1fr }.studio-tab { grid-template-columns:auto 1fr; padding:16px 18px; font-size:24px }.studio-tab:nth-child(3) { border-left:0; border-top:1px solid var(--line) }.studio-tab:nth-child(4) { border-top:1px solid var(--line) }.studio-tab>span { display:block; font-size:9px }
  .studio-stage { height:360px; padding:18px }.studio-original { top:20px; left:22px; font-size:7px }
  .studio-thumbnail { padding:5px; font-size:9px; min-height:89px }.studio-thumbnail img { height:60px }.studio-profile h3 { font-size:45px }
  .compass-controls { grid-template-columns:1fr; gap:0 }.compass-controls legend { font-size:13px }.compass-controls legend>span { padding-right:12px }
  .mood-grid { gap:7px }.mood-choice>span { padding:16px 10px; min-height:138px }.mood-choice strong { font-size:11px }.mood-choice small { font-size:7px; letter-spacing:-.02em }
  .compass-dial { gap:24px; margin-top:25px }.compass-story h3 { font-size:35px }.departure-card-head { padding-inline:20px; letter-spacing:.055em }
  .departure-card-body { padding:22px 20px }.card-origin { font-size:8px }.ticket-perforation::before { left:-31px }.ticket-perforation::after { right:-31px }
  .compass-candidate { padding:10px; gap:12px; grid-template-columns:74px 1fr }.compass-candidate>img { width:74px; height:107px }.candidate-info>strong { font-size:25px }.candidate-price { font-size:9px }.candidate-action { font-size:10px; gap:11px }
  .departure-card-foot { padding-inline:20px; font-size:8px }.compass-price-note { font-size:9px }
}
@media(max-width:350px) {
  .signature-copy h1 { font-size:38px }.signature-copy>.eyebrow { font-size:7px }.signature-photo img { height:305px }
  .departure-nav a { font-size:8px; padding-inline:8px }.studio-thumbnail span { font-size:8px }
  .mood-choice>span { padding-inline:8px }.mood-choice strong { font-size:10px }.mood-choice small { font-size:6px }
  .departure-card-head { flex-direction:column; align-items:start; gap:6px }.compass-story h3 { font-size:31px }
  .compass-candidate { grid-template-columns:59px 1fr; gap:9px; padding:9px }.compass-candidate>img { width:59px; height:102px }.candidate-info>strong { font-size:23px }
}
@media(prefers-reduced-motion:reduce) {
  .dial-needle,.studio-tab,.studio-thumbnail,.compass-candidate,.departure-nav a { transition:none }
}
@media print {
  .signature-hero { background:white; color:black }.signature-copy h1 em { color:#8c4d2d }.signature-description { color:black }
  .signature-photo,.departure-nav,.hero-wordmark,.signature-actions,.departure-line,.compass-dial { display:none }
  .signature-grid { display:block;padding-block:25px }.studio-stage { height:280px }.studio-tabs { display:none }
  .compass-layout,.studio-panel { grid-template-columns:1fr }.departure-card { box-shadow:none;transform:none }
}
