/* Refinements to the selected cinematic hero only. */
.cinematic-refined #row2 .avatar-photo{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover}
.cinematic-refined #travellers .avatar-photo{object-position:80% 48%}
.cinematic-refined #creators .avatar-photo{object-position:50% 40%}
.cinematic-refined #brands .avatar-photo{object-position:20% 35%}
.cinematic-refined #motion .editorial-caption{bottom:36px}
.cinematic-refined #bar{height:104px!important;padding:0 3.3%!important;border-bottom:1px solid #b72e39;display:flex;gap:30px;align-items:center;justify-content:space-between;overflow:visible}
.cinematic-refined #panel,.cinematic-refined #motion{top:104px!important}
.rsp-main-header .brand{text-decoration:none;display:flex;flex-direction:column;flex:0 0 auto;color:#b72e39}
.rsp-main-header .brand-main{font:400 43px/.96 Georgia,serif;letter-spacing:-2.8px}
.rsp-main-header .brand-sub{font:600 10px/1.2 Inter,sans-serif;letter-spacing:2.4px;text-transform:uppercase;margin-top:9px}
.rsp-main-header .brand-sub b{font-weight:600}
.rsp-main-header #primary-navigation{display:flex;align-items:center;justify-content:center;gap:26px;margin-left:auto;margin-right:auto}
.rsp-main-header #primary-navigation a{font:400 13px/1.5 Inter,sans-serif;text-decoration:none;white-space:nowrap;padding:8px 0;color:#191b1c;border-bottom:1px solid transparent}
.rsp-main-header #primary-navigation a[aria-current=page]{border-bottom-color:#b72e39}
.rsp-main-header #primary-navigation a:hover{color:#b72e39}
.rsp-main-header .social-links{display:flex;align-items:center;gap:18px;flex:0 0 auto}
.rsp-main-header .social-links a{display:flex;align-items:center;padding:6px 0;color:#191b1c}
.rsp-main-header .social-links svg{width:18px;height:18px;fill:currentColor}
.rsp-main-header .social-links svg[fill=none]{fill:none}
.rsp-main-header .header-start{font:500 12px/1.4 Inter,sans-serif;background:#b72e39;color:#f9f9f6;padding:14px 22px;text-decoration:none;white-space:nowrap;flex:0 0 auto}
.rsp-main-header .header-start:hover{background:#9e2530;color:white}
.rsp-main-header .nav-toggle{display:none;background:none;border:0;color:#191b1c;padding:8px;cursor:pointer}
.rsp-main-header a:focus-visible,.rsp-main-header button:focus-visible{outline:2px solid #b72e39;outline-offset:5px}
@media(max-width:1300px){.rsp-main-header .social-links{display:none}.rsp-main-header #primary-navigation{gap:23px}.cinematic-refined #bar{gap:24px}}
@media(max-width:1000px){
 .cinematic-refined #bar{padding:0 24px!important;gap:16px}
 .rsp-main-header .brand-main{font-size:35px}
 .rsp-main-header .brand-sub{font-size:8px;letter-spacing:2px}
 .rsp-main-header .header-start{margin-left:auto}
 .rsp-main-header .nav-toggle{display:flex;align-items:center;gap:8px;order:4;font:10px Inter,sans-serif}
 .rsp-main-header .nav-toggle svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5}
 .rsp-main-header #primary-navigation{display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:18px 24px 24px;box-sizing:border-box;background:#f9f9f6;border-bottom:1px solid #b72e39;box-shadow:0 12px 18px #0000000c;align-items:stretch;gap:0;z-index:20}
 .rsp-main-header #primary-navigation.is-open{display:flex;flex-direction:column}
 .rsp-main-header #primary-navigation a{padding:13px 0;font-size:14px}
}
@media(max-width:700px){
 .cinematic-refined #bar{height:90px!important;padding:0 20px!important;gap:12px}
 .cinematic-refined #panel{padding-top:126px!important}
 .cinematic-refined #motion{top:0!important}
 .rsp-main-header .brand-main{font-size:30px;letter-spacing:-1.8px}
 .rsp-main-header .brand-sub{font-size:7px;letter-spacing:1.8px;margin-top:7px}
 .rsp-main-header .header-start{font-size:10px;padding:12px 14px}
 .rsp-main-header .nav-toggle{padding:6px 0}
 .rsp-main-header .nav-toggle>span{display:none}
 .cinematic-refined #motion .editorial-caption{bottom:32px}
}

/* Keep all three square photographs equal despite the original column padding. */
.cinematic-refined #row2 .cols{grid-template-columns:minmax(0,1fr) minmax(0,calc((100% + 88px) / 3)) minmax(0,1fr)}

/* RSP2 comment-alert colours: brand red and ink, with no header image. */
.cinematic-refined #row2 .strip{background:var(--rsp-red)!important;color:#fff;border-top-color:var(--rsp-red)}
.cinematic-refined #rowa .dhero{background:var(--rsp-ink)!important;color:#fff}
.cinematic-refined #rowa .dhero h3,.cinematic-refined #rowa .dhero .kpi b{color:#fff}
.cinematic-refined #rowa .dhero p,.cinematic-refined #rowa .dhero .kpi i{color:#e2e3e1}
.cinematic-refined #rowa .dhero .kpi .bar{background:#ffffff40}
.cinematic-refined #rowa .cats button{color:var(--rsp-ink)}
.cinematic-refined #rowa .cats button:hover,.cinematic-refined #rowa .cats button:focus-visible,.cinematic-refined #rowa .cats button[aria-selected="true"]{background:var(--rsp-red);border-color:var(--rsp-red);color:#fff}
.cinematic-refined #rowa .cats button:focus-visible{outline:2px solid var(--rsp-ink);outline-offset:2px}

/* Soft neutral surround keeps the white demo cards distinct. */
.cinematic-refined #rowa .frame{background:#eeefec}
.cinematic-refined #rowa .settings,.cinematic-refined #rowa .comment,.cinematic-refined #rowa .settings textarea,.cinematic-refined #rowa .settings input,.cinematic-refined #rowa .settings select{background:#fff}

.cinematic-refined #rowa .sents button.on{border-bottom-color:var(--rsp-red)}

.cinematic-refined #row3b .report-photo{height:auto;aspect-ratio:4 / 3;object-fit:cover}
.cinematic-refined #row3b .tile:nth-child(2) .report-photo{object-position:50% 55%}

/* Preserve the original WSS comparison row without a filled panel. */
.cinematic-refined #row3b .foot{background:transparent}

.cinematic-refined #row3 .strip{background:var(--rsp-ink);color:#fff;border-top-color:var(--rsp-ink)}
.cinematic-refined #row3 .strip .cta-btn{background:var(--rsp-red);color:#fff}
.cinematic-refined #row3 .strip .cta-btn:hover{background:var(--rsp-red);color:#fff;box-shadow:inset 0 0 0 2px #ffffff80}

.cinematic-refined #row3b .strip{background:var(--rsp-red);color:#fff;border-top-color:var(--rsp-red)}
.cinematic-refined #row3b .strip span{color:#fff!important}
.cinematic-refined #row5 .ex,.cinematic-refined #row5 a.ex:hover{background:var(--rsp-slate);color:#fff}
.cinematic-refined #row5 .ex h3,.cinematic-refined #row5 a.ex:hover h3,.cinematic-refined #row5 .ex .amount,.cinematic-refined #row5 .ex .count{color:#fff}

/* Keep the YouTube mark separate from the FAQ help panel. */
.cinematic-refined #row6 .side{background:none;padding:0}
.cinematic-refined #row6 .side .mark{margin:0 0 26px}
.cinematic-refined #row6 .side .note{background:#eeefec;color:var(--rsp-ink);padding:24px;border-left-color:var(--rsp-red)}
.cinematic-refined #row6 .side .note b{color:var(--rsp-ink)}

/* Brand-red report buttons and card outlines on hover. */
.cinematic-refined #row3b .tile .open{background:var(--rsp-ink);border-color:var(--rsp-ink);color:#fff}
.cinematic-refined #row3b .tile:hover,.cinematic-refined #row3b .tile:focus-within{border-color:var(--rsp-red)}



.cinematic-refined #row3b .tile:is(:hover,:focus-within) .open{background:var(--rsp-red);border-color:var(--rsp-red);color:#fff}
.cinematic-refined #row3b .tiles .tile:first-child .open::before{background:#ff7b85;box-shadow:0 0 0 3px #ff7b8540}
.cinematic-refined #row3b .tiles .tile:first-child:is(:hover,:focus-within) .open::before{background:#fff;box-shadow:0 0 0 3px #ffffff40}

.cinematic-refined #row5 a.ex:hover,.cinematic-refined #row5 a.ex:focus-visible{background:#777f80;color:#fff}

.cinematic-refined #row5 a.ex,.cinematic-refined #row5 a.ex:hover,.cinematic-refined #row5 a.ex:focus-visible{border-left-color:var(--rsp-red)}

.cinematic-refined #row5 .head .note{background:#eeefec;border-left-color:var(--rsp-red)}

.cinematic-refined #row3b .head .note{background:#eeefec;border-left-color:var(--rsp-red)}

/* Match the original WSS desktop text-panel width and content gutter. */
@media(min-width:1101px){
 .cinematic-refined #panel{width:calc(var(--m) + 496px)!important;padding-left:calc(var(--m) + 56px)!important;padding-right:56px!important}
 .cinematic-refined #motion{left:calc(var(--m) + 496px)!important}
}

/* Travel research sign-up copy, using the existing two-plan WSS arrangement. */
.cinematic-refined .sin{width:min(1200px,100%);padding:40px 44px 34px;max-height:calc(100dvh - 48px);overflow:auto}
.cinematic-refined .sin .rule{background:var(--rsp-red)}
.cinematic-refined .sin .eyebrow{color:var(--rsp-red)}
.cinematic-refined .sin h2{font-size:40px;margin-bottom:24px}
.cinematic-refined .sin .travel-intro{font:17px/1.6 Georgia,serif;margin:0 0 30px;color:var(--rsp-ink)}
.cinematic-refined .travel-plans{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:30px}
.cinematic-refined .travel-plan{border:1px solid #d8d9d5;padding:24px}
.cinematic-refined .travel-plan:first-child{border-color:var(--rsp-red);background:#eeefec}
.cinematic-refined .travel-plan h3{font:23px/1.25 Georgia,serif;margin:0 0 12px}
.cinematic-refined .travel-plan p{font:16px/1.5 Georgia,serif;margin:0 0 10px}
.cinematic-refined .travel-plan .api-note{font-size:13px;color:var(--rsp-slate)}
.cinematic-refined .travel-plan .plan-price{font-size:30px;margin:14px 0 22px}
.cinematic-refined .plan-price small{font:11px Inter,sans-serif;color:var(--rsp-slate)}
.cinematic-refined .travel-plan ul{margin:0;padding-left:20px}
.cinematic-refined .sin .travel-plan li{display:list-item;border:0;padding:5px 0;font:16px/1.5 Georgia,serif}
.cinematic-refined .sin .gbtn{max-width:400px;margin:0 auto 16px}
.cinematic-refined .sin .consent,.cinematic-refined .sin .msg{margin-left:0;text-align:center}
@media(max-width:700px){.cinematic-refined .travel-plans{grid-template-columns:1fr}.cinematic-refined .sin h2{font-size:30px}.cinematic-refined .sin{max-height:calc(100dvh - 24px)}}

.cinematic-refined .sin .billing-note{font:12px/1.6 Inter,sans-serif;color:var(--rsp-slate);text-align:center;margin:12px 0 0}

/* Design review: use the watcher's 6px corners throughout the mockup. */
.cinematic-refined{--rsp-corner:6px}
.cinematic-refined :is(.note,.mini,.tile,.ex,.mock,.file,.chat,.travel-plan,.sin){border-radius:var(--rsp-corner)}
.cinematic-refined :is(.avatar-photo,.report-photo,.concept-photo){border-radius:var(--rsp-corner)}
.cinematic-refined #motion{border-radius:var(--rsp-corner);overflow:hidden}
.cinematic-refined #panel{border-radius:var(--rsp-corner)}
.cinematic-refined :is(#cta,.header-start,.cta-btn,.open,.btn,.gbtn){border-radius:var(--rsp-corner)}
.cinematic-refined #row3b .tile .open::after{border-radius:var(--rsp-corner)}
.cinematic-refined .travel-plans .travel-plan{border-radius:var(--rsp-corner)}
.cinematic-refined #row5 .ptabs{border-radius:var(--rsp-corner)}

.cinematic-refined #row3b .tile .open,.cinematic-refined #row3 .strip .cta-btn,.cinematic-refined #row3 .mock,.cinematic-refined #rowa .btn{border-radius:var(--rsp-corner)}

/* Keep the hero and editorial callouts square. */
.cinematic-refined #hero #panel,
.cinematic-refined #hero #motion,
.cinematic-refined #hero .concept-photo,
.cinematic-refined #hero #cta,
.cinematic-refined #hero .header-start,
.cinematic-refined .note{border-radius:0}

@media(min-width:1101px){
 .cinematic-refined #panel :is(h1,p,.concept-eyebrow){width:372px;max-width:100%;box-sizing:border-box}
}

/* Let the question headline wrap within the hero text column. */
.cinematic-refined #panel h1{text-wrap:wrap;white-space:normal}

/* Fit both approved audience paragraphs without clipping the eyebrow or links. */
@media(min-width:1101px){.cinematic-refined #hero{height:880px!important}}

/* Match both hero paragraphs to the approved second paragraph size. */
.cinematic-refined #panel p{font-size:15px!important}

.cinematic-refined #hero #panel #cta{border-radius:var(--rsp-corner)!important}

/* Match the supporting copy in the live RSP2 home hero. */
.cinematic-refined #panel p{font:400 19.2px/1.55 Inter,"Segoe UI",Arial,sans-serif!important;color:#dcdfde!important}
@media(min-width:1101px){.cinematic-refined #hero{height:1000px!important}}

/* Home-page composition: one full-width photograph with copy on the left. */
.cinematic-refined #hero{height:804px!important;background:#000}
.cinematic-refined #hero #motion{left:0!important;right:0;top:104px!important;bottom:0;z-index:0;border-radius:0}
.cinematic-refined #hero .concept-photo{object-fit:cover;object-position:center center}
.cinematic-refined #hero .photo-shade{background:linear-gradient(90deg,rgba(0,0,0,.5),rgba(0,0,0,.22) 36%,transparent 58%)}
.cinematic-refined #hero #panel{z-index:1;top:104px!important;width:min(50%,760px)!important;background:transparent!important;padding:36px 32px 36px max(32px,5.8vw)!important;justify-content:center}
.cinematic-refined #hero #panel :is(h1,p,.concept-eyebrow){width:560px;max-width:100%}
.cinematic-refined #hero #panel .concept-eyebrow{font-size:13px!important;letter-spacing:.16em!important;color:#b72e39!important;margin-bottom:22px!important}
.cinematic-refined #hero #panel h1{font-size:50px!important;line-height:1.05!important;margin-bottom:24px!important;white-space:normal;text-wrap:pretty}
.cinematic-refined #hero #panel p{margin-bottom:18px!important}
.cinematic-refined #hero #panel .detail{margin-bottom:24px!important}
@media(max-width:1100px) and (min-width:701px){
 .cinematic-refined #hero{height:900px!important}
 .cinematic-refined #hero #panel{width:58%!important}
 .cinematic-refined #hero #panel h1{font-size:44px!important}
 .cinematic-refined #hero #panel p{font-size:17px!important}
 .cinematic-refined #hero .photo-shade{background:linear-gradient(90deg,#000b,#0007 48%,transparent 85%)}
}
@media(max-width:700px){
 .cinematic-refined #hero{height:auto!important;min-height:0}
 .cinematic-refined #hero #panel{position:relative;top:auto!important;margin-top:90px;width:100%!important;padding:44px 24px!important;min-height:0}
 .cinematic-refined #hero #motion{top:90px!important;left:0!important;position:absolute;height:auto!important}
 .cinematic-refined #hero .concept-photo{object-position:65% center}
 .cinematic-refined #hero .photo-shade{background:rgba(0,0,0,.72)}
 .cinematic-refined #hero #panel h1{font-size:40px!important}
 .cinematic-refined #hero #panel p{font-size:17px!important}
}

/* Copy the home hero's headline and eyebrow typography. */
.cinematic-refined #hero #panel .concept-eyebrow{font:750 14px Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:2.8px!important;margin:0!important;text-transform:uppercase}
.cinematic-refined #hero #panel h1{font:400 clamp(3.6rem,6vw,7rem)/.98 "Editorial Serif",Georgia,serif!important;letter-spacing:-.065em!important;margin:20px 0 27.2px!important;width:900px;max-width:none;text-wrap:wrap}
@media(min-width:1101px){
 .cinematic-refined #hero{height:684px!important}
 .cinematic-refined #hero #panel{width:1050px!important;padding-top:16px!important;padding-bottom:16px!important}
 .cinematic-refined #hero #panel p{width:560px;margin:0!important}
 .cinematic-refined #hero #panel #cta{margin-top:24px}
}
@media(max-width:1100px){.cinematic-refined #hero #panel h1{width:100%;max-width:100%;font-size:clamp(54px,7vw,76px)!important}}

@media(min-width:1101px){.cinematic-refined #hero #panel h1{width:900px!important;max-width:100%!important}}

/* Match the home-page hero's text-link treatment. */
.cinematic-refined #hero #panel #cta{
 background:transparent!important;border:0!important;border-bottom:2px solid #b72e39!important;
 border-radius:0!important;padding:0 0 8px!important;color:#f9f9f6!important;
 font:700 .82rem Inter,"Segoe UI",Arial,sans-serif!important;letter-spacing:.03em;
 text-decoration:none;display:inline-block;margin-top:43.2px;width:max-content;
}
.cinematic-refined #hero #panel #cta span{display:none}
.cinematic-refined #hero #panel #cta:hover{color:#f9f9f6!important;background:transparent!important}

/* Supplied 630px hero image: add 50px of vertical breathing room. */
@media(min-width:1101px){.cinematic-refined #hero{height:734px!important}}

/* Keep the comment-alert anchor at its own row, rather than the page origin. */
.cinematic-refined #rowa{position:relative}

/* Centre the dash markers in the question rows. */
.cinematic-refined #row3 .asks li::before{top:50%;transform:translateY(-50%)}

@media(min-width:1600px){.cinematic-refined #hero #panel h1{width:1000px!important;max-width:none!important}}

/* Quieter headline scale for the shorter, factual message. */
.cinematic-refined #hero #panel h1{font-size:clamp(54px,4.6vw,88px)!important;width:700px!important;max-width:100%!important;letter-spacing:-.045em!important}
@media(max-width:700px){.cinematic-refined #hero #panel h1{font-size:clamp(42px,10vw,54px)!important;width:100%!important}}

.cinematic-refined #row3 .actions a.mock{text-decoration:none;color:inherit}
.cinematic-refined #visit-japan-copy-status{font:12px/1.5 Inter,sans-serif;color:#62696a}
.cinematic-refined #visit-japan-copy-status:empty{display:none}
.cinematic-refined #row3 .file .name{overflow-wrap:anywhere}

.cinematic-refined .research-note-group{display:flex;flex-direction:column;align-items:flex-start;gap:24px;min-width:0}
.cinematic-refined .research-youtube-mark{display:block;max-width:100%;line-height:0}
.cinematic-refined .research-youtube-mark img{display:block;width:300px;max-width:100%;height:auto}
.cinematic-refined .research-note-group .note{width:100%;box-sizing:border-box;margin:0}
