/* HQ Soft Plum: smooth tonal light, no architectural seam, a shorter header. */
html:is([data-hq-theme=hq-soft]){--ha-frame:#38203f;--ha-mid:#754575;--ha-accent:#542e62;--ha-gold:#cbb99e}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top{
 background:radial-gradient(ellipse at 10% 0%,#aa729747,transparent 52%),radial-gradient(ellipse at 47% 115%,#733d7838,transparent 60%),linear-gradient(110deg,#4d2856 0%,#351c42 48%,#1c192e 100%);
 border-bottom-color:#cfb8a474;box-shadow:inset 0 1px #f9e6d52b,inset 0 -1px #1a112b5c,0 5px 16px #331a3b26;
}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top::before{background:linear-gradient(180deg,#fff0d509,transparent 65%,#180d2318);box-shadow:none}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .ha-brand-logo{width:124px;max-width:100%;height:auto;filter:drop-shadow(0 4px 8px #180e2338)}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-nav button[aria-selected=true]{background:linear-gradient(145deg,#f6eddf,#ded0c3);border-color:#f4e7d77a;color:#46334b;box-shadow:inset 0 1px #fff9ed99,0 3px 9px #180d2329}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-nav button[aria-selected=true]::after{background:#97798b}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top :is(.hq-account-card,.hb-profile-controls){background:linear-gradient(140deg,#ffffff0d,#130f231c);border-color:#e5d1df30;box-shadow:inset 0 1px #fff2e70a,0 3px 10px #1a102119;backdrop-filter:none}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-header-utilities button{background:#fff0e008;border-color:#d9bfd345;box-shadow:inset 0 1px #fff1d40a;color:#f2e6dc}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-header-utilities button:hover{background:#ffffff16}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-postcode-booking{border-top:1px solid #d9cbd3}
@media(min-width:761px){
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top.hq-header{grid-template-columns:124px minmax(0,1fr) 100px 238px;grid-template-rows:auto;gap:14px;min-height:118px;padding:14px 22px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-brand{grid-column:1;grid-row:1;width:124px;min-width:0}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-nav-stack{grid-column:2;grid-row:1;gap:8px;align-self:center}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-nav-stack .hd-nav{display:flex;flex-wrap:wrap;gap:1px;border:0;padding:0;justify-content:center}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-nav-stack .hd-nav button{min-height:34px;padding:8px 7px;font-size:11px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-nav-tools .hb-profile-controls{padding:0 7px;min-height:28px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-header-utilities{grid-column:3;grid-row:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;align-self:center}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-sound-toggle{height:28px;min-height:28px;width:30px;padding:5px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-price-guide-button{height:34px;min-height:34px;padding:7px 9px;white-space:nowrap}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-session-bar.hq-account-card{grid-column:4;grid-row:1;width:238px;padding:9px 10px;gap:4px;align-self:center}
}
@media(min-width:901px) and (max-width:1100px){
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top.hq-header{grid-template-columns:108px minmax(0,1fr) 96px 220px;gap:10px;padding:12px 18px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-brand{width:108px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-session-bar.hq-account-card{width:220px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-nav-stack .hd-nav button{padding:8px 5px;font-size:10px}
}
@media(min-width:761px) and (max-width:900px){
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top.hq-header{grid-template-columns:124px minmax(0,1fr) 100px;gap:10px 16px;padding:12px 18px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hd-session-bar.hq-account-card{grid-column:2/4;grid-row:1;justify-self:end;width:260px}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-nav-stack{grid-column:1/3;grid-row:2}
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hd-top .hq-header-utilities{grid-column:3;grid-row:2}
}
@media(max-width:760px){
 html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) .hm-phone-header{background:radial-gradient(ellipse at 0 0,#a86d9540,transparent 65%),linear-gradient(110deg,#4d2856,#251a34);border-bottom-color:#cbb99e66}
}

/* Deeper aubergine accents echo the shared login page's plum and ivory. */
html:is([data-hq-theme=hq-soft]) body{background:radial-gradient(ellipse at 8% 0%,#693b6680,transparent 48%),linear-gradient(140deg,#2e1b38,#191523 75%)}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) :is(.hd-primary,.hd-find-slot,.hd-book){background:linear-gradient(130deg,#754878,#512e60 60%,#352340);border-color:#68466d}
html:is([data-hq-theme=hq-soft]) #horizon-booking-demo:is([data-horizon-theme=hq-soft]) :is(.hd-primary,.hd-find-slot,.hd-book):hover{background:linear-gradient(130deg,#875889,#60396f 60%,#422b50)}
