:root{--navy:#0b3454;--navy-dark:#06233a;--blue:#176aa2;--sky:#e9f4fa;--paper:#f6f7f6;--white:#fff;--ink:#17252e;--muted:#667982;--line:#dce4e7;--copper:#cf7048;--green:#268166;--red:#bd463d;--amber:#c88a2d;--side:246px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}button,input,select,textarea{font:inherit}button,a{touch-action:manipulation}.skip-link{position:fixed;left:12px;top:-60px;z-index:500;background:var(--white);color:#000;padding:10px}.skip-link:focus{top:12px}.guest-header{height:82px;padding:0 clamp(20px,6vw,100px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--white);position:relative;z-index:30}.guest-brand{display:flex;align-items:center;gap:11px;color:var(--navy);text-decoration:none}.guest-brand img{width:42px;height:42px;object-fit:contain}.guest-brand span{display:flex;flex-direction:column}.guest-brand b{font:600 21px Georgia,serif}.guest-brand small{font-size:8px;letter-spacing:.2em;margin-top:3px}.guest-brand.light{color:#fff}.guest-header nav{display:flex;align-items:center;gap:24px}.guest-header nav a,.guest-header nav button{font-size:12px;font-weight:700;color:var(--navy);text-decoration:none;border:0;background:none;cursor:pointer}.guest-header nav a:hover{text-decoration:underline}.entry-shell{min-height:calc(100vh - 82px);min-height:calc(100dvh - 82px);padding:72px clamp(20px,10vw,180px) 100px;background:linear-gradient(180deg,#fff 0,#fff 78%,#f0f5f7 100%)}.entry-intro{max-width:760px;margin:0 auto 48px;text-align:center}.eyebrow{font-size:9px;letter-spacing:.22em;font-weight:850;color:#bfe5fa;margin:0 0 11px}.eyebrow.blue{color:var(--blue)}.entry-intro .eyebrow{color:var(--blue)}.entry-intro h1{font:500 clamp(42px,5vw,66px)/1 Georgia,serif;letter-spacing:-.045em;margin:0}.entry-intro>p:last-child{font-size:14px;color:var(--muted);line-height:1.7;max-width:570px;margin:20px auto 0}.entry-grid{max-width:1120px;margin:auto;display:grid;grid-template-columns:1fr 1px 1fr;gap:68px}.entry-divider{background:var(--line)}.entry-panel{position:relative}.panel-number{font:500 58px Georgia;color:#e4ebee;position:absolute;right:0;top:-18px}.entry-panel h2{font:600 24px Georgia;margin:0 0 9px}.entry-panel>p{font-size:13px;color:var(--muted);margin:0 0 27px}.entry-panel label,.verify-card label,.form-card label,.request-form label,.checkout-card label{display:block;margin:16px 0}.entry-panel label span,.verify-card label span,.request-form label>span{display:block;font-size:11px;font-weight:800;margin-bottom:8px}.entry-panel input,.verify-card input,.form-card input,.form-card textarea,.request-form input,.request-form textarea,.request-form select,.checkout-card textarea{width:100%;border:1px solid #bfcbd0;background:var(--white);border-radius:2px;padding:15px 14px;outline:0;color:var(--ink)}.entry-panel input:focus,.verify-card input:focus,.form-card input:focus,.form-card textarea:focus,.request-form input:focus,.request-form textarea:focus,.request-form select:focus,.checkout-card textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(23,106,162,.12)}.primary,.secondary,.white-button,.glass-button{border:0;border-radius:3px;padding:14px 19px;font-size:12px;font-weight:850;cursor:pointer;text-align:center;text-decoration:none;transition:.18s}.primary{background:var(--navy);color:#fff}.primary:hover{background:#12527b}.secondary{background:var(--sky);color:var(--navy)}.secondary:hover{background:#dceef7}.full{width:100%}.help-card{background:#eaf2fb;border-left:3px solid var(--blue);margin-top:25px;padding:16px 18px;font-size:11px;line-height:1.5}.help-card b{display:block}.help-card a{color:var(--navy);display:inline-block;margin-top:5px}.channel-switch{display:flex;border-bottom:1px solid var(--line);margin-bottom:18px}.channel-switch button{border:0;background:none;min-height:44px;padding:12px 17px;border-bottom:3px solid transparent;font-size:11px;font-weight:800;color:var(--muted);cursor:pointer}.channel-switch button.active{color:var(--navy);border-color:var(--navy)}.secure-note{display:flex;align-items:center;gap:9px;font-size:11px!important;color:var(--muted);margin-top:22px!important}.secure-note>span:first-child{font-size:18px;color:var(--green)}.entry-message{text-align:center;color:var(--red);font-size:12px;min-height:18px;margin:26px 0 0}
.guest-app{min-height:100vh;min-height:100dvh}.app-sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--side);padding:28px 20px;background:linear-gradient(180deg,var(--navy),var(--navy-dark));color:#fff;display:flex;flex-direction:column;z-index:50}.app-sidebar nav{display:grid;gap:7px;margin-top:50px}.app-sidebar nav button{border:0;background:transparent;color:#a9c2d0;padding:13px;border-radius:8px;display:grid;grid-template-columns:28px 1fr;align-items:center;text-align:left;font-size:12px;font-weight:700;cursor:pointer}.app-sidebar nav button i{font-style:normal;font-size:18px}.app-sidebar nav button.active,.app-sidebar nav button:hover{background:rgba(255,255,255,.1);color:#fff}.privacy-card{margin-top:auto;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);padding:14px;border-radius:9px}.privacy-card b{display:block;font-size:10px}.privacy-card small{display:block;font-size:8px;color:#9cb8c7;line-height:1.5;margin-top:5px}.sign-out{border:0;border-top:1px solid rgba(255,255,255,.12);background:none;color:#adc3ce;font-size:10px;text-align:left;margin-top:16px;padding:15px 2px;cursor:pointer}.app-workspace{margin-left:var(--side);min-height:100vh;min-height:100dvh;padding:28px clamp(20px,4vw,60px) 70px}.app-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:27px}.app-topbar h1{font:500 33px Georgia;margin:0}.topbar-actions{display:flex;align-items:center;gap:10px}.topbar-actions select{-webkit-appearance:none;appearance:none;color:var(--ink);border:1px solid var(--line);border-radius:9px;background:var(--white);padding:10px 35px 10px 12px;max-width:260px;font-size:10px;font-weight:750}.round-button,.guest-avatar{width:44px;height:44px;border-radius:50%;display:grid;place-items:center}.round-button{border:1px solid var(--line);background:var(--white);color:var(--navy);font-size:9px;font-weight:850}.guest-avatar{background:var(--copper);color:#fff;font-size:11px;font-weight:850}.app-view{display:none}.app-view.active{display:block}.stay-hero{min-height:310px;border-radius:20px;padding:42px;color:#fff;background:radial-gradient(circle at 83% 30%,rgba(255,255,255,.2),transparent 26%),linear-gradient(120deg,rgba(5,36,57,.96),rgba(20,98,143,.82)),url("/cp-mark.png") 88% 50%/240px no-repeat;display:flex;justify-content:space-between;align-items:flex-end;box-shadow:0 24px 50px rgba(11,52,84,.15)}.stay-hero>div:first-child>span{font-size:9px;letter-spacing:.17em;font-weight:800;color:#b9dceb}.stay-hero h2{font:500 clamp(32px,4.5vw,54px)/1 Georgia;margin:12px 0 8px}.stay-hero p{font-size:12px;color:#d3e2e9}.stay-hero-actions{display:flex;gap:9px;margin-top:25px}.white-button{background:var(--white);color:var(--navy)}.glass-button{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.26)}.stay-badge{align-self:flex-start;background:var(--white);color:var(--navy);border-radius:11px;padding:15px 18px;text-align:center;min-width:76px}.stay-badge span{display:block;font:600 31px Georgia}.stay-badge small{font-size:7px;letter-spacing:.14em}.journey-progress,.requests-preview{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:20px;margin-top:17px}.journey-progress header,.requests-preview header{display:flex;justify-content:space-between;align-items:center}.journey-progress header span,.requests-preview header span{font-size:8px;letter-spacing:.15em;font-weight:850;color:var(--blue)}.journey-progress h3,.requests-preview h3{font:500 20px Georgia;margin:5px 0 0}.journey-progress header>b{font-size:11px;color:var(--green)}.progress-track{height:5px;border-radius:9px;background:#e8eeee;overflow:hidden;margin:17px 0}.progress-track i{height:100%;display:block;width:0;background:linear-gradient(90deg,var(--copper),var(--green));transition:width .3s}.progress-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.progress-steps button{border:0;background:none;padding:6px;display:flex;gap:9px;text-align:left;cursor:pointer}.progress-steps i{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#e9eeee;color:#6e8088;font-style:normal;font-size:9px;font-weight:850;flex:none}.progress-steps i.done{background:var(--green);color:#fff}.progress-steps span{display:flex;flex-direction:column}.progress-steps b{font-size:10px}.progress-steps small{font-size:8px;color:var(--muted);margin-top:3px}.quick-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-top:17px}.quick-card{min-height:158px;border:1px solid var(--line);border-radius:15px;background:var(--white);padding:17px;text-align:left;display:flex;flex-direction:column;cursor:default;color:var(--ink)}button.quick-card{cursor:pointer}.quick-card:hover{border-color:#aac2cd;box-shadow:0 9px 24px rgba(11,52,84,.07)}.quick-card>span{font-size:7px;letter-spacing:.14em;font-weight:850;color:var(--muted)}.quick-card>i{font-style:normal;font-size:26px;color:var(--blue);margin:16px 0 auto}.quick-card>b{font-size:11px}.quick-card>small{font-size:8px;color:var(--muted);line-height:1.45;margin-top:5px}.key-card{background:var(--navy);color:#fff;border-color:var(--navy)}.key-card>span,.key-card>small{color:#b4cdd9}.key-card>i{color:#fff}.requests-preview header button,.request-history header button{border:0;background:none;color:var(--blue);font-size:9px;font-weight:850}.request-mini{display:grid;grid-template-columns:1fr auto;gap:8px;border-top:1px solid var(--line);padding:13px 0}.request-mini:first-child{margin-top:13px}.request-mini b{font-size:10px}.request-mini small{font-size:8px;color:var(--muted);display:block;margin-top:3px}.status-pill{font-size:7px;font-weight:850;text-transform:uppercase;color:var(--green);background:#e7f3ee;border-radius:99px;padding:6px 8px;align-self:center}.empty{text-align:center;color:var(--muted);font-size:10px;padding:20px}
.view-heading{max-width:720px;margin:18px 0 26px}.view-heading h2{font:500 clamp(35px,4.5vw,55px)/1 Georgia;margin:0;letter-spacing:-.035em}.view-heading>p:last-child{color:var(--muted);font-size:13px;line-height:1.7}.form-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-card{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:22px}.form-card>span,.request-history header>span,.checkout-card>span{font-size:8px;letter-spacing:.16em;font-weight:850;color:var(--blue)}.form-card h3,.checkout-card h3{font:500 22px Georgia;margin:7px 0}.form-card>p{font-size:10px;color:var(--muted);line-height:1.55}.form-card label>b,.checkout-card label>b{display:block;font-size:9px;margin-bottom:7px}.form-card label b em{font-style:normal;font-weight:500;color:var(--muted)}.file-drop{border:1px dashed #9cb0b8;border-radius:10px;padding:18px;text-align:center;display:flex!important;flex-direction:column;align-items:center;cursor:pointer}.file-drop input{display:none}.file-drop i{font-style:normal;font-size:22px;color:var(--blue)}.file-drop b{font-size:9px!important;margin:5px 0!important}.file-drop small{font-size:8px;color:var(--muted)}.check-line{display:flex!important;align-items:flex-start;gap:9px}.check-line input{width:auto!important;margin-top:2px;accent-color:var(--navy)}.check-line span{font-size:9px;line-height:1.45}.step-result{display:block;color:var(--muted);font-size:8px;text-align:center;margin-top:9px}.step-result.done{color:var(--green);font-weight:800}.final-step ul{padding:0;list-style:none;display:grid;gap:7px;margin:20px 0}.final-step li{font-size:9px;color:var(--muted);padding-left:20px;position:relative}.final-step li:before{content:"○";position:absolute;left:0;color:#9aabad}.final-step li.done{color:var(--green);font-weight:750}.final-step li.done:before{content:"✓";color:var(--green)}.service-picker{display:grid;grid-template-columns:repeat(4,1fr);gap:11px;margin-bottom:15px}.service-picker button{border:1px solid var(--line);background:var(--white);border-radius:13px;padding:16px;text-align:left;cursor:pointer;display:flex;flex-direction:column}.service-picker button.active{border:2px solid var(--navy);padding:15px}.service-picker i{font-style:normal;color:var(--blue);font-size:24px}.service-picker b{font-size:10px;margin:14px 0 4px}.service-picker small{font-size:8px;color:var(--muted);line-height:1.4}.service-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(340px,1.2fr);gap:15px}.request-form,.request-history{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:22px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.request-history header{display:flex;justify-content:space-between}.request-row{border-top:1px solid var(--line);padding:14px 0;display:grid;grid-template-columns:1fr auto;gap:10px}.request-row h4{font-size:10px;margin:0}.request-row p{font-size:8px;color:var(--muted);margin:5px 0}.request-row small{font-size:8px;color:var(--muted);line-height:1.45}.support-layout{min-height:700px;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:.85fr 1.15fr;background:var(--navy)}.support-intro{padding:55px;color:#fff;display:flex;flex-direction:column;justify-content:center}.support-intro h2{font:500 clamp(40px,5vw,60px)/1 Georgia;margin:0}.support-intro>p:last-of-type{font-size:13px;line-height:1.7;color:#b7ccd7}.support-intro a{color:#fff;font-size:11px;font-weight:800;margin-top:20px}.support-chat{margin:22px;background:var(--white);border-radius:15px;display:flex;flex-direction:column;overflow:hidden}.support-chat header{padding:17px;border-bottom:1px solid var(--line)}.support-chat header>div{display:flex;gap:10px;align-items:center}.support-chat header i{width:10px;height:10px;background:#3fba8c;border-radius:50%;box-shadow:0 0 0 5px #e5f5ef}.support-chat header span{display:flex;flex-direction:column}.support-chat header b{font-size:10px}.support-chat header small{font-size:8px;color:var(--muted);margin-top:3px}.chat-body{flex:1;padding:20px;overflow:auto;display:flex;flex-direction:column;gap:9px}.bot-message,.user-message{max-width:80%;padding:11px 13px;border-radius:12px;font-size:10px;line-height:1.55}.bot-message{background:#edf3f6;align-self:flex-start}.user-message{background:var(--navy);color:#fff;align-self:flex-end}.support-chat form{display:flex;border-top:1px solid var(--line);padding:12px}.support-chat input{flex:1;border:0;outline:0;font-size:10px}.support-chat button{width:36px;height:36px;border:0;border-radius:50%;background:var(--navy);color:#fff}.checkout-layout{min-height:680px;display:grid;grid-template-columns:1fr 460px;gap:45px;align-items:center}.checkout-copy h2{font:500 clamp(45px,5vw,70px)/.95 Georgia;margin:0;letter-spacing:-.04em}.checkout-copy>p:last-of-type{font-size:13px;color:var(--muted);line-height:1.7;max-width:550px}.checkout-copy ol{display:grid;gap:11px;padding-left:20px;color:var(--muted);font-size:11px}.checkout-card{background:var(--white);border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 20px 50px rgba(11,52,84,.08)}.rating{display:flex;gap:5px;margin:14px 0}.rating button{border:0;background:none;color:#cbd4d7;font-size:27px;padding:0;cursor:pointer}.rating button.selected{color:var(--amber)}.mobile-app-nav{display:none}
.verify-modal,.contact-modal{position:fixed;inset:0;display:grid;place-items:center;padding:20px;z-index:200}.verify-backdrop{position:absolute;inset:0;background:rgba(4,27,43,.72);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.verify-card{position:relative;width:min(450px,100%);background:var(--white);border-radius:14px;padding:30px}.verify-card h2{font:500 34px Georgia;margin:0 0 9px}.verify-card>p:not(.eyebrow){font-size:11px;color:var(--muted);line-height:1.55}.close-modal{position:absolute;right:13px;top:13px;border:0;background:#edf2f3;width:34px;height:34px;border-radius:50%;font-size:20px}.verify-message{font-size:10px;color:var(--red);min-height:16px}.toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,25px);opacity:0;background:var(--navy);color:#fff;border-radius:8px;padding:12px 18px;font-size:10px;transition:.2s;z-index:300}.toast.show{opacity:1;transform:translate(-50%,0)}[hidden]{display:none!important}[dir=rtl] .app-sidebar{right:0;left:auto}[dir=rtl] .app-workspace{margin-right:var(--side);margin-left:0}[dir=rtl] .progress-steps button,[dir=rtl] .service-picker button{text-align:right}
@media(max-width:1050px){:root{--side:205px}.app-workspace{padding:24px 22px 70px}.quick-grid{grid-template-columns:1fr 1fr}.service-layout{grid-template-columns:1fr}.checkout-layout{grid-template-columns:1fr 400px;gap:25px}.entry-grid{gap:35px}.service-picker{grid-template-columns:1fr 1fr}}@media(max-width:780px){.guest-header{height:68px;padding:0 16px}.guest-header nav a{display:none}.guest-brand img{width:34px;height:34px}.entry-shell{padding:45px 20px 80px}.entry-grid{grid-template-columns:1fr;gap:45px}.entry-divider{height:1px}.entry-intro{text-align:left;margin-bottom:36px}.entry-intro h1{font-size:43px}.app-sidebar{display:none}.app-workspace,[dir=rtl] .app-workspace{margin:0;padding:18px 14px 88px}.app-topbar{align-items:flex-start}.app-topbar h1{font-size:27px}.topbar-actions select{max-width:145px}.stay-hero{min-height:340px;padding:27px 22px}.stay-badge{display:none}.journey-progress{overflow:hidden}.progress-steps{grid-template-columns:1fr 1fr}.quick-grid{grid-template-columns:1fr 1fr}.form-card-grid{grid-template-columns:1fr}.support-layout{grid-template-columns:1fr;min-height:760px}.support-intro{padding:35px}.support-chat{min-height:430px}.checkout-layout{grid-template-columns:1fr}.mobile-app-nav{display:grid;grid-template-columns:repeat(4,1fr);position:fixed;left:0;right:0;bottom:0;background:rgba(255,255,255,.97);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);padding:8px 7px max(8px,env(safe-area-inset-bottom));z-index:80}.mobile-app-nav button{border:0;background:none;color:#7c8c93;font-size:17px;min-height:44px;padding:0}.mobile-app-nav button.active{color:var(--blue)}.mobile-app-nav span{display:block;font-size:7px;margin-top:3px}}@media(max-width:480px){.guest-header nav{gap:9px}.guest-header nav button{font-size:10px}.entry-intro h1{font-size:38px}.quick-grid{grid-template-columns:1fr}.stay-hero-actions{flex-direction:column;align-items:flex-start}.journey-progress header{align-items:flex-start}.progress-steps{grid-template-columns:1fr}.service-picker{grid-template-columns:1fr 1fr}.service-picker button{min-height:135px}.two-fields{grid-template-columns:1fr}.topbar-actions .round-button{display:none}.checkout-card{padding:20px}}

/* Reservation-scoped upselling — fed by the authorised offers workspace. */
.upsell-preview,.upsell-catalog{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:20px;margin-top:17px}
.upsell-preview>header,.upsell-catalog>header{display:flex;align-items:center;justify-content:space-between;gap:20px}
.upsell-preview>header span,.upsell-catalog>header span,.upsell-hero aside>span{font-size:8px;letter-spacing:.16em;font-weight:850;color:var(--blue)}
.upsell-preview h3,.upsell-catalog h3{font:500 21px Georgia;margin:5px 0 0}
.upsell-preview>header button{border:0;background:none;color:var(--blue);font-size:9px;font-weight:850;cursor:pointer}
.upsell-catalog>header>b{font-size:9px;color:var(--green)}
.upsell-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;margin-top:18px}
.upsell-grid.compact{grid-template-columns:repeat(3,minmax(0,1fr))}
.upsell-card{min-height:270px;border:1px solid var(--line);border-radius:16px;padding:20px;background:linear-gradient(155deg,var(--white),var(--paper));display:flex;flex-direction:column;position:relative;overflow:hidden}
.upsell-card.featured{color:#fff;border-color:transparent;background:radial-gradient(circle at 88% 10%,rgba(221,148,92,.33),transparent 29%),linear-gradient(145deg,#082c45,#0f5278)}
.upsell-card:after{content:"";position:absolute;width:120px;height:120px;border:1px solid rgba(23,106,162,.1);border-radius:50%;right:-66px;bottom:-58px}
.upsell-card.featured:after{border-color:rgba(255,255,255,.13)}
.upsell-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.upsell-card-top>span{font-size:7px;letter-spacing:.15em;font-weight:850;color:var(--blue)}
.upsell-card.featured .upsell-card-top>span{color:#bfe5fa}
.upsell-tag{font-size:7px!important;letter-spacing:0!important;color:var(--green)!important;background:#e7f3ee;border-radius:99px;padding:5px 7px}
.upsell-card h4{font:500 25px/1.05 Georgia;margin:23px 0 9px;letter-spacing:-.025em}
.upsell-card>p{font-size:9px;line-height:1.6;color:var(--muted);margin:0 0 18px}
.upsell-card.featured>p{color:#c2d4dd}
.upsell-value{display:flex;align-items:baseline;gap:6px;margin:auto 0 14px}
.upsell-value b{font:600 24px Georgia}
.upsell-value span{font-size:8px;color:var(--muted)}
.upsell-card.featured .upsell-value span{color:#c2d4dd}
.upsell-assurance{font-size:7px;line-height:1.55;color:var(--green);margin:-4px 0 12px}
.upsell-card.featured .upsell-assurance{color:#a9edce}
.upsell-action{position:relative;z-index:1;width:100%;border:0;border-radius:5px;background:var(--navy);color:#fff;padding:12px 14px;font-size:9px;font-weight:850;cursor:pointer}
.upsell-card.featured .upsell-action{background:var(--white);color:var(--navy)}
.upsell-terms{display:block;font-size:7px;color:var(--muted);line-height:1.4;margin-top:9px}
.upsell-card.featured .upsell-terms{color:#9eb8c5}
.upsell-grid.compact .upsell-card{min-height:225px}
.upsell-grid.compact .upsell-card h4{font-size:20px;margin-top:18px}
.upsell-grid.compact .upsell-card>p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.upsell-hero{min-height:380px;border-radius:22px;padding:clamp(30px,5vw,60px);color:#fff;background:radial-gradient(circle at 84% 18%,rgba(207,112,72,.31),transparent 27%),linear-gradient(125deg,#071e30,#0a4263 63%,#4a3028);display:grid;grid-template-columns:1.25fr .75fr;gap:60px;align-items:end}
.upsell-hero h2{font:500 clamp(43px,5.5vw,70px)/.94 Georgia;margin:0;letter-spacing:-.045em}
.upsell-hero>div>p:last-child{max-width:660px;color:#c2d4dd;font-size:12px;line-height:1.7}
.upsell-hero aside{border-left:1px solid rgba(255,255,255,.22);padding-left:24px;display:flex;flex-direction:column;gap:10px}
.upsell-hero aside>span{color:#e7b895}
.upsell-hero aside>b{font:500 21px/1.2 Georgia}
.upsell-hero aside>small{font-size:8px;line-height:1.6;color:#b5cad4}
[dir=rtl] .upsell-hero aside{border-left:0;border-right:1px solid rgba(255,255,255,.22);padding-left:0;padding-right:24px}
@media(max-width:1050px){.upsell-grid{grid-template-columns:1fr 1fr}.upsell-grid.compact{grid-template-columns:1fr 1fr}.upsell-hero{grid-template-columns:1fr;gap:30px}.upsell-hero aside{max-width:520px}}
@media(max-width:780px){.upsell-grid,.upsell-grid.compact{grid-template-columns:1fr}.upsell-grid.compact .upsell-card:nth-child(n+3){display:none}.upsell-hero{padding:34px 23px;min-height:480px}.mobile-app-nav{grid-template-columns:repeat(5,1fr)}}
@media(max-width:480px){.upsell-preview,.upsell-catalog{padding:16px}.upsell-preview>header,.upsell-catalog>header{align-items:flex-start}.upsell-card{min-height:245px}.upsell-hero h2{font-size:44px}}
@media(max-width:780px){body.guest-authenticated .app-workspace{padding-bottom:155px}body.guest-authenticated .cp-platform-dock{bottom:calc(69px + env(safe-area-inset-bottom))}}
.toast{pointer-events:none}

/* CitiHome Club — an original, reservation-linked loyalty workspace. */
.club-hero{min-height:410px;border-radius:22px;padding:clamp(28px,5vw,58px);display:grid;grid-template-columns:1.15fr .85fr;gap:45px;align-items:center;color:#fff;background:radial-gradient(circle at 84% 20%,rgba(220,157,95,.28),transparent 30%),linear-gradient(125deg,#071e30,#0b4167 62%,#5b3828)}
.club-hero h2{font:500 clamp(43px,5.5vw,70px)/.95 Georgia;margin:0;letter-spacing:-.045em}
.club-hero>div:first-child>p:last-of-type{font-size:13px;line-height:1.75;color:#c3d6df;max-width:650px}
.club-hero-actions{display:flex;gap:10px;margin-top:25px}
.member-card{min-height:250px;border-radius:20px;padding:24px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(226,238,242,.92));color:var(--navy);box-shadow:0 30px 60px rgba(0,0,0,.22);display:flex;flex-direction:column;position:relative;overflow:hidden}
.member-card:after{content:"C";position:absolute;right:-22px;bottom:-60px;font:600 180px Georgia;color:rgba(11,52,84,.07)}
.member-card-top{display:flex;justify-content:space-between;font-size:8px;letter-spacing:.16em}
.member-card>strong{font:500 27px Georgia;margin:auto 0 5px}
.member-card>p{font:700 11px/1.4 ui-monospace,monospace;letter-spacing:.1em}
.member-card>div:last-child{display:flex;gap:30px;margin-top:22px}
.member-card>div:last-child span{display:flex;flex-direction:column}
.member-card>div:last-child b{font:600 24px Georgia}
.member-card>div:last-child small{font-size:7px;letter-spacing:.14em;margin-top:4px}
.club-dashboard{display:grid;grid-template-columns:.8fr 1.2fr;gap:15px;margin-top:16px}
.club-progress,.club-benefits{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:22px}
.club-progress header{display:flex;justify-content:space-between;gap:15px}
.club-progress header span,.club-join>div>span{font-size:8px;letter-spacing:.16em;font-weight:850;color:var(--blue)}
.club-progress h3,.club-join h3{font:500 24px Georgia;margin:7px 0}
.club-progress header>b{font-size:9px;color:var(--green)}
.club-progress>p{font-size:9px;line-height:1.6;color:var(--muted)}
.club-benefits{display:grid;grid-template-columns:1fr 1fr;gap:2px 18px}
.club-benefits article{display:flex;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}
.club-benefits i{font-style:normal;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#e7f3ee;color:var(--green);font-size:8px;flex:none}
.club-benefits b{font-size:10px}
.club-benefits p{font-size:8px;line-height:1.5;color:var(--muted);margin:4px 0 0}
.club-join{margin-top:16px;border-radius:17px;padding:28px;background:var(--white);border:1px solid var(--line);display:grid;grid-template-columns:1fr 430px;gap:45px;align-items:center}
.club-join>div>p{font-size:10px;color:var(--muted);line-height:1.6}
.club-join form{border-left:1px solid var(--line);padding-left:28px}
.club-after-button{width:100%;margin-top:12px;border:0;background:none;color:var(--blue);font-size:9px;font-weight:850;cursor:pointer}
@media(max-width:1050px){.club-dashboard{grid-template-columns:1fr}.club-join{grid-template-columns:1fr 380px}}
@media(max-width:780px){.club-hero{grid-template-columns:1fr;padding:30px 22px}.member-card{min-height:220px}.club-join{grid-template-columns:1fr;gap:15px}.club-join form{border-left:0;border-top:1px solid var(--line);padding:18px 0 0}.mobile-app-nav{grid-template-columns:repeat(5,1fr)}}
@media(max-width:480px){.club-benefits{grid-template-columns:1fr}.club-hero-actions{flex-direction:column;align-items:flex-start}}

/* ── Post-checkout "come back" block ─────────────────────────────────────── */
.come-back{background:var(--white);border:1px solid var(--line);border-radius:15px;padding:20px;margin-top:17px}
.come-back>header>span{font-size:8px;letter-spacing:.16em;font-weight:850;color:var(--copper)}
.come-back>header h3{font:500 21px Georgia;margin:5px 0 0}
.come-back>header p{font-size:11px;color:var(--muted);margin:6px 0 0;line-height:1.55}
.come-back-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:11px;margin-top:15px}
.come-back-card{display:flex;flex-direction:column;padding:15px;border:1px solid var(--line);border-radius:13px;background:var(--paper)}
.come-back-card>span{font-size:7.5px;letter-spacing:.15em;font-weight:850;color:var(--muted)}
.come-back-card>b{font-size:12px;margin:8px 0 5px;line-height:1.4}
.come-back-card>small{font-size:9.5px;color:var(--muted);line-height:1.5;margin-bottom:12px}
.come-back-card .button{margin-top:auto;width:100%;justify-content:center}
.come-back-card.is-primary{border-color:var(--copper);background:linear-gradient(140deg,color-mix(in srgb,var(--copper) 10%,transparent),transparent)}
.come-back-card.is-primary>span{color:var(--copper)}
@media(max-width:480px){.come-back{padding:16px}.come-back-grid{grid-template-columns:1fr}}

/* ── iOS / Safari, and the dark half of it ───────────────────────────────────
   The mobile tab bar is the one piece of chrome that is always on screen on a
   phone, and it was painted with a literal rgba(255,255,255,.97): in dark mode
   that is a white slab under dark icons, and the icons vanish into it. It also
   sits over the home indicator, so its blur and its fill have to extend into
   the safe area even though its touch targets must not.
   The blur carries the -webkit- prefix because iOS Safari ignores the
   unprefixed property, and without it the bar falls back to its own fill —
   which is why it has one that is legible on its own. */
[data-theme="dark"] .mobile-app-nav{background:rgba(14,20,26,.97);border-top-color:rgba(255,255,255,.12)}
[data-theme="dark"] .mobile-app-nav button{color:#8b9aa2}
[data-theme="dark"] .topbar-actions select{background:#141b21;color:#e7eef2;border-color:rgba(255,255,255,.14)}
/* Momentum scrolling inside the panes, and no rubber-banding of the page behind
   a fixed tab bar. -webkit-overflow-scrolling is a no-op on every engine that
   does not need it. */
.support-chat,.app-workspace{-webkit-overflow-scrolling:touch}
