:root{--bg:#03071d;--panel:#071331;--cyan:#00eaff;--pink:#f000ed;--yellow:#ffe52d;--white:#f5f7ff;--muted:#b8c9e7}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 15%,#11134b 0,#03071d 58%);color:var(--white);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}
.container{width:min(1440px,94%);margin:auto}
header{height:70px;background:#03071df2;border-bottom:1px solid var(--cyan);box-shadow:0 2px 18px #00eaff35;display:flex;align-items:center;position:relative;z-index:2}.nav{display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-size:27px;font-weight:900;letter-spacing:1px;display:flex;align-items:center;gap:9px}.mark{font-size:36px;font-style:italic;color:#ff9d00;text-shadow:3px 3px var(--pink)}.links{display:flex;gap:23px;color:var(--cyan);font-size:13px;font-weight:800}.links a:hover{color:var(--pink)}.actions{display:flex;gap:12px}.outline,.primary{border-radius:7px;padding:10px 17px;font-size:13px;font-weight:900;cursor:pointer}.outline{color:var(--cyan);border:1px solid var(--cyan);background:transparent}.primary{background:var(--pink);color:#09051b;border:1px solid var(--pink);box-shadow:0 0 14px #f000ed66}
.hero{height:235px;display:flex;align-items:center;background:linear-gradient(90deg,#03071d 0%,#03071de8 34%,#03071d15 76%),url('assets/booking-hero-background.jpg') center 42%/cover no-repeat;border-bottom:2px solid var(--cyan)}.hero-copy{max-width:610px;padding:25px 0}.eyebrow{color:var(--yellow);font-weight:900;font-size:17px}.hero h1{font-size:clamp(36px,5vw,58px);line-height:1;margin:9px 0;color:#ffdf52;text-shadow:3px 3px var(--pink)}.hero p{font-size:19px;font-weight:800;margin:0}
main{padding:22px 0 30px}.booking-shell{border:1px solid var(--pink);border-radius:16px;padding:22px;background:linear-gradient(135deg,#081434ee,#03071df5);box-shadow:0 0 22px #f000ed44,0 0 18px #00eaff22;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(330px,.95fr);gap:28px}
.section-title{display:flex;align-items:center;gap:12px;margin:0 0 5px;color:var(--yellow);font-size:25px}.section-sub{color:var(--muted);font-size:13px;margin:0 0 25px}.step{margin:18px 0}.step-label{display:flex;align-items:center;gap:10px;font-weight:900;margin-bottom:10px}.step-number{width:27px;height:27px;border-radius:7px;background:#dffaff;color:#05142c;display:inline-grid;place-items:center;font-size:17px}
.choice-row{display:flex;gap:12px;flex-wrap:wrap}.choice{border:1px solid #627cff;background:#030b25;color:white;border-radius:10px;padding:13px 16px;min-width:145px;cursor:pointer;font-weight:800}.choice.active{background:var(--pink);border-color:var(--pink);color:#09051b;box-shadow:0 0 14px #f000ed55}
.fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{width:100%;min-width:0;background:#030b25;border:1px solid var(--cyan);border-radius:9px;color:white;padding:13px 14px;outline:none}.field:focus{box-shadow:0 0 0 2px #00eaff44}.address-row{display:grid;grid-template-columns:1fr auto;gap:12px}.map-btn{border:1px solid var(--cyan);background:#06183a;color:var(--cyan);border-radius:9px;padding:0 15px;cursor:pointer;font-weight:800}textarea.field{height:62px;resize:vertical}
.confirm{width:100%;padding:15px;margin-top:3px;border:0;border-radius:9px;background:linear-gradient(90deg,#e500e8,#a900ff);color:white;font-size:19px;font-weight:900;cursor:pointer;box-shadow:0 0 18px #f000ed66}.secure{text-align:center;color:var(--muted);font-size:12px;margin:10px 0 0}
.provider{border:1px solid var(--pink);border-radius:14px;padding:20px;background:linear-gradient(145deg,#0b1640,#03071d);box-shadow:0 0 17px #6d00ff55;align-self:center}.provider h2{font-size:22px;color:#f34af5;margin:0 0 18px}.provider h2 span{color:var(--cyan)}.profile{display:grid;grid-template-columns:180px 1fr;gap:16px}.profile img{width:100%;height:205px;object-fit:cover;border-radius:10px;border:1px solid #8c64ff}.profile h3{font-size:19px;margin:5px 0 7px}.verified{color:var(--cyan);font-size:13px;font-weight:900}.stars{color:var(--yellow);font-size:16px;font-weight:900;margin:12px 0}.stars small{color:white;font-size:13px;font-weight:400}.profile p{font-size:14px;line-height:1.5;margin:0}.meta{display:grid;gap:14px;margin:22px 5px 18px}.meta div{display:flex;align-items:center;gap:14px;font-size:14px}.meta b{color:var(--cyan);font-size:21px;width:26px;text-align:center}.price-box{border-top:1px solid var(--cyan);padding-top:18px}.price-box h3{margin:0 0 8px;font-size:17px}.price{font-size:34px;color:var(--yellow);font-weight:900}.price span{font-size:17px;color:white}
.progress{display:flex;align-items:center;justify-content:space-between;margin:30px 15px 28px;gap:8px}.progress-item{flex:1;text-align:center;position:relative;font-size:13px;font-weight:800}.progress-item:not(:last-child):after{content:"";height:3px;background:linear-gradient(90deg,var(--pink),var(--cyan));position:absolute;left:60%;right:-40%;top:21px;z-index:0}.circle{width:46px;height:46px;border:2px solid var(--cyan);border-radius:50%;display:grid;place-items:center;margin:0 auto 8px;color:var(--cyan);font-size:21px;background:#071331;position:relative;z-index:1}.progress-item:first-child .circle{border-color:var(--pink);background:var(--pink);color:white;box-shadow:0 0 15px var(--pink)}
.lower{display:grid;grid-template-columns:1fr 1fr;gap:22px}.info-card{min-height:175px;border:1px solid var(--cyan);border-radius:13px;padding:20px;background:linear-gradient(110deg,#071b48,#050a27);box-shadow:0 0 14px #00eaff33;position:relative;overflow:hidden}.info-card h2{font-size:21px;color:var(--yellow);margin:0 0 13px}.info-card ul{padding:0;margin:0;list-style:none;line-height:1.8;font-size:14px}.info-card li:before{content:"✓";color:var(--cyan);font-weight:900;margin-right:10px}.help{border-color:var(--pink);background:linear-gradient(100deg,#07133a 0%,#080d35 68%,#260052 100%)}.help p{font-size:14px;line-height:1.5;max-width:68%}.help img{position:absolute;right:0;bottom:0;width:34%;height:100%;object-fit:cover;object-position:top center;mask-image:linear-gradient(90deg,transparent,#000 35%)}.help button{border:0;background:var(--pink);color:#08051a;border-radius:8px;padding:11px 17px;font-weight:900;cursor:pointer;position:relative;z-index:1}
/* Demo footer styles scoped away from shared .retro-footer */
footer:not(.retro-footer){margin-top:25px;border-top:1px solid var(--cyan);background:#020619;padding:28px 0 16px}
footer:not(.retro-footer) .footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:25px}
footer:not(.retro-footer) .footer-grid h3{font-size:15px;color:var(--cyan);margin:0 0 12px}
footer:not(.retro-footer) .footer-grid a,footer:not(.retro-footer) .footer-grid p{display:block;font-size:13px;color:#d2e1fa;margin:7px 0}
footer:not(.retro-footer) .copyright{text-align:right;border-top:1px solid #00eaff55;margin-top:22px;padding-top:13px;font-size:11px;color:var(--muted)}
@media(max-width:900px){.links{display:none}.booking-shell{grid-template-columns:1fr}.provider{max-width:none}.hero{background-position:58% center}}
@media(max-width:600px){header{height:auto;padding:12px 0}.brand{font-size:22px}.mark{font-size:30px}.actions{gap:6px}.outline,.primary{padding:8px 10px;font-size:11px}.hero{height:260px;background-position:62% center}.hero p{font-size:15px}.booking-shell{padding:15px;gap:20px}.section-title{font-size:21px}.choice{flex:1;min-width:calc(50% - 8px);padding:12px 8px;font-size:13px}.fields{grid-template-columns:1fr}.address-row{grid-template-columns:1fr}.map-btn{padding:12px}.profile{grid-template-columns:125px 1fr;gap:12px}.profile img{height:175px}.profile h3{font-size:16px}.profile p{font-size:12px}.progress{margin:25px 0;gap:2px}.progress-item{font-size:10px}.circle{width:38px;height:38px;font-size:17px}.progress-item:not(:last-child):after{top:18px}.lower{grid-template-columns:1fr}.help img{opacity:.55}footer:not(.retro-footer) .footer-grid{grid-template-columns:1fr 1fr}footer:not(.retro-footer) .copyright{text-align:left}}

.brand img.site-logo{height:42px;width:auto;display:block;max-width:180px}
.brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:inherit}
.brand-name-text{font-weight:900;letter-spacing:1px}
