/* Five fictional brands, real responsive creatives. All assets are local. */
.rr-campaign-slot{min-width:0}
.rr-campaign-slot>.ad-label,.rr-campaign-slot>.sidebar-ad-label{font:9px/1.5 var(--sans);color:#5c6c7f;letter-spacing:.5px}
.rr-campaign-slot>.ad-label small{font:9px/1.5 var(--sans);letter-spacing:0}
.rr-campaign{--campaign-accent:#ffc08d;display:block;width:100%;position:relative;isolation:isolate;overflow:hidden;padding:0;border:1px solid #253a50;border-radius:11px;background:#0c1724;color:#fff;text-align:left;box-shadow:0 12px 26px -24px #102b5370;transition:transform .35s var(--rr-surface-ease),box-shadow .35s,border-color .35s}
.rr-campaign::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0c1724 0%,#0c1724f7 34%,#0c1724b0 52%,#0c172400 85%);pointer-events:none}
.rr-campaign::after{content:'';position:absolute;inset:9px;z-index:3;border:1px solid #ffffff1c;border-radius:6px;pointer-events:none}
.rr-campaign-photo{position:absolute;inset:0 0 0 auto;width:68%;height:100%;max-width:none;display:block;object-fit:cover;object-position:48% 50%;transition:transform .65s var(--rr-surface-ease)}
.rr-campaign-content{position:relative;z-index:2;display:flex;align-items:flex-start;flex-direction:column;min-width:0;min-height:inherit;padding:30px 35px 42px;box-sizing:border-box;width:65%}
.rr-campaign-brand{display:flex;align-items:center;gap:9px;max-width:100%;font:700 16px/1.15 var(--sans);letter-spacing:2.2px;color:inherit}
.rr-campaign-symbol{flex:none;width:27px;height:27px;color:var(--campaign-accent);stroke:currentColor;fill:none}
.rr-campaign-line{display:block;font:9px/1.55 var(--sans);letter-spacing:1.45px;color:var(--campaign-accent);margin-top:17px}
.rr-campaign-title{display:block;font:600 clamp(29px,3.1vw,45px)/1.06 var(--sans);letter-spacing:-1.3px;margin-top:11px;overflow-wrap:normal}
.rr-campaign-title>span{display:block;color:var(--campaign-accent)}
.rr-campaign-copy{font:12px/1.55 var(--sans);color:#dae1e8;display:block;margin-top:15px;max-width:290px}
.rr-campaign-cta{display:inline-flex;align-items:center;justify-content:space-between;max-width:100%;gap:17px;min-height:39px;padding:10px 13px;border:1px solid #ffffff50;border-radius:5px;color:#fff;background:#ffffff0c;font:10px/1.3 var(--sans);margin-top:22px;transition:background .25s,border-color .25s}
.rr-campaign-cta .chevron{flex:none;width:16px;height:16px;transition:transform .25s}
.rr-campaign-demo{position:absolute;z-index:3;right:16px;bottom:12px;font:7px/1.4 var(--sans);letter-spacing:.6px;text-transform:uppercase;color:#ffffffc9}
.rr-format-wide{min-height:305px}
.rr-campaign-metal .rr-campaign-photo{object-position:40% 58%}
.rr-campaign-metal .rr-campaign-brand{letter-spacing:4px;font-size:19px}
.rr-campaign-metal .rr-campaign-symbol{width:31px;height:31px}
.rr-campaign-metal .rr-campaign-title>span{font-weight:400}

/* Warm sage insurance, kept visually separate from the industrial creative. */
.rr-campaign-insurance{--campaign-accent:#307361;color:#173d33;background:#eaf0e7;border-color:#d3dfd3}
.rr-campaign-insurance::before{background:linear-gradient(90deg,#edf2e9 0%,#edf2e9f7 31%,#edf2e9cc 51%,#edf2e900 95%)}
.rr-campaign-insurance::after{border-color:#285e3c24}
.rr-campaign-insurance .rr-campaign-title{font-family:var(--serif);font-weight:400;font-size:clamp(29px,2.6vw,39px);letter-spacing:-.7px;line-height:1.08}
.rr-campaign-insurance .rr-campaign-title>span{color:#245a47;font-style:italic}
.rr-campaign-insurance .rr-campaign-brand{letter-spacing:2px;font-size:15px}
.rr-campaign-insurance .rr-campaign-copy{color:#315d4c}
.rr-campaign-insurance .rr-campaign-cta{background:#205540;color:#fff;border-color:#205540}
.rr-campaign-insurance .rr-campaign-demo{color:#1e493bd9}
.inline-ad .rr-campaign{min-height:350px}
.inline-ad .rr-campaign-content{padding:30px 28px 44px;width:76%}
.inline-ad .rr-campaign-title{font-size:clamp(29px,2.4vw,37px)}
.inline-ad .rr-campaign-line{letter-spacing:.9px;font-size:8px;max-width:240px}

/* Vertical auto campaign for the main left rail. */
.rr-format-tall{aspect-ratio:1/2;min-height:425px}
.rr-format-tall .rr-campaign-content{position:absolute;inset:0;width:100%;height:100%;padding:24px 21px 35px}
.rr-format-tall .rr-campaign-photo{inset:auto 0 0;width:100%;height:77%;object-position:50% 48%}
.rr-format-tall::before{background:linear-gradient(180deg,#090f17 2%,#090f17f5 22%,#090f1770 50%,#090f1710 70%,#090f17db 100%)}
.rr-campaign-auto{--campaign-accent:#f7a56f;background:#090f17}
.rr-format-tall .rr-campaign-brand{font-size:12px;letter-spacing:1.1px;gap:7px}
.rr-format-tall .rr-campaign-symbol{width:24px;height:24px}
.rr-format-tall .rr-campaign-line{font-size:7px;letter-spacing:.8px;line-height:1.7;max-width:175px;margin-top:30px}
.rr-format-tall .rr-campaign-title{font-size:clamp(30px,2.6vw,43px);margin-top:12px;letter-spacing:-1.1px}
.rr-format-tall .rr-campaign-copy{font-size:11px;max-width:185px;margin-top:14px}
.rr-format-tall .rr-campaign-cta{margin-top:auto;font-size:9px;gap:9px;padding:10px;max-width:100%;background:#121e2be8;border-color:#ffffff50}
.rr-format-tall .rr-campaign-demo{font-size:6px}

/* Compact smartphone and accommodation ads on the right rail. */
.rr-format-compact{min-height:190px}
.rr-format-compact .rr-campaign-content{width:72%;padding:20px 18px 28px}
.rr-format-compact .rr-campaign-brand{font-size:11px;letter-spacing:1px;gap:6px}
.rr-format-compact .rr-campaign-symbol{width:21px;height:21px}
.rr-format-compact .rr-campaign-line{font-size:7px;letter-spacing:.65px;margin-top:14px;line-height:1.4}
.rr-format-compact .rr-campaign-title{font-size:25px;line-height:1.05;letter-spacing:-.7px;margin-top:8px}
.rr-format-compact .rr-campaign-copy{display:none}
.rr-format-compact .rr-campaign-cta{font-size:9px;min-height:31px;padding:7px 9px;gap:11px;margin-top:15px}
.rr-format-compact .rr-campaign-demo{font-size:6px;right:12px;bottom:8px}
.rr-campaign-mobile{--campaign-accent:#b6eed0;background:#133749;border-color:#224d5b}
.rr-campaign-mobile::before{background:radial-gradient(ellipse at 90% 15%,#8bd9bb2e,transparent 65%),linear-gradient(110deg,#123546 5%,#123546ce 40%,#12354600 85%)}
.rr-campaign-mobile .rr-campaign-photo{width:53%;height:120%;inset:-4% -5% auto auto;object-fit:contain;object-position:center}
.rr-campaign-mobile .rr-campaign-content{width:76%}
.rr-campaign-mobile .rr-campaign-brand{font-size:10px;letter-spacing:1.2px}
.rr-campaign-mobile .rr-campaign-title{font-size:25px}
.rr-campaign-mobile .rr-campaign-cta{background:#c6efd5;color:#133f3b;border-color:#c6efd5}
.rr-campaign-mobile .rr-campaign-cta .chevron{width:14px;height:14px}
.rr-campaign-stay{--campaign-accent:#f0dfbb;background:#232c2b;border-color:#726b58}
.rr-campaign-stay .rr-campaign-photo{width:100%;object-position:62% 55%}
.rr-campaign-stay::before{background:linear-gradient(105deg,#172b2bd9 0%,#172b2baf 45%,#172b2b05 100%),linear-gradient(0deg,#172b2baf,transparent 80%)}
.rr-campaign-stay .rr-campaign-brand{font-weight:500;letter-spacing:2px}
.rr-campaign-stay .rr-campaign-title{font-family:var(--serif);font-weight:400;letter-spacing:-.4px}
.rr-format-compact.rr-campaign-stay .rr-campaign-title{font-size:28px}
.rr-format-compact.rr-campaign-stay .rr-campaign-content{width:85%}
.rr-campaign-stay .rr-campaign-title>span{font-style:italic}

/* Additional desktop inventory fills the gaps beside the three headline leads. */
.rr-format-medium{min-height:245px;aspect-ratio:1.05}
.rr-format-medium .rr-campaign-content{position:absolute;inset:0;width:100%;height:100%;padding:23px 20px 35px}
.rr-format-medium .rr-campaign-brand{font-size:12px;letter-spacing:1.7px;gap:7px}
.rr-format-medium .rr-campaign-symbol{width:23px;height:23px}
.rr-format-medium .rr-campaign-line{font-size:7px;letter-spacing:.8px;margin-top:25px;max-width:190px}
.rr-format-medium .rr-campaign-title{font-size:32px;line-height:1.06;letter-spacing:-.6px;margin-top:9px}
.rr-format-medium .rr-campaign-copy{font-size:11px;line-height:1.5;max-width:180px;margin-top:10px}
.rr-format-medium .rr-campaign-cta{margin-top:auto;font-size:9px;min-height:34px;padding:8px 10px}
.rr-format-medium.rr-campaign-stay{aspect-ratio:1/1.27;min-height:300px}
.rr-format-medium.rr-campaign-stay .rr-campaign-line{margin-top:auto}
.rr-format-medium.rr-campaign-stay .rr-campaign-title{font-size:32px}
.rr-format-medium.rr-campaign-stay .rr-campaign-copy{display:none}
.rr-format-medium.rr-campaign-stay .rr-campaign-cta{margin-top:18px}
.rr-format-medium.rr-campaign-insurance .rr-campaign-photo{width:100%;opacity:.55;object-position:68% 50%}
.rr-format-medium.rr-campaign-insurance::before{background:linear-gradient(115deg,#eef3eaf5 20%,#eef3eadb 65%,#eef3ea35)}
.rr-format-medium.rr-campaign-insurance .rr-campaign-title{font-size:32px}
.rr-slot-left-extra .rr-campaign{min-height:clamp(310px,30.5vw,460px)}
.rr-slot-right-extra .rr-campaign{aspect-ratio:auto;min-height:205px}
.rr-slot-right-extra .rr-campaign-content{position:relative;inset:auto;padding:20px 20px 30px;min-height:205px}
.rr-slot-right-extra .rr-campaign-line,.rr-slot-right-extra .rr-campaign-copy{display:none}
.rr-slot-right-extra .rr-campaign-title{font-size:28px;margin-top:13px}
.rr-slot-right-extra .rr-campaign-cta{margin-top:16px}

@media(hover:hover) and (prefers-reduced-motion:no-preference){
 .rr-campaign:hover{transform:translateY(-2px);box-shadow:0 18px 30px -24px #102b5380;border-color:var(--campaign-accent)}
 .rr-campaign:hover .rr-campaign-photo{transform:scale(1.025)}
 .rr-campaign:hover .rr-campaign-cta .chevron{transform:translateX(3px)}
}
@media(min-width:801px) and (max-width:1150px){
 .rr-format-tall .rr-campaign-content{padding-inline:16px}
 .rr-format-tall .rr-campaign-brand{font-size:10px;letter-spacing:.5px}
 .rr-format-tall .rr-campaign-title{font-size:30px}
 .rr-format-tall .rr-campaign-cta{font-size:8px;padding-inline:7px;gap:4px}
 .rr-format-medium .rr-campaign-content{padding-inline:16px}
 .rr-format-medium .rr-campaign-brand{font-size:10px}
 .rr-format-medium .rr-campaign-title{font-size:29px}
 .rr-format-medium.rr-campaign-stay .rr-campaign-title{font-size:29px}
}
@media(max-width:800px){
 .rr-side-extra{display:none}
 .rr-format-wide{min-height:330px}
 .rr-format-wide .rr-campaign-content,.inline-ad .rr-campaign-content{padding:27px 24px 39px;width:100%;min-height:inherit}
 .rr-format-wide .rr-campaign-photo{width:100%;opacity:.58;object-position:65% 50%}
 .rr-format-wide::before{background:linear-gradient(90deg,#0c1724f5 0%,#0c1724db 35%,#0c17244d 100%)}
 .rr-format-wide .rr-campaign-line{font-size:8px;letter-spacing:1px;max-width:240px}
 .rr-format-wide .rr-campaign-title{font-size:clamp(29px,6vw,39px);letter-spacing:-.8px}
 .rr-format-wide .rr-campaign-copy{max-width:230px;font-size:11px}
 .rr-format-wide .rr-campaign-cta{min-height:42px;font-size:10px;gap:12px}
 .rr-format-wide.rr-campaign-insurance{min-height:350px}
 .rr-format-wide.rr-campaign-insurance::before{background:linear-gradient(100deg,#edf2e9fa 0%,#edf2e9dd 50%,#edf2e95e 100%)}
 .rr-format-wide.rr-campaign-insurance .rr-campaign-photo{opacity:.7;object-position:65% 55%}
 .rr-format-tall{aspect-ratio:auto;min-height:260px}
 .rr-format-tall .rr-campaign-content{position:relative;inset:auto;min-height:260px;padding:23px 22px 35px;width:100%}
 .rr-format-tall .rr-campaign-brand{font-size:12px}
 .rr-format-tall .rr-campaign-photo{inset:0 0 0 auto;width:62%;height:100%;object-position:50% 35%}
 .rr-format-tall::before{background:linear-gradient(90deg,#090f17 2%,#090f17ed 30%,#090f170a 100%)}
 .rr-format-tall .rr-campaign-line{margin-top:16px;font-size:7px}
 .rr-format-tall .rr-campaign-title{font-size:32px}
 .rr-format-tall .rr-campaign-copy{display:none}
 .rr-format-tall .rr-campaign-cta{margin-top:21px;font-size:9px;min-height:36px;max-width:230px}
 .rr-format-compact .rr-campaign-title{font-size:29px}
 .rr-format-compact .rr-campaign-content{padding:22px 23px 30px}
 .rr-format-compact .rr-campaign-brand{font-size:12px}
}
@media(max-width:359px){
 .rr-campaign-brand{font-size:13px;letter-spacing:1.5px}
 .rr-format-wide .rr-campaign-content{padding-inline:20px}
 .rr-format-wide .rr-campaign-title{font-size:28px}
 .rr-format-tall .rr-campaign-brand{font-size:11px}
 .rr-format-tall .rr-campaign-cta{font-size:8px}
}
@media(prefers-reduced-motion:reduce){.rr-campaign,.rr-campaign-photo,.rr-campaign-cta,.rr-campaign-cta .chevron{transition:none!important;transform:none!important}}
@media(forced-colors:active){.rr-campaign{background:Canvas;color:CanvasText;border-color:ButtonText}.rr-campaign::before{background:Canvas}.rr-campaign-photo{display:none}.rr-campaign-title>span,.rr-campaign-line,.rr-campaign-copy,.rr-campaign-demo{color:CanvasText}.rr-campaign-cta{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}}
@media print{.rr-campaign-slot{display:none!important}}
