:root{
  --purple:#5d2473;--purple-2:#7b3fa0;--purple-deep:#2f0d3b;--pink:#ed3a9b;--pink-soft:#ffd8eb;
  --gold:#c9962c;--gold-soft:#f2d886;--silver:#d7d4dd;--ink:#17131a;--muted:#6c6570;--white:#fff;
  --shadow:0 16px 45px rgba(54,17,67,.13);--radius:26px;--serif:Georgia,'Times New Roman',serif;--sans:Inter,Arial,sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--sans);color:var(--ink);background:#fff;line-height:1.55}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.shell{width:min(1180px,calc(100% - 40px));margin-inline:auto}.section-pad{padding:88px 0}.eyebrow{text-transform:uppercase;letter-spacing:.28em;font-size:.74rem;font-weight:800;color:var(--purple);margin:0 0 14px}h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:.95;margin:0}h1{font-size:clamp(4rem,8vw,7.4rem);color:var(--purple-deep)}h1 span,h2 span{color:var(--gold)}h2{font-size:clamp(2.6rem,5vw,4.7rem);color:var(--purple)}h3{font-size:2.4rem;color:var(--purple)}p{margin-top:0}.lead{font-size:1.16rem;max-width:580px;color:#3d3540}.button-row{display:flex;gap:14px;flex-wrap:wrap;margin:32px 0}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:999px;font-weight:800;font-size:.86rem;letter-spacing:.02em;border:1px solid transparent;transition:.22s ease;cursor:pointer}.button:hover{transform:translateY(-2px)}.button-pink{background:linear-gradient(135deg,var(--pink),#cf2586);color:white;box-shadow:0 12px 28px rgba(237,58,155,.25)}.button-ghost{border-color:#d7cadb;background:rgba(255,255,255,.75);color:var(--purple)}
.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid #eee}.nav-wrap{height:86px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;margin-right:auto}.brand-full{width:150px;height:68px;object-fit:contain}.brand-mark{display:none;width:48px}.site-nav{display:flex;gap:26px;font-size:.9rem}.site-nav a{position:relative}.site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--pink);transition:.2s}.site-nav a:hover:after{right:0}.nav-toggle{display:none;border:0;background:none}.nav-toggle span{display:block;width:26px;height:2px;background:#35123f;margin:5px}.nav-cta{white-space:nowrap}
.hero{position:relative;overflow:hidden;padding-top:66px}.hero-grid{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;gap:40px}.hero-copy{padding:35px 0}.hero-art{position:relative;min-height:610px}.hero-photo{position:absolute;inset:0 95px 0 0;border-radius:40% 8% 8% 40%/35% 8% 8% 35%;box-shadow:var(--shadow)}.hero-ribbon{position:absolute;right:0;top:0;bottom:0;width:165px;border-radius:0 40px 40px 0;background:radial-gradient(circle at 40% 10%,#7c3aa0 0,#361244 46%,#1f0926 100%);color:white;padding:34px 22px;display:flex;flex-direction:column;justify-content:space-between;border-left:4px solid var(--gold)}.hero-ribbon img{width:95px;filter:drop-shadow(0 10px 16px rgba(0,0,0,.25))}.hero-ribbon p{text-transform:uppercase;letter-spacing:.08em;line-height:1.7}.hero-glow{position:absolute;border-radius:50%;filter:blur(50px);opacity:.22;pointer-events:none}.hero-glow-one{width:320px;height:320px;background:var(--pink);left:-110px;top:50px}.hero-glow-two{width:360px;height:360px;background:var(--gold);right:-150px;bottom:-120px}.mini-points{display:flex;gap:0;max-width:620px}.mini-points div{padding:0 28px;border-right:1px solid #ddd}.mini-points div:first-child{padding-left:0}.mini-points div:last-child{border:0}.mini-points strong,.mini-points span{display:block}.mini-points strong{color:var(--purple);font-size:.82rem;text-transform:uppercase}.mini-points span{font-size:.8rem;color:var(--muted)}
.placeholder-photo{background:linear-gradient(135deg,#f7dcea,#f4e9dd 45%,#e4d3ee 100%);position:relative;overflow:hidden}.placeholder-photo:before{content:"";position:absolute;width:55%;height:140%;right:-12%;top:-20%;background:linear-gradient(180deg,rgba(93,36,115,.18),rgba(237,58,155,.12));border-radius:50%;transform:rotate(18deg)}.placeholder-photo:after{content:"";position:absolute;inset:0;background-image:url('../img/ceska-icon.png');background-size:48%;background-repeat:no-repeat;background-position:75% 50%;opacity:.13;mix-blend-mode:multiply}.placeholder-photo span,.photo-label{position:absolute!important;z-index:2;left:22px;bottom:20px;background:rgba(255,255,255,.84);padding:9px 12px;border-radius:12px;color:var(--purple);font-weight:800;font-size:.8rem}.photo-label small{font-weight:500;color:#6e6672}
.section-heading{text-align:center;max-width:760px;margin:0 auto 38px}.section-heading p:last-child{color:var(--muted);margin-top:15px}.inline-heading{max-width:none;display:flex;justify-content:space-between;align-items:end;text-align:left}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.service-card{display:grid;grid-template-columns:1fr 1fr;border:1px solid #eed7af;border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(30,13,36,.06);min-height:330px}.service-visual{min-height:330px}.service-copy{padding:44px 34px;align-self:center}.service-copy p:not(.eyebrow){color:var(--muted)}.text-link{font-weight:800;color:var(--purple);text-transform:uppercase;font-size:.83rem}.text-link span{color:var(--pink);margin-left:8px}.gallery{padding-top:45px}.gallery-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.gallery-item{aspect-ratio:.72;border-radius:18px;margin:0;box-shadow:0 8px 26px rgba(36,18,40,.08)}.gallery-item:nth-child(even){transform:translateY(18px)}
.benefits{background:linear-gradient(135deg,#2d0c37,#561669 60%,#2a0a34);color:white;padding:34px 0;position:relative;overflow:hidden}.benefits:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 10% 50%,rgba(237,58,155,.16),transparent 30%),radial-gradient(circle at 90% 50%,rgba(201,150,44,.15),transparent 30%)}.benefits-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr)}.benefits-grid div{text-align:center;padding:0 22px;border-right:1px solid rgba(255,255,255,.28)}.benefits-grid div:last-child{border:0}.benefits-grid span{display:block;color:var(--gold-soft);font-size:2.1rem}.benefits-grid strong,.benefits-grid small{display:block}.benefits-grid strong{text-transform:uppercase;font-size:.82rem;margin:4px 0}.benefits-grid small{opacity:.82}
.booking{background:linear-gradient(90deg,#fbf4f7,#fff 55%,#fbf2fb)}.booking-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}.booking h2 span{color:var(--gold)}.deposit-note{font-size:1.03rem;margin:20px 0 28px}.booking-list{border-left:1px solid #e3d9e6;padding-left:38px}.booking-list p{font-weight:700;color:#403645;margin:12px 0}.experience-grid{display:grid;grid-template-columns:1fr 1.2fr .8fr;gap:34px;align-items:stretch}.studio-placeholder{min-height:360px;border-radius:var(--radius)}.experience-copy{align-self:center}.experience-copy p:not(.eyebrow){color:var(--muted);margin:24px 0}.brand-motion{border-left:1px solid #e5dce8;padding-left:28px;display:flex;flex-direction:column;justify-content:center}.brand-motion video{width:100%;max-height:180px;object-fit:contain;border-radius:20px;background:#faf7fb}.video-toggle{margin:10px 0 18px;border:0;background:none;color:var(--purple);font-weight:800;cursor:pointer}.brand-motion blockquote{font-family:var(--serif);font-size:1.3rem;font-style:italic;color:#4e4252;margin:0}
.contact{background:#fbf9fc}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.contact-copy p:not(.eyebrow){color:var(--muted);max-width:500px}.contact-mark{width:190px;opacity:.18;margin-top:45px}.booking-form{background:white;border:1px solid #ece4ee;border-radius:28px;padding:34px;box-shadow:var(--shadow)}.booking-form label,.booking-form legend{font-weight:700;color:#4a3b4f;font-size:.86rem}.booking-form input,.booking-form select,.booking-form textarea{width:100%;margin-top:8px;border:1px solid #ddd2e0;border-radius:12px;padding:13px 14px;font:inherit;background:#fff}.booking-form textarea{resize:vertical}.field-grid{display:grid;gap:14px;margin-bottom:16px}.field-grid.two{grid-template-columns:1fr 1fr}.booking-form fieldset{border:0;padding:0;margin:8px 0 18px}.choice-row{display:flex;gap:10px;margin-top:10px}.choice-row label{flex:1}.choice-row input{position:absolute;opacity:0}.choice-row span{display:block;text-align:center;padding:12px;border:1px solid #ddcfe1;border-radius:999px;cursor:pointer}.choice-row input:checked+span{background:var(--purple);color:white;border-color:var(--purple)}.policy-check{display:flex;gap:10px;align-items:flex-start;margin:18px 0}.policy-check input{width:auto;margin-top:3px}.booking-form .button{width:100%;border:0}.form-status{margin:12px 0 0;color:var(--purple);font-weight:700}
.site-footer{background:#121014;color:white}.footer-main{display:grid;grid-template-columns:1.2fr 1fr .8fr;align-items:center;gap:30px;padding:34px 0}.footer-brand{display:flex;align-items:center;gap:14px}.footer-brand img{width:130px;height:74px;object-fit:contain}.footer-brand span{font-family:'Brush Script MT',cursive;font-size:1.3rem}.site-footer nav{display:flex;gap:16px;flex-wrap:wrap;font-size:.84rem}.footer-note{text-align:right;color:#f0a6d0}.footer-bottom{border-top:1px solid #37323a;padding:16px 0;display:flex;justify-content:space-between;color:#aaa;font-size:.74rem}
.reveal{opacity:0;transform:translateY(18px);transition:.6s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:980px){.site-nav,.nav-cta{display:none}.nav-toggle{display:block}.site-nav.open{display:flex;position:absolute;top:86px;left:0;right:0;background:#fff;padding:22px 28px;flex-direction:column;border-bottom:1px solid #eee}.hero-grid,.booking-grid,.contact-grid{grid-template-columns:1fr}.hero-art{min-height:520px}.service-card{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(3,1fr)}.gallery-item:nth-child(even){transform:none}.experience-grid{grid-template-columns:1fr 1fr}.brand-motion{grid-column:1/-1;border-left:0;border-top:1px solid #e5dce8;padding:28px 0 0}.benefits-grid{grid-template-columns:1fr 1fr;row-gap:24px}.benefits-grid div:nth-child(2){border-right:0}.footer-main{grid-template-columns:1fr}.footer-note{text-align:left}}
@media(max-width:640px){.shell{width:min(100% - 28px,1180px)}.section-pad{padding:64px 0}.nav-wrap{height:72px}.brand-full{display:none}.brand-mark{display:block}.site-nav.open{top:72px}.hero{padding-top:24px}.hero-grid{gap:20px}.hero-art{min-height:460px}.hero-photo{right:58px;border-radius:34px 0 0 34px}.hero-ribbon{width:90px;padding:20px 12px}.hero-ribbon img{width:58px}.hero-ribbon p{font-size:.72rem}.mini-points{display:grid;grid-template-columns:repeat(3,1fr)}.mini-points div{padding:0 10px;text-align:center}.service-grid,.field-grid.two{grid-template-columns:1fr}.inline-heading{align-items:flex-start;gap:18px;flex-direction:column}.gallery-grid{grid-template-columns:repeat(2,1fr)}.benefits-grid{grid-template-columns:1fr}.benefits-grid div{border-right:0;border-bottom:1px solid rgba(255,255,255,.2);padding:16px}.experience-grid{grid-template-columns:1fr}.brand-motion{grid-column:auto}.choice-row{flex-direction:column}.contact-grid{gap:28px}.booking-form{padding:22px}.footer-bottom{flex-direction:column;gap:8px}}

/* V2 inner pages */
.inner-hero{background:linear-gradient(135deg,#fff 0,#fff8fb 56%,#f3e9f8 100%);overflow:hidden}.inner-hero-grid{display:grid;grid-template-columns:1fr .9fr;gap:60px;align-items:center}.inner-art{min-height:520px;border-radius:40px;box-shadow:var(--shadow)}.soft-section{background:#fcfafc}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.option-card{background:#fff;border:1px solid #eadfeb;border-radius:24px;padding:16px;box-shadow:0 10px 30px rgba(30,13,36,.06)}.option-photo{aspect-ratio:1/.88;border-radius:18px;margin-bottom:22px}.option-card h3{font-size:2rem;padding:0 8px}.option-card p{color:var(--muted);padding:0 8px 10px}.booking-page{background:linear-gradient(135deg,#fff 0,#fff8fb 45%,#f4edf7 100%)}.booking-page .section-heading{max-width:850px}.booking-page h1{font-size:clamp(3.5rem,7vw,6rem)}.booking-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:36px;align-items:start}.booking-aside{position:sticky;top:116px;background:linear-gradient(155deg,#2d0c37,#5d2473);color:#fff;border-radius:28px;padding:38px;box-shadow:var(--shadow)}.booking-aside img{width:130px;margin:0 auto 22px;filter:drop-shadow(0 12px 22px rgba(0,0,0,.22))}.booking-aside h2{color:#f2d886;font-size:2.8rem;margin-bottom:24px}.booking-aside p{color:#f4eaf6}.policy-mini{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}.policy-mini span{border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:7px 12px;font-size:.76rem}.service-choice{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.event-fields{margin:8px 0 0;padding-top:18px;border-top:1px solid #eadfeb}.event-callout{display:flex;flex-direction:column;background:#f7edf9;border-left:4px solid var(--gold);padding:14px 16px;border-radius:12px;margin-bottom:18px;color:var(--purple)}.event-callout span{font-size:.82rem;color:var(--muted);margin-top:3px}.event-fields>label{display:block;margin:16px 0}.booking-form.is-event{border-color:#d9b85f;box-shadow:0 18px 50px rgba(93,36,115,.16)}
@media(max-width:980px){.inner-hero-grid,.booking-layout{grid-template-columns:1fr}.option-grid{grid-template-columns:1fr 1fr}.booking-aside{position:static}.service-choice{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.inner-art{min-height:390px}.option-grid{grid-template-columns:1fr}.service-choice{grid-template-columns:1fr}.booking-page h1{font-size:3.5rem}}

/* V3.1 temporary generic photography */
.real-photo{position:relative;overflow:hidden!important;background:#eee!important}
.real-photo>img.cb-generic{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}
.real-photo::before,.real-photo::after{display:none!important}
.real-photo>span{display:none!important}

/* ===== Ceska Beauty V4 visual refinement ===== */

/* Shared original generated photography */
.real-photo{position:relative;overflow:hidden!important;background:#eadfea!important}
.real-photo>img.cb-generic{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:0}
.real-photo::before,.real-photo::after{display:none!important}

/* Restore the signature purple/gold left edge on interior/page headers */
.inner-hero,.booking-page{position:relative}
.inner-hero::before,.booking-page::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:18px;
  background:linear-gradient(180deg,#6d2c8d 0%,#3a1248 58%,#210827 100%);
  box-shadow:5px 0 0 #c89122;
  z-index:2
}
.inner-hero::after,.booking-page::after{
  content:"";position:absolute;left:18px;top:12%;width:100px;height:76%;
  background:linear-gradient(135deg,rgba(109,44,141,.12),rgba(237,58,155,.03) 55%,transparent);
  clip-path:polygon(0 0,100% 50%,0 100%);
  pointer-events:none
}
.inner-hero .shell,.booking-page .shell{position:relative;z-index:3}

/* Header photography treatment */
.inner-art,.booking-head-photo{
  min-height:520px;border-radius:42px;box-shadow:0 20px 55px rgba(46,18,54,.16);
  border:1px solid rgba(201,145,34,.28)
}
.inner-art::before,.booking-head-photo::before{display:none!important}
.inner-art img,.booking-head-photo img{object-position:center 34%}
.inner-hero-grid{position:relative}
.inner-hero-grid::after{
  content:"";position:absolute;right:-26px;top:-26px;width:115px;height:115px;
  background:url('../img/ceska-icon.png') center/contain no-repeat;opacity:.09;pointer-events:none
}

/* Home hero photo */
.hero-photo.real-photo{border:1px solid rgba(201,145,34,.3)}
.hero-photo.real-photo img{object-position:center 28%}

/* Lightweight inline line-icon system */
.feature-icon{
  width:34px;height:34px;display:block;margin:0 auto 9px;
  fill:none;stroke:#ed3a9b;stroke-width:2;stroke-linecap:round;stroke-linejoin:round
}
.mini-points{align-items:flex-start}
.mini-points div{text-align:center;min-width:150px}
.mini-points .feature-icon{width:31px;height:31px}
.policy-mini span{display:inline-flex!important;align-items:center;gap:7px}
.policy-mini .feature-icon{width:18px;height:18px;margin:0;stroke:#f2d886}

/* Add elegant icon accents to existing checklist rows */
.booking-list p{position:relative;padding-left:38px}
.booking-list p::before{
  content:"✦";position:absolute;left:0;top:-2px;width:25px;height:25px;border-radius:50%;
  display:grid;place-items:center;background:linear-gradient(135deg,#ed3a9b,#8b3ca5);
  color:#fff;font-size:.72rem;box-shadow:0 6px 16px rgba(237,58,155,.2)
}

/* Service cards get a fine metallic accent */
.service-card,.option-card{position:relative;overflow:hidden}
.service-card::after,.option-card::after{
  content:"";position:absolute;left:0;right:0;top:0;height:2px;
  background:linear-gradient(90deg,transparent,#d3a33a,#ef6bb0,transparent);opacity:.72
}

/* Booking page now has a true visual header */
.booking-page-head{
  display:grid;grid-template-columns:1.05fr .8fr;gap:48px;align-items:center;margin-bottom:46px
}
.booking-page .booking-page-head .section-heading{margin:0;max-width:none}
.booking-head-photo{min-height:390px}
.booking-head-photo img{object-position:center 24%}
.booking-aside{overflow:hidden;border:1px solid rgba(242,216,134,.24)}
.booking-aside::after{
  content:"";position:absolute;right:-45px;bottom:-45px;width:180px;height:180px;
  background:url('../img/ceska-icon.png') center/contain no-repeat;opacity:.07;pointer-events:none
}

/* Decorative micro-mark on section headings */
.section-heading .eyebrow::before,.inner-hero .eyebrow::before{
  content:"✦";color:#d09b29;margin-right:8px;font-size:.82em
}

@media(max-width:900px){
  .booking-page-head{grid-template-columns:1fr;gap:26px}
  .booking-head-photo,.inner-art{min-height:380px}
  .inner-hero::before,.booking-page::before{width:9px;box-shadow:3px 0 0 #c89122}
  .inner-hero::after,.booking-page::after{left:9px;width:55px}
}
@media(max-width:620px){
  .booking-head-photo,.inner-art{min-height:310px;border-radius:26px}
  .mini-points div{min-width:0}
  .feature-icon{width:28px;height:28px}
}

/* ================= CESKA BEAUTY V5 — approved luxury direction ================= */
.v5-home{background:#fff;color:#251629}
.v5-home svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.v5-hero{background:linear-gradient(110deg,#2a0a35 0%,#4d155e 37%,#1d071f 100%);color:#fff;position:relative;overflow:hidden}
.v5-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 50%,rgba(178,48,174,.25),transparent 30%),radial-gradient(circle at 70% 20%,rgba(237,58,155,.16),transparent 24%);pointer-events:none}
.v5-hero-inner{max-width:1500px;margin:auto;min-height:650px;display:grid;grid-template-columns:43% 47% 10%;position:relative}
.v5-hero-copy{padding:70px 38px 28px 54px;z-index:3}
.v5-kicker{font-size:.85rem;letter-spacing:.38em;font-weight:800;color:#f4dff7;margin:0 0 12px}
.v5-hero h1{font-family:var(--serif);font-size:clamp(4.6rem,7.4vw,8.2rem);line-height:.78;letter-spacing:-.045em;color:#fff;margin:0 0 28px}
.v5-hero h1 em{display:block;color:#e0ad3a;font-style:italic;font-weight:500}
.v5-lead{font-size:1.08rem;max-width:520px;color:#fff;line-height:1.55}
.v5-actions{display:flex;gap:15px;flex-wrap:wrap;margin:26px 0 30px}
.v5-btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;border-radius:999px;padding:15px 23px;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em;text-decoration:none;transition:.2s ease}
.v5-btn svg{width:22px;height:22px}
.v5-btn-pink{background:linear-gradient(135deg,#f12d9b,#df278f);color:#fff;box-shadow:0 13px 30px rgba(237,58,155,.28)}
.v5-btn-pink:hover{transform:translateY(-2px)}
.v5-btn-outline{border:1px solid rgba(255,255,255,.75);color:#fff;background:rgba(23,6,27,.25)}
.v5-values{display:grid;grid-template-columns:repeat(4,1fr);max-width:650px}
.v5-values>div{text-align:center;padding:0 15px;border-right:1px solid rgba(255,255,255,.25)}
.v5-values>div:first-child{padding-left:0}.v5-values>div:last-child{border:0}
.v5-values svg{width:38px;height:38px;color:#efbf4a;margin-bottom:8px}
.v5-values strong,.v5-values span{display:block}.v5-values strong{font-size:.75rem;color:#fff}.v5-values span{font-size:.68rem;color:#e8dce9;margin-top:4px}
.v5-hero-photo{position:relative;overflow:hidden}
.v5-hero-photo:before{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,#421250 0%,transparent 22%,transparent 80%,rgba(38,7,43,.2))}
.v5-hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 25%;display:block}
.v5-hero-side{background:linear-gradient(180deg,#3e104d,#1b071f);position:relative;border-left:5px solid #d3a234;padding:54px 22px 35px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.v5-hero-side:before{content:"";position:absolute;left:-85px;top:-20px;width:150px;height:120%;border:6px solid #e2b54a;border-radius:50%}
.v5-hero-side img{width:105px;opacity:.18;align-self:center}.v5-hero-side p{font-size:.88rem;line-height:1.7;font-weight:700;z-index:2}.v5-hero-side i{width:42px;height:3px;background:#f12d9b}

.v5-services{max-width:1500px;margin:0 auto;padding:14px 20px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.v5-services article{display:grid;grid-template-columns:48% 52%;min-height:220px;border:1px solid #efb5d7;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,#fff,#fff8fb);box-shadow:0 8px 25px rgba(50,20,55,.05)}
.v5-card-img img{width:100%;height:100%;object-fit:cover}.v5-services article>div:last-child{padding:18px 18px 14px}
.v5-services h2{font-family:var(--serif);font-size:2.4rem;line-height:.82;color:#5a1c72;margin:0 0 14px}.v5-services h2 em{display:block;color:#c68e1e;font-style:normal;font-weight:500}
.v5-services p{font-size:.75rem;line-height:1.45;color:#514753}.v5-services a,.v5-experience a{display:inline-block;border:1px solid #ed3a9b;border-radius:999px;padding:10px 16px;color:#5d2473;font-size:.7rem;font-weight:900;text-decoration:none;margin-top:7px}

.v5-gallery{max-width:1500px;margin:auto;padding:8px 20px 16px}.v5-section-title{text-align:center;position:relative}.v5-section-title p,.v5-book-copy>p,.v5-experience-copy>p{color:#a72d91;font-size:.66rem;letter-spacing:.32em;font-weight:900;margin:6px 0}
.v5-section-title h2{font-family:var(--serif);font-size:3.4rem;color:#5a1c72;line-height:1;margin:0 0 14px}.v5-section-title h2 em{color:#c68e1e;font-style:normal;font-weight:500}
.v5-section-title>a{position:absolute;right:0;top:26px;border:1px solid #ed3a9b;border-radius:999px;padding:11px 18px;color:#5d2473;font-size:.68rem;font-weight:900;text-decoration:none}
.v5-gallery-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px}.v5-gallery-grid img{width:100%;aspect-ratio:.82;object-fit:cover;border-radius:7px;display:block}

.v5-benefits{background:linear-gradient(110deg,#2c0a36,#4b145b 48%,#23072a);color:#fff;display:grid;grid-template-columns:repeat(4,1fr);padding:25px max(4vw,30px)}
.v5-benefits div{text-align:center;border-right:1px solid rgba(255,255,255,.28);padding:0 20px}.v5-benefits div:last-child{border:0}
.v5-benefits svg{width:40px;height:40px;color:#efbf4a;margin-bottom:7px}.v5-benefits strong,.v5-benefits span{display:block}.v5-benefits strong{font-size:.78rem}.v5-benefits span{font-size:.7rem;color:#eadfeb;margin-top:4px}

.v5-book-strip{min-height:260px;display:grid;grid-template-columns:18% 36% 29% 17%;align-items:center;background:radial-gradient(circle at 25% 50%,#fff 0,#fff8fb 48%,#f9eef6 100%);position:relative;overflow:hidden}
.v5-brushes{align-self:stretch;background:linear-gradient(135deg,#f7d9e8,#fff4f8);position:relative}.v5-brushes:after{content:"✦  ✦  ✦";position:absolute;inset:0;display:grid;place-items:center;color:#d5a03a;font-size:2rem;letter-spacing:.5em;transform:rotate(-18deg)}
.v5-book-copy{padding:25px 30px}.v5-book-copy h2{font-family:var(--serif);font-size:3rem;color:#5a1c72;line-height:.9;margin:6px 0 12px}.v5-book-copy h2 em{color:#c68e1e;font-style:normal;font-weight:500}.v5-book-copy strong{display:block;font-size:.72rem;margin-bottom:16px}.v5-book-copy .v5-btn{color:#fff}
.v5-checks{border-left:1px solid #e5d7e4;padding-left:35px}.v5-checks p{font-size:.78rem;margin:9px 0;color:#3f3541}.v5-checks p::first-letter{color:#ed3a9b}
.v5-script{font-family:var(--serif);font-size:2.3rem;font-style:italic;color:#742486;transform:rotate(-7deg);text-align:center}

.v5-experience{min-height:310px;display:grid;grid-template-columns:30% 35% 25% 10%;align-items:stretch;position:relative;overflow:hidden}
.v5-studio img{width:100%;height:100%;object-fit:cover}.v5-experience-copy{padding:38px 45px;align-self:center}.v5-experience-copy h2{font-family:var(--serif);font-size:2.7rem;line-height:.92;color:#5a1c72;margin:8px 0 18px}.v5-experience-copy h2 em{color:#c68e1e;font-style:normal}.v5-experience-copy span{display:block;color:#5e555f;font-size:.82rem;line-height:1.5}
.v5-experience blockquote{align-self:center;border-left:1px solid #e7dbe8;padding:20px 35px;font-family:var(--serif);font-size:1.2rem;font-style:italic;color:#4b3e4d;line-height:1.5}.v5-experience blockquote b{display:block;color:#d39b22;font-size:4rem;line-height:.5}.v5-experience blockquote small{display:block;margin-top:18px;font-family:var(--sans);font-size:.72rem;font-style:normal}
.v5-watermark{width:180px;opacity:.09;align-self:center;justify-self:center}

.v5-contact{background:#16081a;color:#fff;display:grid;grid-template-columns:200px 1fr auto;gap:35px;align-items:center;padding:25px max(5vw,35px)}.v5-contact>img{width:150px}.v5-contact p{margin:0;color:#e3c6e7;font-size:.75rem}.v5-contact h2{margin:3px 0 0;color:#fff;font-family:var(--serif);font-size:1.8rem}

.v5-home + .site-footer{background:#100713}.v5-home + .site-footer .footer-main{border-top:1px solid rgba(255,255,255,.12)}

@media(max-width:1050px){
 .v5-hero-inner{grid-template-columns:50% 50%}.v5-hero-side{display:none}.v5-hero-copy{padding-left:30px}.v5-values{grid-template-columns:repeat(2,1fr);gap:16px}.v5-values>div{border:0}
 .v5-services{grid-template-columns:1fr}.v5-services article{min-height:190px}.v5-gallery-grid{grid-template-columns:repeat(4,1fr)}
 .v5-book-strip{grid-template-columns:1fr 1fr}.v5-brushes,.v5-script{display:none}.v5-experience{grid-template-columns:1fr 1fr}.v5-experience blockquote{grid-column:2}.v5-watermark{display:none}
}
@media(max-width:760px){
 .v5-hero-inner{grid-template-columns:1fr}.v5-hero-copy{padding:48px 22px 28px}.v5-hero h1{font-size:4.4rem}.v5-hero-photo{height:440px}.v5-actions{gap:9px}.v5-values{margin-top:28px}
 .v5-services article{grid-template-columns:44% 56%}.v5-services h2{font-size:2rem}.v5-gallery-grid{grid-template-columns:repeat(2,1fr)}.v5-section-title>a{position:static;display:inline-block;margin-bottom:12px}
 .v5-benefits{grid-template-columns:1fr 1fr;gap:22px}.v5-benefits div{border:0}
 .v5-book-strip{grid-template-columns:1fr}.v5-checks{border:0;padding:5px 28px 25px}.v5-book-copy{padding:30px 28px}
 .v5-experience{grid-template-columns:1fr}.v5-studio{height:300px}.v5-experience blockquote{grid-column:auto}.v5-contact{grid-template-columns:1fr;text-align:center}.v5-contact>img{margin:auto}
}

/* V5 header/footer integration */
.v5-home~*{}
body:has(.v5-home) .site-header{background:linear-gradient(90deg,#2b0b35,#18081d);border-bottom:1px solid rgba(255,255,255,.08);box-shadow:none}
body:has(.v5-home) .nav-wrap{min-height:88px}
body:has(.v5-home) .brand-full{width:190px;max-height:76px;object-fit:contain}
body:has(.v5-home) .site-nav a{color:#fff}
body:has(.v5-home) .site-nav a:hover{color:#efbf4a}
body:has(.v5-home) .nav-toggle span{background:#fff}
body:has(.v5-home) .site-footer{background:linear-gradient(90deg,#130716,#210925);color:#fff}
body:has(.v5-home) .site-footer a,body:has(.v5-home) .footer-note{color:#fff}
body:has(.v5-home) .footer-bottom{border-top-color:rgba(255,255,255,.12);color:#cfc2d2}
@media(max-width:900px){
 body:has(.v5-home) .site-nav{background:#25092d}
 body:has(.v5-home) .brand-full{width:150px}
}

/* ================= CESKA BEAUTY V6 — signature hero ornamentation ================= */
.v6-hero{position:relative;isolation:isolate}
.v6-hero .v5-hero-inner{position:relative;z-index:3}

/* Left-side layered ribbons inspired by the approved mockup, rebuilt as CSS */
.v6-left-decor{
  position:absolute;left:0;top:0;bottom:0;width:17%;min-width:185px;z-index:2;
  overflow:hidden;pointer-events:none;
  background:
    linear-gradient(180deg,rgba(118,24,123,.30),rgba(47,8,57,.05) 54%,rgba(47,8,57,.3)),
    linear-gradient(180deg,transparent,transparent);
  mix-blend-mode:screen;
  opacity:.82;
}
.v6-left-decor:before{
  content:"";position:absolute;left:-88px;top:-22%;width:260px;height:145%;
  border:9px solid rgba(237,58,155,.78);border-right-color:transparent;border-bottom-color:transparent;
  border-radius:50%;transform:rotate(-9deg);filter:drop-shadow(0 0 14px rgba(237,58,155,.18))
}
.v6-left-decor:after{
  content:"";position:absolute;left:-44px;top:-12%;width:214px;height:128%;
  border:4px solid #e4b44a;border-right-color:transparent;border-bottom-color:transparent;
  border-radius:50%;transform:rotate(-6deg);opacity:.95
}
.v6-curve{position:absolute;border-radius:50%;display:block}
.v6-curve-a{left:-110px;top:18%;width:250px;height:74%;border:16px solid rgba(131,40,157,.8);border-right-color:transparent;transform:rotate(8deg)}
.v6-curve-b{left:-70px;top:24%;width:190px;height:63%;border:5px solid rgba(232,96,188,.5);border-right-color:transparent;transform:rotate(8deg)}
.v6-left-decor p{
  position:absolute;left:56px;top:31%;margin:0;font-family:var(--serif);font-size:2rem;
  line-height:1.08;font-style:italic;color:#f4c85d;transform:rotate(-8deg);
  text-shadow:0 3px 14px rgba(0,0,0,.38);z-index:3
}
.v6-left-decor p b{font-family:var(--sans);font-style:normal;color:#f3b2dc}
.v6-spark{position:absolute;color:#f2c35c;text-shadow:0 0 14px rgba(255,216,104,.8);z-index:4}
.v6-spark-1{left:38px;top:22%;font-size:1.3rem}.v6-spark-2{left:124px;top:27%;font-size:.9rem}

/* Right-side composition: floral edge + watermark icon + custom message */
.v6-right-decor{
  position:absolute;right:0;top:0;bottom:0;width:18%;min-width:205px;z-index:4;
  pointer-events:none;overflow:hidden;
  background:linear-gradient(180deg,rgba(50,8,61,.12),rgba(21,4,25,.48));
}
.v6-right-decor:before{
  content:"";position:absolute;right:-112px;top:-6%;width:250px;height:112%;
  border:5px solid #e0ad3a;border-left-color:transparent;border-bottom-color:transparent;
  border-radius:50%;transform:rotate(9deg);opacity:.92
}
.v6-right-decor:after{
  content:"";position:absolute;right:-70px;top:3%;width:215px;height:98%;
  border:15px solid rgba(127,34,148,.76);border-left-color:transparent;border-bottom-color:transparent;
  border-radius:50%;transform:rotate(8deg)
}
.v6-floral{
  position:absolute;right:-16px;top:-2px;width:190px;height:245px;
  background:linear-gradient(180deg,transparent,transparent);
  -webkit-mask-image:linear-gradient(145deg,#000 30%,transparent 84%);
  mask-image:linear-gradient(145deg,#000 30%,transparent 84%);
  opacity:.92;mix-blend-mode:screen;z-index:2
}
.v6-right-decor>img{
  position:absolute;right:28px;top:29%;width:125px;opacity:.16;filter:drop-shadow(0 0 18px rgba(0,0,0,.15));z-index:3
}
.v6-right-decor p{
  position:absolute;right:30px;bottom:17%;margin:0;text-align:right;z-index:4;
  font-size:.88rem;line-height:1.55;color:#fff;text-transform:uppercase;letter-spacing:.08em
}
.v6-right-decor p strong{color:#f2c45a;font-weight:900}
.v6-right-decor i{
  position:absolute;right:31px;bottom:12%;width:54px;height:3px;background:#ed3a9b;z-index:4
}

/* Give the actual hero copy more breathing room away from the left ornament */
.v6-hero .v5-hero-copy{padding-left:9.8vw}
.v6-hero .v5-hero-photo{margin-left:1.5vw}

/* Slightly richer purple wash across the hero */
.v6-hero:after{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(circle at 10% 8%,rgba(240,54,167,.18),transparent 26%),
    linear-gradient(90deg,rgba(33,5,39,.28) 0%,transparent 23%,transparent 77%,rgba(29,4,34,.34) 100%)
}

@media(max-width:1200px){
 .v6-left-decor{width:11%;min-width:100px;opacity:.55}
 .v6-left-decor p,.v6-spark{display:none}
 .v6-right-decor{width:11%;min-width:100px}
 .v6-right-decor p{display:none}
 .v6-right-decor>img{width:86px;right:9px}
 .v6-hero .v5-hero-copy{padding-left:5.5vw}
}
@media(max-width:900px){
 .v6-left-decor,.v6-right-decor{display:none}
 .v6-hero .v5-hero-copy{padding-left:30px}
 .v6-hero .v5-hero-photo{margin-left:0}
}

/* ================= CESKA BEAUTY V6.1 — hero cleanup & balance ================= */

/* Kill rasterized mockup fragments in decorative rails. Everything below is native CSS. */
.v6-left-decor{
  width:13.5%!important;
  min-width:150px!important;
  background:
    radial-gradient(circle at 12% 42%,rgba(237,58,155,.30),transparent 32%),
    radial-gradient(circle at 42% 78%,rgba(126,47,155,.35),transparent 34%),
    linear-gradient(180deg,rgba(76,15,90,.78),rgba(39,7,47,.72))!important;
  mix-blend-mode:normal!important;
  opacity:1!important;
}
.v6-left-decor:before{
  left:-115px!important;
  top:-18%!important;
  width:270px!important;
  height:140%!important;
  border-width:11px!important;
  border-color:rgba(225,65,177,.72)!important;
  border-right-color:transparent!important;
  border-bottom-color:transparent!important;
  box-shadow:
    22px 0 0 -15px rgba(145,49,169,.52),
    43px 0 0 -34px rgba(242,124,205,.34);
}
.v6-left-decor:after{
  left:-52px!important;
  top:-10%!important;
  width:205px!important;
  height:124%!important;
  border-width:4px!important;
  border-color:#e2b54a!important;
  border-right-color:transparent!important;
  border-bottom-color:transparent!important;
  filter:drop-shadow(0 0 7px rgba(229,184,75,.24));
}
.v6-curve-a{
  left:-128px!important;top:22%!important;width:255px!important;height:68%!important;
  border-width:15px!important;border-color:rgba(125,42,151,.62)!important;border-right-color:transparent!important;
}
.v6-curve-b{
  left:-82px!important;top:28%!important;width:195px!important;height:56%!important;
  border-width:4px!important;border-color:rgba(237,97,190,.50)!important;border-right-color:transparent!important;
}
.v6-left-decor p{
  left:39px!important;
  top:36%!important;
  font-size:1.55rem!important;
  line-height:1.05!important;
  color:#f2c55a!important;
  text-shadow:0 4px 16px rgba(0,0,0,.42)!important;
  transform:rotate(-7deg)!important;
  max-width:120px;
}
.v6-spark-1{left:35px!important;top:27%!important}
.v6-spark-2{left:105px!important;top:32%!important}

/* Tighter, more intentional right rail */
.v6-right-decor{
  width:12.5%!important;
  min-width:150px!important;
  background:
    radial-gradient(circle at 90% 16%,rgba(232,55,164,.19),transparent 24%),
    radial-gradient(circle at 72% 82%,rgba(117,40,139,.30),transparent 31%),
    linear-gradient(180deg,#35103f 0%,#1a071f 100%)!important;
}
.v6-right-decor:before{
  right:-124px!important;top:-4%!important;width:235px!important;height:110%!important;
  border-width:4px!important;border-color:#e2b54a!important;border-left-color:transparent!important;border-bottom-color:transparent!important;
}
.v6-right-decor:after{
  right:-82px!important;top:5%!important;width:200px!important;height:96%!important;
  border-width:12px!important;border-color:rgba(112,34,135,.68)!important;border-left-color:transparent!important;border-bottom-color:transparent!important;
}
.v6-floral{
  background:none!important;
  width:150px!important;height:200px!important;right:-10px!important;top:-4px!important;
  opacity:1!important;
}
.v6-floral:before,
.v6-floral:after{
  content:"";
  position:absolute;
  border-radius:70% 12% 70% 12%;
  transform-origin:100% 0;
}
.v6-floral:before{
  width:76px;height:112px;right:4px;top:3px;
  background:
    radial-gradient(ellipse at 70% 20%,rgba(247,111,196,.9) 0 20%,transparent 22%),
    linear-gradient(145deg,#8e287f,#4a155d 58%,#260b31);
  transform:rotate(26deg);
  box-shadow:
    -39px 31px 0 -13px rgba(165,54,152,.72),
    -70px 57px 0 -24px rgba(222,79,176,.50);
}
.v6-floral:after{
  width:38px;height:78px;right:14px;top:84px;
  background:linear-gradient(145deg,#d9a93d,#6f3d32);
  transform:rotate(54deg);
  opacity:.8;
}
.v6-right-decor>img{
  width:104px!important;
  right:24px!important;
  top:28%!important;
  opacity:.13!important;
}
.v6-right-decor p{
  right:25px!important;
  bottom:18%!important;
  font-size:.75rem!important;
  line-height:1.5!important;
  letter-spacing:.07em!important;
}
.v6-right-decor i{right:25px!important;bottom:13%!important;width:42px!important}

/* Better hero proportions and less crowding */
.v6-hero .v5-hero-inner{
  grid-template-columns:42% 48% 10%!important;
  max-width:1480px!important;
}
.v6-hero .v5-hero-copy{
  padding-left:7.6vw!important;
  padding-right:20px!important;
}
.v6-hero .v5-hero-photo{
  margin-left:0!important;
}
.v6-hero .v5-hero h1{
  font-size:clamp(4.8rem,7vw,7.65rem)!important;
}
.v6-hero .v5-values{
  max-width:600px!important;
}

/* Header branding should have more presence like the approved mockup */
body:has(.v5-home) .brand-full{
  width:220px!important;
  max-height:82px!important;
}
body:has(.v5-home) .nav-wrap{
  min-height:92px!important;
}

/* Avoid accidental horizontal scroll from decorative elements */
body:has(.v5-home){overflow-x:hidden}

@media(max-width:1200px){
  .v6-left-decor{width:9%!important;min-width:82px!important}
  .v6-right-decor{width:9%!important;min-width:82px!important}
  .v6-left-decor p,.v6-spark,.v6-right-decor p{display:none!important}
  .v6-right-decor>img{width:68px!important;right:8px!important}
  .v6-hero .v5-hero-inner{grid-template-columns:49% 51%!important}
  .v6-hero .v5-hero-copy{padding-left:4.8vw!important}
  body:has(.v5-home) .brand-full{width:185px!important}
}
@media(max-width:900px){
  .v6-left-decor,.v6-right-decor{display:none!important}
  .v6-hero .v5-hero-copy{padding-left:30px!important}
  body:has(.v5-home) .brand-full{width:155px!important}
}

/* ================= CESKA BEAUTY V6.2 — edge overlays, not side rails ================= */

/* Hero returns to a true two-column composition */
.v6-hero .v5-hero-inner{
  grid-template-columns:44% 56%!important;
  max-width:1536px!important;
  min-height:650px!important;
}
.v6-hero .v5-hero-side{
  display:none!important;
}

/* Decorative edges float OVER the hero instead of consuming layout width */
.v6-left-decor,
.v6-right-decor{
  position:absolute!important;
  top:0!important;
  bottom:0!important;
  z-index:5!important;
  pointer-events:none!important;
}

/* Left accent: narrow ribbon treatment only */
.v6-left-decor{
  left:0!important;
  width:118px!important;
  min-width:0!important;
  background:
    radial-gradient(circle at 10% 45%,rgba(237,58,155,.26),transparent 38%),
    linear-gradient(180deg,rgba(62,12,74,.70),rgba(34,6,40,.28))!important;
  overflow:visible!important;
}
.v6-left-decor:before{
  left:-116px!important;
  top:-15%!important;
  width:220px!important;
  height:135%!important;
  border-width:9px!important;
}
.v6-left-decor:after{
  left:-54px!important;
  top:-7%!important;
  width:155px!important;
  height:118%!important;
  border-width:4px!important;
}
.v6-curve-a{
  left:-126px!important;
  top:18%!important;
  width:208px!important;
  height:69%!important;
  border-width:12px!important;
}
.v6-curve-b{
  left:-88px!important;
  top:26%!important;
  width:157px!important;
  height:55%!important;
  border-width:4px!important;
}
.v6-left-decor p{
  left:30px!important;
  top:37%!important;
  font-size:1.28rem!important;
  max-width:95px!important;
  line-height:1.06!important;
}
.v6-spark-1{left:28px!important;top:28%!important}
.v6-spark-2{left:78px!important;top:33%!important}

/* Right accent: slim floral/gold flourish, not a giant empty column */
.v6-right-decor{
  right:0!important;
  width:128px!important;
  min-width:0!important;
  background:
    radial-gradient(circle at 100% 8%,rgba(233,61,169,.18),transparent 28%),
    linear-gradient(180deg,rgba(40,7,47,.34),rgba(18,4,22,.42))!important;
  overflow:visible!important;
}
.v6-right-decor:before{
  right:-114px!important;
  top:-3%!important;
  width:190px!important;
  height:107%!important;
  border-width:4px!important;
}
.v6-right-decor:after{
  right:-76px!important;
  top:7%!important;
  width:160px!important;
  height:91%!important;
  border-width:10px!important;
}
.v6-floral{
  right:-6px!important;
  top:0!important;
  width:120px!important;
  height:165px!important;
}
.v6-floral:before{
  width:60px!important;
  height:94px!important;
  right:-3px!important;
  top:2px!important;
  box-shadow:
    -30px 26px 0 -12px rgba(165,54,152,.64),
    -53px 47px 0 -21px rgba(222,79,176,.42)!important;
}
.v6-floral:after{
  width:30px!important;
  height:64px!important;
  right:10px!important;
  top:72px!important;
}
.v6-right-decor>img{
  width:78px!important;
  right:20px!important;
  top:28%!important;
  opacity:.12!important;
}
.v6-right-decor p{
  right:16px!important;
  bottom:18%!important;
  font-size:.64rem!important;
  line-height:1.45!important;
  max-width:92px!important;
}
.v6-right-decor i{
  right:17px!important;
  bottom:13%!important;
  width:34px!important;
}

/* Copy/photo regain the space they lost */
.v6-hero .v5-hero-copy{
  padding-left:9.2rem!important;
  padding-right:2rem!important;
  position:relative!important;
  z-index:6!important;
}
.v6-hero .v5-hero-photo{
  margin-left:0!important;
  position:relative!important;
  z-index:3!important;
}
.v6-hero .v5-hero-photo img{
  object-position:center 25%!important;
}

/* Keep decorations integrated with the actual image rather than dividing the page */
.v6-hero:after{
  background:
    radial-gradient(circle at 8% 8%,rgba(240,54,167,.15),transparent 25%),
    linear-gradient(90deg,rgba(32,5,38,.20) 0%,transparent 18%,transparent 84%,rgba(28,4,34,.24) 100%)!important;
}

/* Make the logo/nav slightly more compact to match the mockup proportions */
body:has(.v5-home) .nav-wrap{
  min-height:82px!important;
}
body:has(.v5-home) .brand-full{
  width:185px!important;
  max-height:72px!important;
}

/* Desktop sweet spot */
@media(min-width:1201px){
  .v6-hero .v5-hero-copy{padding-left:8.4rem!important}
}

/* Tablet: retain subtle curves but lose script text */
@media(max-width:1200px){
  .v6-left-decor{width:72px!important}
  .v6-right-decor{width:74px!important}
  .v6-left-decor p,.v6-spark,.v6-right-decor p{display:none!important}
  .v6-right-decor>img{width:55px!important;right:8px!important}
  .v6-hero .v5-hero-inner{grid-template-columns:48% 52%!important}
  .v6-hero .v5-hero-copy{padding-left:4.2rem!important}
}

/* Mobile: decorations disappear completely */
@media(max-width:900px){
  .v6-left-decor,.v6-right-decor{display:none!important}
  .v6-hero .v5-hero-inner{grid-template-columns:1fr!important}
  .v6-hero .v5-hero-copy{padding-left:24px!important;padding-right:24px!important}
}

/* ================= CESKA BEAUTY V6.3 — widescreen composition lock =================
   Desktop hero is now treated like a designed canvas. It grows naturally through
   ordinary desktop widths, then stops stretching on ultrawide/full-screen displays.
*/

/* Outer hero becomes the framing field on very wide screens */
.v6-hero{
  background:
    radial-gradient(circle at 8% 45%,rgba(125,34,145,.20),transparent 25%),
    radial-gradient(circle at 94% 32%,rgba(220,44,151,.10),transparent 22%),
    linear-gradient(90deg,#26082f 0%,#3a0e46 22%,#23072a 78%,#16051b 100%)!important;
}

/* Lock the actual composition to a cinematic desktop canvas */
.v6-hero .v5-hero-inner{
  width:min(100%, 1600px)!important;
  max-width:1600px!important;
  margin:0 auto!important;
  grid-template-columns:44% 56%!important;
  min-height:650px!important;
  overflow:hidden!important;
  box-shadow:
    -1px 0 0 rgba(224,173,58,.18),
    1px 0 0 rgba(224,173,58,.18);
}

/* Decorative edges align to the centered canvas rather than browser edges */
@media(min-width:1601px){
  .v6-left-decor{
    left:calc(50% - 800px)!important;
  }
  .v6-right-decor{
    right:calc(50% - 800px)!important;
  }
}

/* At large desktop sizes the portrait fills its half instead of exposing a dead rail */
.v6-hero .v5-hero-photo{
  height:650px!important;
  min-height:650px!important;
  overflow:hidden!important;
}
.v6-hero .v5-hero-photo img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center 27%!important;
  transform:scale(1.015);
}

/* Keep copy visually centered in its allotted panel at full-screen widths */
.v6-hero .v5-hero-copy{
  min-width:0!important;
  padding-top:66px!important;
  padding-bottom:34px!important;
  padding-left:8.3rem!important;
  padding-right:3.2rem!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.v6-hero .v5-hero-copy .v5-kicker{margin-top:auto}
.v6-hero .v5-hero-copy .v5-values{margin-bottom:auto}

/* Make the left and right flourishes frame the canvas without becoming columns */
.v6-left-decor{
  width:112px!important;
}
.v6-right-decor{
  width:104px!important;
}
.v6-right-decor p{
  max-width:80px!important;
  right:13px!important;
  font-size:.61rem!important;
}
.v6-right-decor>img{
  width:67px!important;
  right:16px!important;
}
.v6-floral{
  width:104px!important;
}

/* On true ultrawides, softly extend the ribbon language into the outer background */
@media(min-width:1800px){
  .v6-hero:before{
    content:""!important;
    position:absolute!important;
    inset:0!important;
    pointer-events:none!important;
    background:
      linear-gradient(112deg,transparent 0 5%,rgba(119,35,143,.12) 5.2% 5.8%,transparent 6% 100%),
      linear-gradient(68deg,transparent 0 94%,rgba(211,159,49,.08) 94.2% 94.5%,transparent 94.7% 100%)!important;
  }
}

/* Standard desktop: allow the composition to scale down naturally */
@media(max-width:1600px){
  .v6-hero .v5-hero-inner{
    width:100%!important;
  }
  .v6-hero .v5-hero-copy{
    padding-left:7.3rem!important;
    padding-right:2.2rem!important;
  }
}

/* Laptop/tablet refinements */
@media(max-width:1200px){
  .v6-hero .v5-hero-inner{
    grid-template-columns:48% 52%!important;
    min-height:620px!important;
  }
  .v6-hero .v5-hero-photo{
    height:620px!important;
    min-height:620px!important;
  }
  .v6-hero .v5-hero-copy{
    padding-left:4.4rem!important;
    padding-right:1.5rem!important;
  }
}

/* Mobile goes back to stacked flow and natural image height */
@media(max-width:900px){
  .v6-hero .v5-hero-inner{
    grid-template-columns:1fr!important;
    min-height:0!important;
    overflow:visible!important;
    box-shadow:none!important;
  }
  .v6-hero .v5-hero-copy{
    padding:48px 24px 30px!important;
    display:block!important;
  }
  .v6-hero .v5-hero-photo{
    height:440px!important;
    min-height:440px!important;
  }
  .v6-hero .v5-hero-photo img{
    transform:none!important;
  }
}

/* ================= CESKA BEAUTY V8 — art-directed desktop hero ================= */
.v8-desktop-art{
  display:block;
  background:linear-gradient(90deg,#1c061f,#2b0a32 40%,#18051c);
  overflow:hidden;
}
.v8-art-canvas{
  position:relative;
  width:min(100%,1920px);
  margin:0 auto;
  aspect-ratio:1920/577;
  overflow:hidden;
}
.v8-art-canvas>img{
  position:absolute;inset:0;
  width:100%;height:100%;
  object-fit:cover;
  display:block;
}
.v8-hotspot{
  position:absolute;
  z-index:3;
  display:block;
  border-radius:999px;
  outline-offset:4px;
}
.v8-hotspot:focus-visible{
  outline:3px solid #fff;
  box-shadow:0 0 0 5px #ed3a9b;
}
/* Hotspots line up with the two visible buttons in the art. */
.v8-book-hotspot{left:16.0%;top:59.3%;width:16.0%;height:8.7%}
.v8-work-hotspot{left:33.0%;top:59.3%;width:14.3%;height:8.7%}
.v8-sr-copy{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
.v8-mobile-live{display:none!important}

/* Keep the homepage header live, functional, and fixed to the top while scrolling. */
body:has(.v5-home) .site-header{
  position:sticky;
  top:0;
  z-index:20;
}

/* Once we leave desktop, swap to the genuine responsive live hero. */
@media(max-width:1100px){
  .v8-desktop-art{display:none!important}
  .v8-mobile-live{display:block!important}
}

/* ================= CESKA BEAUTY V9 — soft cinematic edge fade ================= */
.v8-desktop-art{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 5% 50%,rgba(124,28,134,.34),transparent 34%),
    radial-gradient(circle at 95% 48%,rgba(102,23,118,.30),transparent 32%),
    linear-gradient(90deg,#25082c 0%,#32103a 18%,#32103a 82%,#220725 100%)!important;
}
.v8-desktop-art::before,
.v8-desktop-art::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:max(90px,calc((100vw - 1600px)/2 + 110px));
  z-index:2;
  pointer-events:none;
}
.v8-desktop-art::before{
  left:0;
  background:
    radial-gradient(circle at 72% 40%,rgba(190,72,168,.20),transparent 34%),
    linear-gradient(90deg,#27092e 0%,rgba(39,9,46,.94) 28%,rgba(39,9,46,.54) 63%,transparent 100%);
}
.v8-desktop-art::after{
  right:0;
  background:
    radial-gradient(circle at 26% 46%,rgba(177,59,158,.18),transparent 34%),
    linear-gradient(270deg,#210724 0%,rgba(33,7,36,.94) 28%,rgba(33,7,36,.52) 63%,transparent 100%);
}
.v8-art-canvas{
  width:min(100%,1920px)!important;
  aspect-ratio:1920/557!important;
  position:relative;
  z-index:1;
}
.v8-art-canvas>img{
  object-fit:cover!important;
  object-position:center center!important;
}
/* Blend the artwork itself into the outer field so there is no obvious hard edge. */
.v8-art-canvas::before,
.v8-art-canvas::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:8%;
  z-index:2;
  pointer-events:none;
}
.v8-art-canvas::before{
  left:0;
  background:linear-gradient(90deg,rgba(38,8,45,.84),rgba(38,8,45,.22),transparent);
}
.v8-art-canvas::after{
  right:0;
  background:linear-gradient(270deg,rgba(31,6,34,.84),rgba(31,6,34,.20),transparent);
}
/* Preserve button hotspot clickability above visual fade overlays. */
.v8-hotspot{z-index:5!important}

/* On normal desktops the fade stays subtle. */
@media(max-width:1600px){
  .v8-desktop-art::before,
  .v8-desktop-art::after{width:72px}
  .v8-art-canvas::before,
  .v8-art-canvas::after{width:5%}
}

/* ============ V10 — Ceska service-card cleanup ============ */
.v5-services{
  max-width:1500px;
  padding:24px 20px 18px;
  gap:18px;
}
.v5-services article{
  grid-template-columns:42% 58%;
  min-height:238px;
  border:1px solid rgba(237,58,155,.28);
  border-radius:20px;
  background:
    radial-gradient(circle at 92% 12%,rgba(237,58,155,.07),transparent 32%),
    linear-gradient(135deg,#fff 0%,#fffafd 58%,#fff5fa 100%);
  box-shadow:0 14px 34px rgba(70,25,75,.08);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.v5-services article:hover{
  transform:translateY(-3px);
  border-color:rgba(237,58,155,.48);
  box-shadow:0 18px 40px rgba(70,25,75,.12);
}
.v5-card-img{position:relative;min-height:238px;overflow:hidden}
.v5-card-img:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg,transparent 58%,rgba(255,250,253,.58) 82%,#fffafd 100%);
  pointer-events:none;
}
.v5-card-img img{
  width:100%;height:100%;object-fit:cover;
  object-position:center 28%;
  display:block;
  transform:scale(1.015);
}
.v5-services article>div:last-child{
  padding:28px 24px 22px 20px;
  display:flex;flex-direction:column;justify-content:center;
}
.v5-services h2{
  font-size:2.65rem;
  line-height:.82;
  margin:0 0 16px;
  letter-spacing:-.025em;
}
.v5-services p{
  font-size:.79rem;
  line-height:1.55;
  margin:0 0 7px;
  max-width:28ch;
}
.v5-services a{
  align-self:flex-start;
  padding:10px 17px;
  margin-top:8px;
  background:rgba(255,255,255,.72);
  transition:background .2s ease,color .2s ease,transform .2s ease;
}
.v5-services a:hover{
  background:#ed3a9b;color:#fff;transform:translateX(2px);
}
@media(max-width:1050px){
  .v5-services{grid-template-columns:1fr;max-width:760px}
  .v5-services article{grid-template-columns:40% 60%}
}
@media(max-width:620px){
  .v5-services article{grid-template-columns:1fr}
  .v5-card-img{min-height:290px}
  .v5-card-img:after{background:linear-gradient(180deg,transparent 68%,#fffafd 100%)}
}

/* ============ V10.2 — Experience section: soft luxury atmosphere ============ */
.v5-experience{
  min-height:350px;
  grid-template-columns:30% 36% 24% 10%;
  background:
    radial-gradient(circle at 88% 28%,rgba(237,58,155,.075),transparent 22%),
    radial-gradient(circle at 72% 78%,rgba(93,36,115,.055),transparent 26%),
    linear-gradient(105deg,#fff 0%,#fff 45%,#fffafd 72%,#fbf3fa 100%);
  border-top:1px solid rgba(93,36,115,.10);
  border-bottom:1px solid rgba(93,36,115,.10);
}
.v5-experience:before{
  content:"";
  position:absolute;
  right:-55px;
  bottom:-90px;
  width:430px;
  height:430px;
  opacity:.22;
  pointer-events:none;
  background:
    radial-gradient(ellipse at 50% 90%,transparent 58%,rgba(201,150,44,.34) 59%,rgba(201,150,44,.34) 60%,transparent 61%),
    radial-gradient(ellipse at 38% 82%,transparent 63%,rgba(237,58,155,.20) 64%,rgba(237,58,155,.20) 65%,transparent 66%);
  transform:rotate(-18deg);
}
.v5-experience:after{
  content:"✦  ·  ✧";
  position:absolute;
  right:10.5%;
  top:15%;
  color:rgba(201,150,44,.62);
  font-size:1.05rem;
  letter-spacing:.75em;
  pointer-events:none;
}
.v5-studio{position:relative;overflow:hidden}
.v5-studio:after{
  content:"";
  position:absolute;inset:0;
  background:linear-gradient(90deg,transparent 72%,rgba(255,255,255,.22) 100%);
  pointer-events:none;
}
.v5-experience-copy{
  padding:42px 50px;
  position:relative;
  z-index:2;
}
.v5-experience-copy h2{
  font-size:3rem;
  max-width:470px;
}
.v5-experience-copy span{
  max-width:640px;
  font-size:.86rem;
  line-height:1.65;
}
.v5-experience-copy a{
  margin-top:16px;
}
.v5-experience blockquote{
  position:relative;
  z-index:2;
  margin:34px 16px;
  padding:30px 34px 28px;
  border-left:1px solid rgba(201,150,44,.55);
  border-radius:0 18px 18px 0;
  background:linear-gradient(135deg,rgba(255,255,255,.72),rgba(255,245,250,.76));
  box-shadow:0 12px 34px rgba(79,34,84,.055);
  backdrop-filter:blur(2px);
}
.v5-experience blockquote b{
  color:#d39b22;
  font-size:4.4rem;
  opacity:.95;
}
.v5-watermark{
  width:220px;
  opacity:.075;
  position:relative;
  z-index:1;
  transform:translateX(-10px);
  filter:drop-shadow(0 10px 25px rgba(93,36,115,.05));
}
@media(max-width:1100px){
  .v5-experience{grid-template-columns:38% 62%}
  .v5-experience blockquote{grid-column:2;margin:0 40px 34px}
  .v5-watermark{position:absolute;right:25px;bottom:20px;width:170px}
}
@media(max-width:720px){
  .v5-experience{display:block}
  .v5-studio{height:330px}
  .v5-experience-copy{padding:34px 26px}
  .v5-experience-copy h2{font-size:2.55rem}
  .v5-experience blockquote{margin:0 26px 36px;padding:25px 26px}
  .v5-watermark{width:130px;right:8px;bottom:8px}
  .v5-experience:after{right:6%;top:49%}
}

/* ============ V10.3 — Experience floral + gold composition ============ */
.v5-experience{isolation:isolate}
.v5-experience-copy{z-index:4}
.v5-experience blockquote{
  z-index:5;
  margin:48px 28px 48px 10px;
  padding:27px 30px 25px;
  max-width:430px;
  justify-self:center;
  background:linear-gradient(135deg,rgba(255,255,255,.88),rgba(255,246,251,.82));
  border-left:1px solid rgba(201,150,44,.72);
  box-shadow:0 14px 34px rgba(79,34,84,.075);
}
.v5-watermark{
  z-index:3;
  width:230px;
  opacity:.095;
  transform:translate(-18px,8px);
}
.v103-floral-flow{
  position:absolute;
  z-index:2;
  right:-38px;
  bottom:-38px;
  width:520px;
  height:350px;
  pointer-events:none;
  opacity:.78;
}
.v103-stem{
  position:absolute;
  display:block;
  border:2px solid rgba(201,150,44,.48);
  border-left:0;border-bottom:0;
  border-radius:50%;
  transform-origin:bottom right;
}
.v103-stem.stem-a{
  width:420px;height:230px;right:-10px;bottom:-15px;
  transform:rotate(-12deg);
}
.v103-stem.stem-b{
  width:330px;height:175px;right:58px;bottom:18px;
  border-color:rgba(237,58,155,.25);
  transform:rotate(-25deg);
}
.v103-leaf{
  position:absolute;
  width:95px;height:42px;
  border-radius:100% 0 100% 0;
  background:linear-gradient(135deg,rgba(237,58,155,.16),rgba(93,36,115,.09));
  border:1px solid rgba(201,150,44,.20);
  filter:blur(.1px);
}
.v103-leaf.leaf-a{right:82px;bottom:72px;transform:rotate(-25deg)}
.v103-leaf.leaf-b{right:185px;bottom:78px;transform:rotate(25deg) scale(.82)}
.v103-leaf.leaf-c{right:34px;bottom:145px;transform:rotate(-58deg) scale(.72)}
.v103-flower{
  position:absolute;
  font-family:Georgia,serif;
  color:rgba(183,39,143,.18);
  text-shadow:0 0 28px rgba(237,58,155,.13);
  line-height:1;
}
.v103-flower.flower-a{right:95px;bottom:52px;font-size:8.2rem;transform:rotate(-12deg)}
.v103-flower.flower-b{right:8px;bottom:132px;font-size:5.5rem;color:rgba(93,36,115,.14);transform:rotate(20deg)}
.v103-flower.flower-c{right:270px;bottom:45px;font-size:2rem;color:rgba(201,150,44,.58)}
.v103-mini-flourish{
  position:absolute;
  z-index:3;
  left:65.5%;
  top:24%;
  width:120px;
  display:flex;
  align-items:center;
  gap:8px;
  color:rgba(201,150,44,.72);
  pointer-events:none;
}
.v103-mini-flourish i{
  width:62px;height:1px;
  background:linear-gradient(90deg,rgba(201,150,44,.65),rgba(237,58,155,.25));
  transform:rotate(-8deg);
}
.v103-mini-flourish span:last-child{color:rgba(237,58,155,.32);font-size:1.15rem}
@media(max-width:1100px){
  .v103-floral-flow{width:420px;height:300px;opacity:.6}
  .v103-mini-flourish{left:auto;right:25%;top:55%}
  .v5-experience blockquote{max-width:none;margin:10px 40px 38px}
}
@media(max-width:720px){
  .v103-floral-flow{width:310px;height:230px;right:-80px;opacity:.46}
  .v103-mini-flourish{display:none}
  .v5-experience blockquote{margin:0 26px 38px}
}

/* ============ V10.4 — art-directed desktop Experience section ============ */
.v104-experience-art{
  display:block;
  width:100%;
  overflow:hidden;
  background:#fff;
  border-top:1px solid rgba(93,36,115,.10);
  border-bottom:1px solid rgba(93,36,115,.10);
}
.v104-experience-canvas{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
  aspect-ratio:1920/435;
  overflow:hidden;
}
.v104-experience-canvas>img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.v104-sr-copy{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
.v104-about-hotspot{
  position:absolute;
  left:32.0%;
  top:67%;
  width:13%;
  height:14%;
  z-index:4;
  border-radius:999px;
}
.v104-about-hotspot:focus-visible{
  outline:3px solid #ed3a9b;
  outline-offset:3px;
}
/* Hide the older live Experience section on full desktop only. */
@media(min-width:1101px){
  .v104-experience-art + .v5-experience{display:none}
}
/* Keep the real responsive layout on tablet/mobile. */
@media(max-width:1100px){
  .v104-experience-art{display:none}
  .v104-experience-art + .v5-experience{display:grid}
}
@media(max-width:720px){
  .v104-experience-art + .v5-experience{display:block}
}

/* V10.5 seamless Booking + Experience */
.v105-merged-flow{width:100%;overflow:hidden;background:#fff5fa;border:0}
.v105-merged-canvas{position:relative;width:100%;max-width:1920px;margin:auto;aspect-ratio:1920/679;overflow:hidden}
.v105-merged-canvas>img{width:100%;height:100%;display:block;object-fit:cover}
.v105-book-hotspot,.v105-about-hotspot{position:absolute;z-index:5;border-radius:999px}
.v105-book-hotspot{left:21.8%;top:27%;width:12.2%;height:9.5%}
.v105-about-hotspot{left:32.5%;top:79%;width:13%;height:8%}
.v105-book-hotspot:focus-visible,.v105-about-hotspot:focus-visible{outline:3px solid #ed3a9b;outline-offset:3px}
@media(min-width:1101px){
 .v105-mobile-booking{display:none!important}
 .v105-merged-flow~.v5-experience{display:none!important}
 .v104-experience-art{display:none!important}
}
@media(max-width:1100px){
 .v105-merged-flow{display:none}
 .v105-mobile-booking{display:block}
 .v104-experience-art{display:none!important}
 .v105-merged-flow~.v5-experience{display:grid!important}
}
@media(max-width:720px){.v105-merged-flow~.v5-experience{display:block!important}}

/* ============ V10.6 — soft blush side fades for merged composition ============ */
.v105-merged-flow{
  position:relative;
  background:
    radial-gradient(circle at 0% 45%,rgba(237,58,155,.07),transparent 28%),
    radial-gradient(circle at 100% 45%,rgba(201,150,44,.05),transparent 28%),
    linear-gradient(90deg,#fff5fa 0%,#fff8fb 18%,#fff8fb 82%,#fff5fa 100%);
}
.v105-merged-flow::before,
.v105-merged-flow::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:max(110px,calc((100vw - 1600px)/2 + 90px));
  z-index:3;
  pointer-events:none;
}
.v105-merged-flow::before{
  left:0;
  background:
    linear-gradient(90deg,
      #fff5fa 0%,
      rgba(255,245,250,.96) 26%,
      rgba(255,245,250,.62) 58%,
      rgba(255,245,250,.18) 82%,
      transparent 100%);
}
.v105-merged-flow::after{
  right:0;
  background:
    linear-gradient(270deg,
      #fff5fa 0%,
      rgba(255,245,250,.96) 26%,
      rgba(255,245,250,.62) 58%,
      rgba(255,245,250,.18) 82%,
      transparent 100%);
}
.v105-merged-canvas{
  z-index:1;
}
.v105-merged-canvas::before,
.v105-merged-canvas::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:7%;
  z-index:2;
  pointer-events:none;
}
.v105-merged-canvas::before{
  left:0;
  background:linear-gradient(90deg,rgba(255,245,250,.72),rgba(255,245,250,.18),transparent);
}
.v105-merged-canvas::after{
  right:0;
  background:linear-gradient(270deg,rgba(255,245,250,.72),rgba(255,245,250,.18),transparent);
}
.v105-book-hotspot,.v105-about-hotspot{z-index:6}
@media(max-width:1600px){
  .v105-merged-flow::before,
  .v105-merged-flow::after{width:72px}
  .v105-merged-canvas::before,
  .v105-merged-canvas::after{width:4.5%}
}

/* ============ V10.7 — merged premium closing footer ============ */
.v107-footer{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 16% 0%,rgba(113,34,126,.19),transparent 33%),
    radial-gradient(circle at 92% 18%,rgba(237,58,155,.09),transparent 27%),
    linear-gradient(180deg,#18071d 0%,#100512 100%)!important;
  color:#fff;
  border-top:0;
}
.v107-footer-glow{
  position:absolute;inset:0;
  pointer-events:none;
  overflow:hidden;
}
.v107-footer-glow:before{
  content:"";
  position:absolute;
  right:-110px;top:-150px;
  width:480px;height:300px;
  border:1.5px solid rgba(201,150,44,.16);
  border-left-color:transparent;
  border-bottom-color:transparent;
  border-radius:50%;
  transform:rotate(12deg);
}
.v107-petal{
  position:absolute;
  color:rgba(201,150,44,.48);
  font-size:1rem;
}
.v107-petal.p1{right:11%;top:19%}
.v107-petal.p2{right:5.5%;top:29%;color:rgba(237,58,155,.18);font-size:2.2rem}
.v107-petal.p3{left:7%;top:26%;color:rgba(237,58,155,.24)}
.v107-gold-curve{
  position:absolute;
  left:-5%;bottom:28%;
  width:38%;height:120px;
  border-top:1px solid rgba(201,150,44,.18);
  border-radius:50%;
  transform:rotate(-7deg);
}
.v107-footer-cta{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:170px 1fr auto;
  gap:36px;
  align-items:center;
  padding-top:34px;
  padding-bottom:30px;
}
.v107-footer-brand img{
  width:150px;
  max-height:125px;
  object-fit:contain;
}
.v107-footer-message p{
  margin:0 0 4px;
  color:#d9b8de;
  font-size:.74rem;
}
.v107-footer-message h2{
  margin:0;
  font-family:var(--serif);
  font-size:2rem;
  font-weight:500;
  color:#fff;
}
.v107-footer-button{
  white-space:nowrap;
  box-shadow:0 10px 28px rgba(237,58,155,.22);
}
.v107-footer-main{
  position:relative;z-index:2;
  display:grid;
  grid-template-columns:1.1fr 1.35fr 1fr;
  align-items:center;
  gap:30px;
  padding:22px 0;
  border-top:1px solid rgba(255,255,255,.10);
}
.v107-mini-brand{
  display:flex;
  align-items:center;
  gap:15px;
}
.v107-mini-brand img{
  width:74px;
  height:54px;
  object-fit:contain;
}
.v107-mini-brand span{
  font-family:'Brush Script MT',cursive;
  font-size:1.08rem;
  color:#fff;
}
.v107-footer-main nav{
  display:flex;
  justify-content:center;
  gap:18px;
  flex-wrap:wrap;
}
.v107-footer-main nav a{
  color:#fff;
  text-decoration:none;
  font-size:.78rem;
  transition:color .2s ease;
}
.v107-footer-main nav a:hover{color:#f0a6d0}
.v107-footer .footer-note{
  text-align:right;
  color:#f4c5df;
  font-size:.82rem;
}
.v107-footer .footer-bottom{
  position:relative;z-index:2;
  border-top:1px solid rgba(255,255,255,.08);
  padding:14px 0 16px;
  color:#aaa0ad;
  font-size:.68rem;
}
@media(max-width:900px){
  .v107-footer-cta{
    grid-template-columns:120px 1fr;
  }
  .v107-footer-button{
    grid-column:2;
    justify-self:start;
  }
  .v107-footer-main{
    grid-template-columns:1fr;
    text-align:center;
  }
  .v107-mini-brand{justify-content:center}
  .v107-footer .footer-note{text-align:center}
}
@media(max-width:620px){
  .v107-footer-cta{
    grid-template-columns:1fr;
    text-align:center;
    gap:14px;
    padding-top:28px;
  }
  .v107-footer-brand img{width:135px}
  .v107-footer-brand,.v107-footer-button{justify-self:center}
  .v107-footer-button{grid-column:auto}
  .v107-footer-message h2{font-size:1.8rem}
  .v107-footer-main nav{gap:13px}
}

/* ============ V10.8 — art-directed Let's Talk Beauty footer ============ */
.v108-footer{
  background:
    radial-gradient(circle at 16% 0%,rgba(113,34,126,.18),transparent 30%),
    linear-gradient(180deg,#160719 0%,#0d040f 100%)!important;
  color:#fff;
  overflow:hidden;
}
.v108-footer-art{
  background:#160719;
  overflow:hidden;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.v108-footer-art-canvas{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
  aspect-ratio:1920/360;
  overflow:hidden;
}
.v108-footer-art-canvas>img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center top;
}
.v108-sr-copy{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
.v108-cta-hotspot{
  position:absolute;
  left:66.8%;
  top:46%;
  width:20%;
  height:20%;
  border-radius:999px;
  z-index:4;
}
.v108-cta-hotspot:focus-visible{
  outline:3px solid #ed3a9b;
  outline-offset:3px;
}
.v108-footer-main{
  display:grid;
  grid-template-columns:1.15fr 1.35fr 1fr;
  align-items:center;
  gap:30px;
  padding:24px 0 20px;
}
.v108-brand{
  display:flex;
  align-items:center;
  gap:16px;
}
.v108-brand img{
  width:145px;
  height:82px;
  object-fit:contain;
}
.v108-brand span{
  font-family:'Brush Script MT',cursive;
  font-size:1.18rem;
  color:#fff;
}
.v108-footer-main nav{
  display:flex;
  justify-content:center;
  gap:18px;
  flex-wrap:wrap;
}
.v108-footer-main nav a{
  color:#fff;
  text-decoration:none;
  font-size:.8rem;
  transition:color .2s ease;
}
.v108-footer-main nav a:hover{color:#f0a6d0}
.v108-footer .footer-note{
  text-align:right;
  color:#f4c5df;
  font-size:.84rem;
}
.v108-footer .footer-bottom{
  border-top:1px solid rgba(255,255,255,.09);
  padding:14px 0 16px;
  color:#aaa0ad;
  font-size:.69rem;
}
@media(max-width:1100px){
  .v108-footer-art-canvas{aspect-ratio:16/5}
  .v108-footer-main{grid-template-columns:1fr;text-align:center}
  .v108-brand{justify-content:center}
  .v108-footer .footer-note{text-align:center}
}
@media(max-width:720px){
  .v108-footer-art{display:none}
  .v108-footer-main{padding-top:30px}
}

/* ============ V10.9 — final footer side-fade blend ============ */
.v108-footer-art{
  position:relative;
  background:
    linear-gradient(90deg,#5a253e 0%,#2b0d2b 14%,#160719 50%,#2b0d2b 86%,#5a253e 100%);
}
.v108-footer-art::before,
.v108-footer-art::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:max(90px,calc((100vw - 1720px)/2 + 70px));
  z-index:3;
  pointer-events:none;
}
.v108-footer-art::before{
  left:0;
  background:linear-gradient(90deg,
    rgba(107,47,72,.92) 0%,
    rgba(86,35,61,.68) 35%,
    rgba(43,13,43,.25) 72%,
    transparent 100%);
}
.v108-footer-art::after{
  right:0;
  background:linear-gradient(270deg,
    rgba(107,47,72,.92) 0%,
    rgba(86,35,61,.68) 35%,
    rgba(43,13,43,.25) 72%,
    transparent 100%);
}
.v108-cta-hotspot{z-index:5}
@media(max-width:1720px){
  .v108-footer-art::before,
  .v108-footer-art::after{width:55px;opacity:.72}
}

/* ============ V11.0 — gold footer separators ============ */
.v108-brand .v110-gold-divider{
  display:block;
  flex:0 0 2px;
  width:2px;
  height:54px;
  margin:0 6px 0 2px;
  border-radius:999px;
  background:linear-gradient(
    180deg,
    rgba(255,226,139,.92) 0%,
    #d5a32c 42%,
    #b87a16 100%
  );
  box-shadow:
    0 0 8px rgba(213,163,44,.22),
    inset 0 0 1px rgba(255,255,255,.65);
}
.v110-legal{
  display:inline-flex;
  align-items:center;
  gap:10px;
  white-space:nowrap;
}
.v110-gold-pipe{
  display:inline-block;
  width:1.5px;
  height:15px;
  border-radius:999px;
  background:linear-gradient(
    180deg,
    #f2cf68 0%,
    #c9901f 52%,
    #a86b12 100%
  );
  box-shadow:0 0 5px rgba(201,150,44,.18);
}
@media(max-width:720px){
  .v108-brand .v110-gold-divider{
    height:42px;
  }
  .v110-legal{
    white-space:normal;
    justify-content:center;
    flex-wrap:wrap;
  }
}

/* ============ Hair V11.1 — art-directed desktop hero + soft side fades ============ */
.hair-art-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 0% 48%,rgba(237,58,155,.12),transparent 30%),
    radial-gradient(circle at 100% 45%,rgba(93,36,115,.14),transparent 30%),
    linear-gradient(90deg,#f8dce9 0%,#fff8fb 16%,#fff8fb 84%,#5f274f 100%);
}
.hair-art-canvas{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
  aspect-ratio:1920/552;
  overflow:hidden;
  z-index:1;
}
.hair-art-canvas>img{
  width:100%;height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.hair-art-hero::before,
.hair-art-hero::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:max(90px,calc((100vw - 1600px)/2 + 95px));
  z-index:3;
  pointer-events:none;
}
.hair-art-hero::before{
  left:0;
  background:linear-gradient(90deg,
    rgba(248,220,233,.98) 0%,
    rgba(248,220,233,.72) 38%,
    rgba(248,220,233,.25) 72%,
    transparent 100%);
}
.hair-art-hero::after{
  right:0;
  background:linear-gradient(270deg,
    rgba(91,39,77,.96) 0%,
    rgba(91,39,77,.70) 35%,
    rgba(91,39,77,.24) 72%,
    transparent 100%);
}
.hair-art-canvas::before,
.hair-art-canvas::after{
  content:"";
  position:absolute;top:0;bottom:0;width:6.5%;
  z-index:2;pointer-events:none;
}
.hair-art-canvas::before{
  left:0;
  background:linear-gradient(90deg,rgba(248,220,233,.68),rgba(248,220,233,.16),transparent);
}
.hair-art-canvas::after{
  right:0;
  background:linear-gradient(270deg,rgba(91,39,77,.68),rgba(91,39,77,.15),transparent);
}
.hair-art-sr{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.hair-art-hotspot{
  position:absolute;z-index:6;border-radius:999px;
}
.hair-book-hotspot{left:17.8%;top:75%;width:9.4%;height:12%}
.hair-work-hotspot{left:27.1%;top:75%;width:10.7%;height:12%}
.hair-art-hotspot:focus-visible{outline:3px solid #ed3a9b;outline-offset:3px}

@media(min-width:1101px){
  .hair-art-hero{display:block}
  .hair-live-hero{display:none!important}
}
@media(max-width:1100px){
  .hair-art-hero{display:none}
  .hair-live-hero{display:block!important}
}
@media(max-width:1600px){
  .hair-art-hero::before,.hair-art-hero::after{width:64px}
  .hair-art-canvas::before,.hair-art-canvas::after{width:4.5%}
}

/* ============ Hair V11.2 — Healthy Hair art-directed section ============ */
.hair-v112-art{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 0% 50%,rgba(237,58,155,.10),transparent 28%),
    radial-gradient(circle at 100% 50%,rgba(237,58,155,.10),transparent 28%),
    linear-gradient(90deg,#f9dfe9 0%,#fff9fb 15%,#fff9fb 85%,#f9dfe9 100%);
}
.hair-v112-canvas{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
  aspect-ratio:1920/623;
  overflow:hidden;
}
.hair-v112-canvas>img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
.hair-v112-art::before,
.hair-v112-art::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:max(90px,calc((100vw - 1600px)/2 + 85px));
  z-index:3;
  pointer-events:none;
}
.hair-v112-art::before{
  left:0;
  background:linear-gradient(90deg,
    rgba(249,223,233,.98) 0%,
    rgba(249,223,233,.72) 38%,
    rgba(249,223,233,.20) 75%,
    transparent 100%);
}
.hair-v112-art::after{
  right:0;
  background:linear-gradient(270deg,
    rgba(249,223,233,.98) 0%,
    rgba(249,223,233,.72) 38%,
    rgba(249,223,233,.20) 75%,
    transparent 100%);
}
.hair-v112-canvas::before,
.hair-v112-canvas::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:5%;
  z-index:2;
  pointer-events:none;
}
.hair-v112-canvas::before{
  left:0;
  background:linear-gradient(90deg,rgba(249,223,233,.62),rgba(249,223,233,.14),transparent);
}
.hair-v112-canvas::after{
  right:0;
  background:linear-gradient(270deg,rgba(249,223,233,.62),rgba(249,223,233,.14),transparent);
}
.hair-v112-sr{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
.hair-v112-hotspot{
  position:absolute;
  z-index:6;
  border-radius:999px;
}
.hair-v112-book{left:10.2%;top:76.5%;width:18%;height:10.5%}
.hair-v112-explore{left:29.1%;top:76.5%;width:13.3%;height:10.5%}
.hair-v112-hotspot:focus-visible{
  outline:3px solid #ed3a9b;
  outline-offset:3px;
}
@media(min-width:1101px){
  .hair-v112-art{display:block}
  .hair-v112-mobile-booking{display:none}
}
@media(max-width:1100px){
  .hair-v112-art{display:none}
  .hair-v112-mobile-booking{display:block}
}
@media(max-width:1600px){
  .hair-v112-art::before,.hair-v112-art::after{width:60px}
  .hair-v112-canvas::before,.hair-v112-canvas::after{width:4%}
}

/* ============ Hair V11.3 — clean white service cards + hover ============ */
#hair-services{
  background:#fff!important;
}
#hair-services .section-heading{
  max-width:760px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}
.hair-v113-grid{
  gap:22px;
}
.hair-v113-card{
  position:relative;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(93,36,115,.12);
  box-shadow:0 10px 28px rgba(63,23,70,.06);
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease;
}
.hair-v113-card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#d7a735 0%,#ef3d9a 48%,#d7a735 100%);
  opacity:.55;
  transition:opacity .28s ease;
}
.hair-v113-card:hover{
  transform:translateY(-7px);
  border-color:rgba(237,58,155,.26);
  box-shadow:0 18px 40px rgba(63,23,70,.12);
}
.hair-v113-card:hover::before{opacity:1}
.hair-v113-card .option-photo{
  overflow:hidden;
}
.hair-v113-card .option-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .42s ease, filter .42s ease;
}
.hair-v113-card:hover .option-photo img{
  transform:scale(1.035);
  filter:saturate(1.05) contrast(1.02);
}
.hair-v113-card h3{
  color:#682175;
}
@media(prefers-reduced-motion:reduce){
  .hair-v113-card,
  .hair-v113-card .option-photo img{
    transition:none;
  }
  .hair-v113-card:hover{
    transform:none;
  }
}

/* ============ Makeup V11.4 — art-directed glam hero + signature side fades ============ */
.makeup-v114-art{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 0% 48%,rgba(237,58,155,.10),transparent 30%),
    radial-gradient(circle at 100% 45%,rgba(237,58,155,.12),transparent 30%),
    linear-gradient(90deg,#f9dfea 0%,#fff8fb 16%,#fff8fb 84%,#f5cfe3 100%);
}
.makeup-v114-canvas{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
  aspect-ratio:1920/638;
  overflow:hidden;
}
.makeup-v114-canvas>img{
  width:100%;height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.makeup-v114-art::before,
.makeup-v114-art::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:max(90px,calc((100vw - 1600px)/2 + 90px));
  z-index:3;
  pointer-events:none;
}
.makeup-v114-art::before{
  left:0;
  background:linear-gradient(90deg,
    rgba(249,223,234,.98) 0%,
    rgba(249,223,234,.72) 38%,
    rgba(249,223,234,.22) 74%,
    transparent 100%);
}
.makeup-v114-art::after{
  right:0;
  background:linear-gradient(270deg,
    rgba(245,207,227,.98) 0%,
    rgba(245,207,227,.72) 38%,
    rgba(245,207,227,.22) 74%,
    transparent 100%);
}
.makeup-v114-canvas::before,
.makeup-v114-canvas::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:5%;
  z-index:2;
  pointer-events:none;
}
.makeup-v114-canvas::before{
  left:0;
  background:linear-gradient(90deg,rgba(249,223,234,.64),rgba(249,223,234,.14),transparent);
}
.makeup-v114-canvas::after{
  right:0;
  background:linear-gradient(270deg,rgba(245,207,227,.64),rgba(245,207,227,.14),transparent);
}
.makeup-v114-sr{
  position:absolute!important;width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;overflow:hidden!important;
  clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.makeup-v114-hotspot{position:absolute;z-index:6;border-radius:999px}
.makeup-v114-book{left:14.2%;top:77.1%;width:12.3%;height:10.5%}
.makeup-v114-work{left:27.5%;top:77.1%;width:11.8%;height:10.5%}
.makeup-v114-hotspot:focus-visible{outline:3px solid #ed3a9b;outline-offset:3px}
@media(min-width:1101px){
  .makeup-v114-art{display:block}
  .makeup-v114-live{display:none!important}
}
@media(max-width:1100px){
  .makeup-v114-art{display:none}
  .makeup-v114-live{display:block!important}
}
@media(max-width:1600px){
  .makeup-v114-art::before,.makeup-v114-art::after{width:62px}
  .makeup-v114-canvas::before,.makeup-v114-canvas::after{width:4%}
}

/* ============ Makeup V11.5 — clean white service cards + hover ============ */
.makeup-v115-grid{
  gap:22px;
}
.makeup-v115-card{
  position:relative;
  overflow:hidden;
  background:#fff;
  border:1px solid rgba(93,36,115,.12);
  box-shadow:0 10px 28px rgba(63,23,70,.06);
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease;
}
.makeup-v115-card::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;
  height:3px;
  background:linear-gradient(90deg,#d7a735 0%,#ef3d9a 48%,#d7a735 100%);
  opacity:.55;
  transition:opacity .28s ease;
}
.makeup-v115-card:hover{
  transform:translateY(-7px);
  border-color:rgba(237,58,155,.26);
  box-shadow:0 18px 40px rgba(63,23,70,.12);
}
.makeup-v115-card:hover::before{opacity:1}
.makeup-v115-card .option-photo{
  overflow:hidden;
}
.makeup-v115-card .option-photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .42s ease, filter .42s ease;
}
.makeup-v115-card:hover .option-photo img{
  transform:scale(1.035);
  filter:saturate(1.05) contrast(1.02);
}
.makeup-v115-card h3{
  color:#682175;
}
@media(prefers-reduced-motion:reduce){
  .makeup-v115-card,
  .makeup-v115-card .option-photo img{
    transition:none;
  }
  .makeup-v115-card:hover{
    transform:none;
  }
}

body:has(.makeup-v114-art) .soft-section:first-of-type{background:#fff!important;}

/* ============ Makeup V11.6 — live flowing booking section ============ */
.makeup-v116-booking{
  position:relative;
  overflow:hidden;
  min-height:430px;
  background:
    radial-gradient(circle at 84% 18%,rgba(237,58,155,.075),transparent 26%),
    radial-gradient(circle at 16% 82%,rgba(93,36,115,.055),transparent 28%),
    linear-gradient(100deg,#fff 0%,#fffafd 52%,#fff5fa 100%);
  border-top:1px solid rgba(93,36,115,.08);
  border-bottom:1px solid rgba(93,36,115,.08);
}
.makeup-v116-grid{
  position:relative;
  z-index:3;
  min-height:430px;
  display:grid;
  grid-template-columns:1.05fr 1.25fr .62fr;
  gap:54px;
  align-items:center;
  padding-top:46px;
  padding-bottom:46px;
}
.makeup-v116-copy{max-width:560px}
.makeup-v116-copy h2{
  margin:5px 0 12px;
  font-family:var(--serif);
  font-size:3.9rem;
  line-height:.94;
  color:#5a1c72;
}
.makeup-v116-copy h2 span{
  color:#c99423;
  font-weight:500;
}
.makeup-v116-lead{
  margin:0;
  color:#4c4350;
  font-size:.92rem;
  line-height:1.65;
  max-width:54ch;
}
.makeup-v116-inspo{
  margin:18px 0 0;
  display:flex;
  gap:9px;
  align-items:flex-start;
  color:#632271;
  font-family:var(--serif);
  font-size:1rem;
  font-style:italic;
  line-height:1.45;
}
.makeup-v116-inspo span{
  color:#d59d29;
  font-style:normal;
}
.makeup-v116-cta{
  margin-top:22px;
  box-shadow:0 11px 25px rgba(237,58,155,.19);
}
.makeup-v116-options{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px 22px;
  padding-left:38px;
  border-left:1px solid rgba(93,36,115,.12);
}
.makeup-v116-options>div{
  min-height:138px;
  padding:18px 18px 16px;
  border:1px solid rgba(93,36,115,.09);
  border-radius:18px;
  background:rgba(255,255,255,.73);
  box-shadow:0 10px 24px rgba(69,26,75,.045);
  transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.makeup-v116-options>div:hover{
  transform:translateY(-4px);
  border-color:rgba(237,58,155,.23);
  box-shadow:0 15px 30px rgba(69,26,75,.085);
}
.makeup-v116-icon{
  width:43px;height:43px;
  display:grid;
  place-items:center;
  border-radius:50%;
  margin-bottom:10px;
  background:linear-gradient(135deg,#fff0f8,#f8e8f6);
  box-shadow:0 6px 16px rgba(237,58,155,.08);
}
.makeup-v116-icon svg{
  width:25px;height:25px;
  fill:none;stroke:#c99527;stroke-width:2.3;
  stroke-linecap:round;stroke-linejoin:round;
}
.makeup-v116-options strong,
.makeup-v116-options small{display:block}
.makeup-v116-options strong{
  color:#5d2473;
  font-family:var(--serif);
  font-size:1.07rem;
  line-height:1.1;
}
.makeup-v116-options small{
  margin-top:6px;
  color:#665b68;
  font-size:.72rem;
  line-height:1.45;
}
.makeup-v116-script{
  text-align:center;
  color:#c99423;
  font-family:'Brush Script MT',cursive;
  font-size:2.15rem;
  line-height:1.02;
  transform:rotate(-5deg);
}
.makeup-v116-script span,
.makeup-v116-script b{display:block}
.makeup-v116-script b{
  margin-top:10px;
  color:#a83795;
  font-size:2.6rem;
  font-family:Georgia,serif;
  font-weight:400;
}
.makeup-v116-decor{
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
}
.makeup-v116-decor .curve{
  position:absolute;
  display:block;
  border-radius:50%;
  border-top:2px solid rgba(201,150,44,.30);
}
.makeup-v116-decor .c1{left:-6%;bottom:3%;width:38%;height:130px;transform:rotate(8deg)}
.makeup-v116-decor .c2{left:-3%;bottom:7%;width:30%;height:100px;border-color:rgba(237,58,155,.19);transform:rotate(13deg)}
.makeup-v116-decor .c3{right:-5%;top:3%;width:35%;height:125px;transform:rotate(-9deg)}
.makeup-v116-decor .c4{right:-2%;top:8%;width:28%;height:95px;border-color:rgba(237,58,155,.18);transform:rotate(-14deg)}
.makeup-v116-decor .petal{
  position:absolute;
  width:72px;height:34px;
  border-radius:100% 0 100% 0;
  background:linear-gradient(135deg,rgba(237,58,155,.26),rgba(93,36,115,.08));
  filter:drop-shadow(0 8px 15px rgba(237,58,155,.07));
}
.makeup-v116-decor .p1{left:3%;bottom:12%;transform:rotate(26deg)}
.makeup-v116-decor .p2{left:11%;bottom:4%;transform:rotate(-8deg) scale(.72)}
.makeup-v116-decor .p3{left:18%;bottom:10%;transform:rotate(48deg) scale(.52)}
.makeup-v116-decor .p4{right:4%;top:11%;transform:rotate(-34deg)}
.makeup-v116-decor .p5{right:11%;top:4%;transform:rotate(-5deg) scale(.74)}
.makeup-v116-decor .p6{right:18%;top:11%;transform:rotate(-48deg) scale(.5)}
.makeup-v116-decor .spark{
  position:absolute;
  color:rgba(201,150,44,.65);
  font-size:1.2rem;
}
.makeup-v116-decor .s1{left:6%;bottom:33%}
.makeup-v116-decor .s2{left:19%;bottom:23%;font-size:.85rem}
.makeup-v116-decor .s3{right:9%;top:35%}
@media(max-width:1100px){
  .makeup-v116-grid{
    grid-template-columns:1fr 1fr;
  }
  .makeup-v116-script{
    grid-column:1/-1;
    transform:none;
    padding-top:4px;
  }
}
@media(max-width:760px){
  .makeup-v116-grid{
    grid-template-columns:1fr;
    gap:28px;
    padding-top:36px;
    padding-bottom:38px;
  }
  .makeup-v116-copy h2{font-size:3rem}
  .makeup-v116-options{
    grid-template-columns:1fr;
    padding-left:0;
    border-left:0;
  }
  .makeup-v116-script{font-size:1.8rem}
}

/* ============ Gallery V11.7 ============ */
.gallery-v117-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 0% 50%,rgba(237,58,155,.10),transparent 30%),
    radial-gradient(circle at 100% 45%,rgba(237,58,155,.11),transparent 30%),
    linear-gradient(90deg,#f9dfea 0%,#fff8fb 16%,#fff8fb 84%,#f5d4e5 100%);
}
.gallery-v117-hero-canvas{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:auto;
  aspect-ratio:1920/620;
  overflow:hidden;
}
.gallery-v117-hero-canvas>img{
  width:100%;height:100%;object-fit:cover;display:block;
}
.gallery-v117-hero::before,.gallery-v117-hero::after{
  content:"";position:absolute;top:0;bottom:0;
  width:max(90px,calc((100vw - 1600px)/2 + 90px));
  z-index:3;pointer-events:none;
}
.gallery-v117-hero::before{
  left:0;background:linear-gradient(90deg,rgba(249,223,234,.98),rgba(249,223,234,.70) 38%,rgba(249,223,234,.20) 74%,transparent);
}
.gallery-v117-hero::after{
  right:0;background:linear-gradient(270deg,rgba(245,212,229,.98),rgba(245,212,229,.70) 38%,rgba(245,212,229,.20) 74%,transparent);
}
.gallery-v117-sr{
  position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important;
}
.gallery-v117-hero-cta{
  position:absolute;left:13.7%;top:77%;width:14.5%;height:10.5%;z-index:6;border-radius:999px;
}
.gallery-v117-hero-cta:focus-visible{outline:3px solid #ed3a9b;outline-offset:3px}
.gallery-v117-body{background:#fff;padding:72px 0 78px}
.gallery-v117-heading{text-align:center;max-width:760px;margin:0 auto 28px}
.gallery-v117-heading h2{
  margin:6px 0 12px;font-family:var(--serif);font-size:3.5rem;line-height:.95;color:#5a1c72;
}
.gallery-v117-heading h2 span{color:#c99423;font-weight:500}
.gallery-v117-heading>p:last-child{color:#675c69;line-height:1.6}
.gallery-v117-filters{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-bottom:34px}
.gallery-v117-filters button{
  border:1px solid rgba(93,36,115,.18);background:#fff;color:#5d2473;border-radius:999px;
  padding:10px 18px;font-weight:800;cursor:pointer;transition:.2s ease;
}
.gallery-v117-filters button:hover,.gallery-v117-filters button.active{
  color:#fff;background:#ed3a9b;border-color:#ed3a9b;box-shadow:0 8px 20px rgba(237,58,155,.16);
}
.gallery-v117-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:16px;
}
.gallery-v117-item{
  position:relative;margin:0;overflow:hidden;border-radius:15px;background:#f8eef6;
  box-shadow:0 10px 28px rgba(63,23,70,.07);
  aspect-ratio:.88;transition:transform .28s ease,box-shadow .28s ease;
}
.gallery-v117-item:hover{transform:translateY(-6px);box-shadow:0 18px 38px rgba(63,23,70,.13)}
.gallery-v117-item[hidden]{display:none}
.gallery-v117-item img{
  width:100%;height:100%;object-fit:cover;display:block;transition:transform .42s ease,filter .42s ease;
}
.gallery-v117-item:hover img{transform:scale(1.045);filter:saturate(1.04)}
.gallery-v117-item figcaption{
  position:absolute;left:0;right:0;bottom:0;padding:28px 16px 14px;color:#fff;
  background:linear-gradient(transparent,rgba(24,6,28,.82));
  transform:translateY(34%);transition:transform .25s ease;
}
.gallery-v117-item:hover figcaption{transform:none}
.gallery-v117-item figcaption span{
  display:block;color:#f3bd48;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;font-weight:900;
}
.gallery-v117-item figcaption b{display:block;margin-top:3px;font-family:var(--serif);font-size:1.05rem}
.gallery-v117-note{
  margin-top:52px;padding:38px 42px;text-align:center;border-radius:24px;
  background:
    radial-gradient(circle at 10% 80%,rgba(237,58,155,.08),transparent 30%),
    linear-gradient(110deg,#fff8fb,#f9eef8);
  border:1px solid rgba(93,36,115,.09);
}
.gallery-v117-note p{margin:0;color:#a72d91;font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;font-weight:900}
.gallery-v117-note h3{margin:7px 0;font-family:var(--serif);font-size:2.2rem;color:#5a1c72}
.gallery-v117-note span{display:block;color:#625764;margin-bottom:18px}
@media(max-width:1100px){
  .gallery-v117-hero-canvas{aspect-ratio:16/6}
  .gallery-v117-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:760px){
  .gallery-v117-hero{display:none}
  .gallery-v117-body{padding-top:46px}
  .gallery-v117-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .gallery-v117-heading h2{font-size:2.7rem}
  .gallery-v117-note{padding:30px 22px}
}
@media(max-width:480px){.gallery-v117-grid{grid-template-columns:1fr}}

/* ============ About V11.8 ============ */
.about-v118-hero{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 18%,rgba(237,58,155,.075),transparent 27%),
    linear-gradient(105deg,#fff7fb 0%,#fff 48%,#fff4fa 100%);
  border-bottom:1px solid rgba(93,36,115,.08);
}
.about-v118-hero:before,.about-v118-hero:after{
  content:"";position:absolute;pointer-events:none;z-index:1;
}
.about-v118-hero:before{
  left:-8%;bottom:-20px;width:42%;height:180px;
  border-top:2px solid rgba(201,150,44,.30);
  border-radius:50%;transform:rotate(8deg);
}
.about-v118-hero:after{
  right:-8%;top:40px;width:38%;height:180px;
  border-top:2px solid rgba(237,58,155,.18);
  border-radius:50%;transform:rotate(-10deg);
}
.about-v118-hero-inner{
  position:relative;z-index:2;
  width:min(1500px,calc(100% - 40px));margin:auto;
  min-height:650px;display:grid;
  grid-template-columns:39% 35% 26%;align-items:center;
  gap:0;
}
.about-v118-photo-wrap{
  position:relative;height:650px;overflow:hidden;
  border-radius:0 48px 48px 0;
  box-shadow:0 18px 48px rgba(54,19,59,.10);
}
.about-v118-photo-wrap:after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,transparent 72%,rgba(255,248,251,.72) 100%);
}
.about-v118-photo-wrap img{
  width:100%;height:100%;object-fit:cover;object-position:center 20%;
}
.about-v118-script{
  position:absolute;z-index:2;left:6%;top:16%;
  color:#d29b25;font-family:'Brush Script MT',cursive;
  font-size:2.4rem;line-height:1.05;transform:rotate(-8deg);
  text-shadow:0 2px 12px rgba(255,255,255,.6);
}
.about-v118-copy{padding:48px 40px 48px 54px}
.about-v118-copy h1{
  font-family:var(--serif);font-size:4rem;line-height:.93;
  color:#5a1c72;margin:8px 0 20px;
}
.about-v118-copy h1 span{display:block;color:#c99423;font-weight:500}
.about-v118-copy>p:not(.eyebrow){
  color:#5d535f;line-height:1.7;font-size:.88rem;margin:0 0 14px;
}
.about-v118-copy .button{margin-top:8px}
.about-v118-values{
  padding:38px 30px 38px 26px;border-left:1px solid rgba(93,36,115,.10);
}
.about-v118-values>div{
  display:grid;grid-template-columns:50px 1fr;column-gap:14px;
  margin:0 0 24px;
}
.about-v118-values span{
  grid-row:1/3;width:48px;height:48px;display:grid;place-items:center;
  border-radius:50%;background:#faeaf4;color:#c99527;font-size:1.5rem;
}
.about-v118-values strong{
  font-family:var(--serif);font-size:1.18rem;color:#5a1c72;
}
.about-v118-values small{
  color:#675d69;font-size:.75rem;line-height:1.45;margin-top:4px;
}
.about-v118-story{
  position:relative;overflow:hidden;padding:85px 0 90px;background:#fff;
}
.about-v118-story:before{
  content:"✦";position:absolute;left:6%;top:12%;color:rgba(201,150,44,.55);font-size:1.3rem;
}
.about-v118-story-grid{
  display:grid;grid-template-columns:1.05fr .95fr;gap:85px;align-items:center;
}
.about-v118-story-copy h2{
  font-family:var(--serif);font-size:3.6rem;line-height:.98;color:#5a1c72;margin:7px 0 22px;
}
.about-v118-story-copy h2 span{color:#c99423}
.about-v118-story-copy>p:not(.eyebrow){
  color:#5e555f;line-height:1.75;font-size:.9rem;
}
.about-v118-story-copy blockquote{
  margin:28px 0 0;padding:20px 25px;border-left:2px solid #d2a02b;
  background:#fff8fb;border-radius:0 15px 15px 0;
  font-family:var(--serif);font-size:1.25rem;font-style:italic;color:#5a1c72;
}
.about-v118-photo-stack{
  position:relative;min-height:580px;
}
.about-v118-polaroid{
  position:absolute;margin:0;background:#fff;padding:12px 12px 38px;
  border-radius:16px;box-shadow:0 18px 42px rgba(60,23,67,.12);
  width:48%;overflow:hidden;
}
.about-v118-polaroid img{width:100%;aspect-ratio:.82;object-fit:cover;display:block;border-radius:10px}
.about-v118-polaroid figcaption{
  text-align:center;margin-top:10px;font-family:'Brush Script MT',cursive;
  color:#70247f;font-size:1.25rem;
}
.about-v118-polaroid.first{left:4%;top:7%;transform:rotate(-5deg)}
.about-v118-polaroid.second{right:2%;top:18%;transform:rotate(5deg)}
.about-v118-experience{
  padding:82px 0 78px;
  background:
    radial-gradient(circle at 12% 90%,rgba(237,58,155,.08),transparent 28%),
    linear-gradient(110deg,#fff8fb,#f7edf8);
}
.about-v118-experience-head{text-align:center;max-width:840px;margin:auto}
.about-v118-experience-head h2{
  margin:7px 0 36px;font-family:var(--serif);font-size:3.3rem;line-height:1;color:#5a1c72;
}
.about-v118-experience-head h2 span{color:#c99423}
.about-v118-experience-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;
}
.about-v118-experience-grid>div{
  padding:30px 28px;border-radius:20px;background:rgba(255,255,255,.78);
  border:1px solid rgba(93,36,115,.09);box-shadow:0 10px 26px rgba(60,23,67,.05);
  transition:transform .25s ease,box-shadow .25s ease;
}
.about-v118-experience-grid>div:hover{transform:translateY(-5px);box-shadow:0 17px 36px rgba(60,23,67,.10)}
.about-v118-experience-grid b{
  display:block;color:#d09a26;font-family:var(--serif);font-size:2rem;margin-bottom:8px;
}
.about-v118-experience-grid strong{
  display:block;color:#5a1c72;font-family:var(--serif);font-size:1.35rem;margin-bottom:8px;
}
.about-v118-experience-grid p{color:#635966;font-size:.8rem;line-height:1.55;margin:0}
.about-v118-final{
  margin-top:38px;display:flex;justify-content:center;align-items:center;gap:22px;
}
.about-v118-final span{
  font-family:'Brush Script MT',cursive;color:#742486;font-size:1.65rem;
}
@media(max-width:1100px){
  .about-v118-hero-inner{grid-template-columns:45% 55%;min-height:auto}
  .about-v118-values{grid-column:1/-1;border-left:0;border-top:1px solid rgba(93,36,115,.1);display:grid;grid-template-columns:repeat(2,1fr)}
  .about-v118-photo-wrap{height:560px}
  .about-v118-story-grid{gap:40px}
}
@media(max-width:760px){
  .about-v118-hero-inner{display:block;width:100%}
  .about-v118-photo-wrap{height:520px;border-radius:0}
  .about-v118-copy{padding:36px 24px}
  .about-v118-copy h1{font-size:3.1rem}
  .about-v118-values{grid-template-columns:1fr;padding:28px 24px}
  .about-v118-story{padding:58px 0}
  .about-v118-story-grid{grid-template-columns:1fr}
  .about-v118-photo-stack{min-height:520px}
  .about-v118-story-copy h2{font-size:2.8rem}
  .about-v118-experience-grid{grid-template-columns:1fr}
  .about-v118-final{flex-direction:column}
}

/* ============ About V11.9 — resurrect the garden ============ */

/* Give the About hero back the Ceska floral language without competing with Ceska. */
.about-v118-hero{
  background:
    radial-gradient(circle at 88% 20%,rgba(237,58,155,.10),transparent 28%),
    radial-gradient(circle at 9% 88%,rgba(93,36,115,.055),transparent 30%),
    linear-gradient(105deg,#fff7fb 0%,#fff 46%,#fff3f9 100%);
}
.about-v118-hero-inner:before,
.about-v118-hero-inner:after{
  content:"";
  position:absolute;
  pointer-events:none;
  z-index:0;
  background-repeat:no-repeat;
  background-size:contain;
  opacity:.94;
}
.about-v118-hero-inner:before{
  width:330px;height:330px;
  left:-115px;bottom:-72px;
  background:
    radial-gradient(ellipse at 40% 55%,rgba(237,58,155,.28) 0 15%,transparent 16%),
    radial-gradient(ellipse at 58% 42%,rgba(177,52,164,.23) 0 14%,transparent 15%),
    radial-gradient(ellipse at 62% 65%,rgba(247,127,191,.28) 0 13%,transparent 14%),
    radial-gradient(ellipse at 35% 34%,rgba(117,42,139,.18) 0 12%,transparent 13%),
    radial-gradient(ellipse at 50% 52%,rgba(255,221,239,.58) 0 8%,transparent 9%);
  filter:drop-shadow(0 15px 22px rgba(120,42,128,.08));
}
.about-v118-hero-inner:after{
  width:370px;height:370px;
  right:-145px;top:78px;
  background:
    radial-gradient(ellipse at 42% 46%,rgba(237,58,155,.22) 0 15%,transparent 16%),
    radial-gradient(ellipse at 60% 59%,rgba(167,45,151,.19) 0 14%,transparent 15%),
    radial-gradient(ellipse at 35% 68%,rgba(250,148,204,.24) 0 13%,transparent 14%),
    radial-gradient(ellipse at 64% 31%,rgba(115,37,136,.15) 0 11%,transparent 12%);
}
.about-v118-photo-wrap,
.about-v118-copy,
.about-v118-values{position:relative;z-index:3}

/* Gold/pink botanical sweeps behind the content. */
.about-v118-copy:before{
  content:"";
  position:absolute;
  z-index:-1;
  width:470px;height:135px;
  left:-155px;bottom:-48px;
  border-top:2px solid rgba(201,150,44,.38);
  border-radius:50%;
  transform:rotate(8deg);
  box-shadow:0 -12px 0 -11px rgba(237,58,155,.22);
}
.about-v118-copy:after{
  content:"✦   ·   ✧";
  position:absolute;
  right:-10px;top:34px;
  color:rgba(201,150,44,.62);
  letter-spacing:16px;
  font-size:.9rem;
}
.about-v118-values:after{
  content:"";
  position:absolute;
  right:-120px;bottom:-80px;
  width:390px;height:155px;
  border-top:2px solid rgba(201,150,44,.34);
  border-radius:50%;
  transform:rotate(-13deg);
  box-shadow:0 -13px 0 -12px rgba(237,58,155,.20);
}

/* Petal clusters made from lightweight CSS shapes. */
.about-v118-values:before{
  content:"❀";
  position:absolute;
  right:-52px;bottom:26px;
  font-size:7.2rem;
  line-height:1;
  color:rgba(224,94,176,.14);
  text-shadow:
    -62px 34px 0 rgba(122,43,142,.08),
    -28px -62px 0 rgba(247,154,205,.12);
  transform:rotate(-15deg);
}
.about-v118-photo-wrap:before{
  content:"❀";
  position:absolute;
  z-index:3;
  left:-34px;bottom:-28px;
  color:rgba(237,58,155,.23);
  font-size:7.8rem;
  text-shadow:
    58px 22px 0 rgba(127,42,145,.14),
    28px -52px 0 rgba(250,153,205,.15);
  transform:rotate(18deg);
  pointer-events:none;
}

/* Keep the portrait readable while softening its outer transition. */
.about-v118-photo-wrap:after{
  background:
    linear-gradient(90deg,transparent 70%,rgba(255,248,251,.70) 100%),
    linear-gradient(0deg,rgba(255,248,251,.18),transparent 24%);
}

/* Floral life through the story section, but much lighter than the hero. */
.about-v118-story:after{
  content:"❀";
  position:absolute;
  right:-28px;bottom:24px;
  font-size:9rem;
  color:rgba(237,58,155,.075);
  text-shadow:
    -82px 22px 0 rgba(113,38,134,.055),
    -34px -74px 0 rgba(247,152,204,.07);
  transform:rotate(-13deg);
  pointer-events:none;
}
.about-v118-story-grid{position:relative;z-index:2}
.about-v118-photo-stack:before{
  content:"";
  position:absolute;
  width:120%;height:180px;
  left:-10%;bottom:15px;
  border-top:2px solid rgba(201,150,44,.30);
  border-radius:50%;
  transform:rotate(-6deg);
}
.about-v118-photo-stack:after{
  content:"✦  ✧  ✦";
  position:absolute;
  right:4%;top:1%;
  color:rgba(201,150,44,.62);
  letter-spacing:14px;
}

/* Final section gets just enough petals to tie the page together. */
.about-v118-experience{position:relative;overflow:hidden}
.about-v118-experience:before,
.about-v118-experience:after{
  content:"❀";
  position:absolute;
  pointer-events:none;
  color:rgba(237,58,155,.07);
  font-size:10rem;
}
.about-v118-experience:before{left:-45px;bottom:-50px;transform:rotate(18deg)}
.about-v118-experience:after{right:-35px;top:-48px;transform:rotate(-20deg)}
.about-v118-experience>.shell{position:relative;z-index:2}

/* Widescreen side fades, same family as the rest of the Ceska build. */
@media(min-width:1200px){
  .about-v118-hero{
    -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 3.2%,#000 96.8%,transparent 100%);
    mask-image:linear-gradient(90deg,transparent 0,#000 3.2%,#000 96.8%,transparent 100%);
  }
}
@media(max-width:760px){
  .about-v118-hero-inner:before{width:230px;height:230px;left:-100px;bottom:22%}
  .about-v118-hero-inner:after{width:250px;height:250px;right:-115px;top:48%}
  .about-v118-photo-wrap:before{font-size:5.5rem}
  .about-v118-copy:after{display:none}
  .about-v118-values:before{right:-70px;font-size:5.5rem}
}

/* ============ About V12.0 — art-directed hero treatment ============ */
.about-v120-art{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 0% 48%,rgba(237,58,155,.10),transparent 30%),
    radial-gradient(circle at 100% 44%,rgba(237,58,155,.11),transparent 30%),
    linear-gradient(90deg,#f8ddea 0%,#fff7fb 16%,#fff7fb 84%,#f7d9e8 100%);
}
.about-v120-canvas{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
  aspect-ratio:1920/655;
  overflow:hidden;
}
.about-v120-canvas>img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.about-v120-art::before,
.about-v120-art::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:max(90px,calc((100vw - 1600px)/2 + 92px));
  z-index:3;
  pointer-events:none;
}
.about-v120-art::before{
  left:0;
  background:linear-gradient(90deg,
    rgba(248,221,234,.98) 0%,
    rgba(248,221,234,.72) 38%,
    rgba(248,221,234,.22) 74%,
    transparent 100%);
}
.about-v120-art::after{
  right:0;
  background:linear-gradient(270deg,
    rgba(247,217,232,.98) 0%,
    rgba(247,217,232,.72) 38%,
    rgba(247,217,232,.22) 74%,
    transparent 100%);
}
.about-v120-canvas::before,
.about-v120-canvas::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:5%;
  z-index:2;
  pointer-events:none;
}
.about-v120-canvas::before{
  left:0;
  background:linear-gradient(90deg,rgba(248,221,234,.62),rgba(248,221,234,.14),transparent);
}
.about-v120-canvas::after{
  right:0;
  background:linear-gradient(270deg,rgba(247,217,232,.62),rgba(247,217,232,.14),transparent);
}
.about-v120-sr{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
.about-v120-hotspot{
  position:absolute;
  z-index:6;
  left:43.4%;
  top:77%;
  width:15.2%;
  height:10.5%;
  border-radius:999px;
}
.about-v120-hotspot:focus-visible{
  outline:3px solid #ed3a9b;
  outline-offset:3px;
}
@media(min-width:1101px){
  .about-v120-art{display:block}
  .about-v120-live{display:none!important}
}
@media(max-width:1100px){
  .about-v120-art{display:none}
  .about-v120-live{display:block!important}
}
@media(max-width:1600px){
  .about-v120-art::before,
  .about-v120-art::after{width:62px}
  .about-v120-canvas::before,
  .about-v120-canvas::after{width:4%}
}

/* ============ About V12.1 — art-directed Ceska Beauty Experience ============ */
.about-v121-art{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 0% 50%,rgba(237,58,155,.10),transparent 30%),
    radial-gradient(circle at 100% 45%,rgba(237,58,155,.10),transparent 30%),
    linear-gradient(90deg,#f9dfea 0%,#fff8fb 16%,#fff8fb 84%,#f6d6e6 100%);
}
.about-v121-canvas{
  position:relative;
  width:100%;
  max-width:1920px;
  margin:0 auto;
  aspect-ratio:1920/720;
  overflow:hidden;
}
.about-v121-canvas>img{
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  object-position:center center;
}
.about-v121-art::before,
.about-v121-art::after{
  content:"";
  position:absolute;
  top:0;
  bottom:0;
  width:max(90px,calc((100vw - 1600px)/2 + 90px));
  z-index:3;
  pointer-events:none;
}
.about-v121-art::before{
  left:0;
  background:linear-gradient(90deg,
    rgba(249,223,234,.98) 0%,
    rgba(249,223,234,.72) 38%,
    rgba(249,223,234,.20) 74%,
    transparent 100%);
}
.about-v121-art::after{
  right:0;
  background:linear-gradient(270deg,
    rgba(246,214,230,.98) 0%,
    rgba(246,214,230,.72) 38%,
    rgba(246,214,230,.20) 74%,
    transparent 100%);
}
.about-v121-canvas::before,
.about-v121-canvas::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:5%;
  z-index:2;
  pointer-events:none;
}
.about-v121-canvas::before{
  left:0;
  background:linear-gradient(90deg,rgba(249,223,234,.62),rgba(249,223,234,.14),transparent);
}
.about-v121-canvas::after{
  right:0;
  background:linear-gradient(270deg,rgba(246,214,230,.62),rgba(246,214,230,.14),transparent);
}
.about-v121-sr{
  position:absolute!important;
  width:1px!important;height:1px!important;
  padding:0!important;margin:-1px!important;
  overflow:hidden!important;clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;border:0!important;
}
.about-v121-hotspot{
  position:absolute;
  z-index:6;
  left:47.1%;
  top:80.4%;
  width:16.4%;
  height:10.2%;
  border-radius:999px;
}
.about-v121-hotspot:focus-visible{
  outline:3px solid #ed3a9b;
  outline-offset:3px;
}
@media(min-width:1101px){
  .about-v121-art{display:block}
  .about-v121-live{display:none!important}
}
@media(max-width:1100px){
  .about-v121-art{display:none}
  .about-v121-live{display:block!important}
}
@media(max-width:1600px){
  .about-v121-art::before,
  .about-v121-art::after{width:62px}
  .about-v121-canvas::before,
  .about-v121-canvas::after{width:4%}
}

/* ============ Booking V12.2 — one destination: Book + Questions ============ */
.booking-v122-art{
  position:relative;overflow:hidden;
  background:linear-gradient(90deg,#f7d9e8,#fff7fb 15%,#fff7fb 85%,#f5d5e5);
}
.booking-v122-canvas{
  position:relative;width:100%;max-width:1920px;margin:auto;
  aspect-ratio:1920/593;overflow:hidden;
}
.booking-v122-canvas>img{width:100%;height:100%;display:block;object-fit:cover}
.booking-v122-art:before,.booking-v122-art:after{
  content:"";position:absolute;top:0;bottom:0;z-index:4;pointer-events:none;
  width:max(85px,calc((100vw - 1600px)/2 + 80px));
}
.booking-v122-art:before{left:0;background:linear-gradient(90deg,rgba(247,217,232,.98),rgba(247,217,232,.52),transparent)}
.booking-v122-art:after{right:0;background:linear-gradient(270deg,rgba(245,213,229,.98),rgba(245,213,229,.52),transparent)}
.booking-v122-sr{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important}
.booking-v122-hotspot{position:absolute;z-index:6;left:14.3%;top:59%;width:14.8%;height:13%;border-radius:999px}
.booking-v122-hotspot:focus-visible{outline:3px solid #ed3a9b;outline-offset:3px}
.booking-v122-anchor{scroll-margin-top:90px}

.booking-v122-contact{
  position:relative;overflow:hidden;
  padding:72px 24px 78px;
  background:
    radial-gradient(circle at 0 50%,rgba(237,58,155,.12),transparent 25%),
    radial-gradient(circle at 100% 50%,rgba(93,36,115,.08),transparent 25%),
    linear-gradient(105deg,#fff1f8,#fff9fc 48%,#fdebf5);
  border-top:1px solid rgba(201,150,44,.18);
}
.booking-v122-contact:before,.booking-v122-contact:after{
  content:"❀";position:absolute;pointer-events:none;line-height:1;
  font-size:14rem;color:rgba(237,58,155,.08);
}
.booking-v122-contact:before{left:-55px;bottom:-45px;transform:rotate(18deg);text-shadow:80px -65px 0 rgba(201,150,44,.055)}
.booking-v122-contact:after{right:-48px;top:-45px;transform:rotate(-16deg);text-shadow:-75px 75px 0 rgba(201,150,44,.055)}
.booking-v122-contact-inner{
  position:relative;z-index:2;max-width:1450px;margin:auto;
  display:grid;grid-template-columns:.9fr 1.35fr .48fr;gap:48px;align-items:center;
}
.booking-v122-contact-copy .eyebrow{
  margin:0 0 8px;color:#8b1d78;font-size:.76rem;font-weight:800;letter-spacing:.22em;
}
.booking-v122-contact-copy h2{
  margin:0;color:#5d2473;font-family:Georgia,serif;font-weight:500;font-size:clamp(2.4rem,3.4vw,4.2rem);line-height:.96;
}
.booking-v122-contact-copy h2 span{color:#c9962c}
.booking-v122-contact-copy>p:not(.eyebrow){max-width:520px;line-height:1.65;color:#4c414a}
.booking-v122-contact-notes{display:grid;gap:12px;margin-top:22px}
.booking-v122-contact-notes div{display:grid;gap:2px}
.booking-v122-contact-notes b{color:#5d2473}
.booking-v122-contact-notes span{font-size:.88rem;color:#665b64}

.booking-v122-question-form{
  padding:28px;border:1px solid rgba(201,150,44,.22);border-radius:22px;
  background:rgba(255,255,255,.82);box-shadow:0 18px 45px rgba(92,36,115,.08);
}
.booking-v122-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.booking-v122-question-form label{display:grid;gap:6px;margin-bottom:14px}
.booking-v122-question-form label span{font-size:.78rem;font-weight:700;color:#5d2473}
.booking-v122-question-form input,.booking-v122-question-form textarea{
  width:100%;box-sizing:border-box;border:1px solid rgba(93,36,115,.15);
  border-radius:12px;background:#fff9fc;padding:13px 14px;font:inherit;outline:none;
}
.booking-v122-question-form input:focus,.booking-v122-question-form textarea:focus{
  border-color:#ed3a9b;box-shadow:0 0 0 3px rgba(237,58,155,.10);
}
.booking-v122-question-form button{
  width:100%;border:0;border-radius:999px;padding:14px 20px;
  background:linear-gradient(90deg,#ed3a9b,#dc2587);color:white;font-weight:800;cursor:pointer;
  box-shadow:0 12px 26px rgba(237,58,155,.20);
}
.booking-v122-question-form button:hover{transform:translateY(-1px)}
.booking-v122-question-form small{display:block;text-align:center;margin-top:12px;color:#746a72}
.booking-v122-script{
  color:#9b2d88;font-family:"Brush Script MT","Segoe Script",cursive;
  font-size:clamp(2rem,2.8vw,3.4rem);line-height:1.08;transform:rotate(-6deg);text-align:center;
}
@media(min-width:1101px){
  .booking-v122-art{display:block}.booking-v122-live{display:none!important}
}
@media(max-width:1100px){
  .booking-v122-art{display:none}.booking-v122-live{display:block!important}
  .booking-v122-contact-inner{grid-template-columns:1fr 1.3fr}
  .booking-v122-script{grid-column:1/-1}
}
@media(max-width:720px){
  .booking-v122-contact{padding:52px 18px}
  .booking-v122-contact-inner,.booking-v122-row{grid-template-columns:1fr}
  .booking-v122-question-form{padding:20px}
}

/* ============ Booking V12.3 — white booking zone + side fades ============ */

/* V12.12: booking hero artwork is now clean at source; no CSS crop/scale required. */

/* Keep the actual booking/form area clean white like Hair + Makeup. */
.booking-v122-live + section,
#booking-form{
  background:#fff;
}

/* Find the booking form's surrounding area and preserve a clean white visual field. */
.booking-v122-anchor{
  position:relative;
  background:#fff;
}
.booking-v122-anchor::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:-90px;
  bottom:-520px;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:#fff;
}

/* Elegant desktop side fades for the white booking section. */
@media(min-width:1101px){
  .booking-v122-anchor::after{
    content:"";
    position:absolute;
    pointer-events:none;
    z-index:0;
    top:-90px;
    bottom:-520px;
    left:50%;
    width:100vw;
    transform:translateX(-50%);
    background:
      linear-gradient(90deg,
        rgba(248,224,235,.88) 0%,
        rgba(248,224,235,.34) 4.5%,
        rgba(255,255,255,0) 11%,
        rgba(255,255,255,0) 89%,
        rgba(246,219,232,.34) 95.5%,
        rgba(246,219,232,.88) 100%);
  }
  .booking-v122-anchor + form{
    position:relative;
    z-index:1;
  }
}

/* Three compact contact fields fit neatly on desktop; stack naturally below. */
@media(min-width:900px){
  .booking-v122-row{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media(max-width:899px){
  .booking-v122-row{
    grid-template-columns:1fr;
  }
}

/* ============ Booking V12.4 — restore actual booking workflow ============ */
.booking-v124-booking-live{
  display:block!important;
  position:relative;
  background:#fff;
}

/* The original booking section is now the functional white midsection. */
.booking-v124-booking-live > section{
  background:#fff!important;
  border:0!important;
  box-shadow:none!important;
}

/* Hide only the old booking section's introductory hero copy/image on desktop,
   while keeping its real form controls and event-switching workflow alive. */
@media(min-width:1101px){
  .booking-v124-booking-live > section{
    padding-top:42px!important;
    padding-bottom:72px!important;
  }
  .booking-v124-booking-live .inner > .split:first-child,
  .booking-v124-booking-live .hero-copy,
  .booking-v124-booking-live .hero-media{
    display:none!important;
  }
}

/* White booking canvas with the same soft edge fades used across Ceska Beauty. */
.booking-v124-booking-live{
  overflow:hidden;
}
.booking-v124-booking-live::before,
.booking-v124-booking-live::after{
  content:"";
  position:absolute;
  top:0;bottom:0;
  width:max(70px,calc((100vw - 1600px)/2 + 55px));
  z-index:0;
  pointer-events:none;
}
.booking-v124-booking-live::before{
  left:0;
  background:linear-gradient(90deg,rgba(249,225,236,.88),rgba(249,225,236,.26),transparent);
}
.booking-v124-booking-live::after{
  right:0;
  background:linear-gradient(270deg,rgba(247,220,233,.88),rgba(247,220,233,.26),transparent);
}
.booking-v124-booking-live > *{
  position:relative;
  z-index:1;
}

/* Give the real booking form a polished card treatment without changing its JS behavior. */
.booking-v124-booking-live form:not(.booking-v122-question-form){
  max-width:1120px;
  margin-left:auto;
  margin-right:auto;
  background:#fff;
  border:1px solid rgba(201,150,44,.18);
  border-radius:24px;
  box-shadow:0 18px 45px rgba(93,36,115,.08);
  padding:clamp(22px,3vw,40px);
}

/* ============ Booking V12.5 — desktop alignment + scale pass ============ */
@media(min-width:1101px){
  .booking-v124-booking-live{
    padding:70px clamp(70px,8vw,150px) 82px!important;
    min-height:auto!important;
  }

  /* Undo the accidental ultra-narrow constraints inherited from the old hero layout. */
  .booking-v124-booking-live > section,
  .booking-v124-booking-live .inner,
  .booking-v124-booking-live .container,
  .booking-v124-booking-live .wrap{
    width:min(1320px,100%)!important;
    max-width:1320px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  /* Any split/grid that contains the policy card + appointment form becomes a balanced pair. */
  .booking-v124-booking-live .split,
  .booking-v124-booking-live .booking-grid,
  .booking-v124-booking-live .form-grid{
    display:grid!important;
    grid-template-columns:minmax(330px,.78fr) minmax(600px,1.22fr)!important;
    gap:clamp(42px,5vw,78px)!important;
    align-items:start!important;
    justify-content:center!important;
    width:100%!important;
    max-width:1180px!important;
    margin-inline:auto!important;
  }

  /* Restore the useful left policy/info panel; only the obsolete top hero copy stays suppressed. */
  .booking-v124-booking-live .split > *{
    display:block!important;
  }

  .booking-v124-booking-live form:not(.booking-v122-question-form){
    width:100%!important;
    max-width:720px!important;
    margin:0!important;
    padding:38px 42px!important;
    border-radius:24px!important;
  }

  /* Scale the purple policy card so it visually belongs with the form. */
  .booking-v124-booking-live .booking-note,
  .booking-v124-booking-live .policy-card,
  .booking-v124-booking-live .booking-card,
  .booking-v124-booking-live .side-card{
    width:100%!important;
    max-width:390px!important;
    margin-left:auto!important;
    margin-right:0!important;
  }

  /* Form controls should use the available card width instead of retaining mobile-ish widths. */
  .booking-v124-booking-live input,
  .booking-v124-booking-live select,
  .booking-v124-booking-live textarea{
    max-width:none!important;
  }
}

/* Mid desktop: keep the pair centered but slightly tighter. */
@media(min-width:1101px) and (max-width:1450px){
  .booking-v124-booking-live{
    padding-inline:60px!important;
  }
  .booking-v124-booking-live .split,
  .booking-v124-booking-live .booking-grid,
  .booking-v124-booking-live .form-grid{
    grid-template-columns:minmax(300px,360px) minmax(540px,680px)!important;
    gap:42px!important;
  }
}

/* Tablet/mobile: stack naturally and use the full safe width. */
@media(max-width:1100px){
  .booking-v124-booking-live{
    padding:42px 20px 56px!important;
  }
  .booking-v124-booking-live .split,
  .booking-v124-booking-live .booking-grid,
  .booking-v124-booking-live .form-grid{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:28px!important;
    width:min(720px,100%)!important;
    margin-inline:auto!important;
  }
  .booking-v124-booking-live form:not(.booking-v122-question-form){
    width:100%!important;
    max-width:720px!important;
    margin-inline:auto!important;
  }
}

/* ============ V12.6 — ACTUAL booking-layout repair ============ */
/* The art-directed hero above already says "Book with Ceska Beauty."
   Remove the old duplicate booking-page heading/photo completely. */
.booking-v124-booking-live .booking-page-head{
  display:none!important;
}

.booking-v124-booking-live .booking-page{
  padding:72px 0 82px!important;
  background:
    linear-gradient(90deg,rgba(246,225,240,.82) 0,rgba(255,255,255,0) 9%),
    linear-gradient(270deg,rgba(246,225,240,.82) 0,rgba(255,255,255,0) 9%),
    #fff!important;
}

.booking-v124-booking-live .booking-page > .shell{
  width:min(1240px,calc(100% - 80px))!important;
  max-width:1240px!important;
  margin:0 auto!important;
}

/* THIS is the real wrapper in booking.html. */
.booking-v124-booking-live .booking-layout{
  display:grid!important;
  grid-template-columns:390px minmax(0,700px)!important;
  gap:54px!important;
  align-items:start!important;
  justify-content:center!important;
  width:100%!important;
  max-width:1144px!important;
  margin:0 auto!important;
}

/* Anchor must not become a third grid column. */
.booking-v124-booking-live .booking-v122-anchor{
  display:none!important;
}

.booking-v124-booking-live .booking-aside{
  position:relative!important;
  top:auto!important;
  width:390px!important;
  max-width:100%!important;
  margin:0!important;
  padding:42px 38px!important;
  border-radius:28px!important;
}

.booking-v124-booking-live .booking-aside img{
  width:112px!important;
  margin-bottom:18px!important;
}
.booking-v124-booking-live .booking-aside h2{
  font-size:2.55rem!important;
  line-height:.95!important;
  margin-bottom:22px!important;
}

.booking-v124-booking-live .booking-form{
  width:700px!important;
  max-width:100%!important;
  margin:0!important;
  padding:38px 40px!important;
  border-radius:28px!important;
  box-shadow:0 20px 55px rgba(46,18,54,.10)!important;
}

.booking-v124-booking-live .booking-form .field-grid{
  gap:18px!important;
  margin-bottom:20px!important;
}
.booking-v124-booking-live .booking-form input,
.booking-v124-booking-live .booking-form select{
  min-height:48px!important;
}
.booking-v124-booking-live .booking-form textarea{
  min-height:120px!important;
}
.booking-v124-booking-live .booking-form .button{
  min-height:52px!important;
  font-size:.92rem!important;
}

/* Prevent the desktop booking area from becoming excessively tall. */
.booking-v124-booking-live .booking-aside,
.booking-v124-booking-live .booking-form{
  align-self:start!important;
}

/* Normal desktop / laptop */
@media (min-width:1101px) and (max-width:1400px){
  .booking-v124-booking-live .booking-page > .shell{
    width:min(1080px,calc(100% - 60px))!important;
  }
  .booking-v124-booking-live .booking-layout{
    grid-template-columns:340px minmax(0,640px)!important;
    gap:42px!important;
  }
  .booking-v124-booking-live .booking-aside{width:340px!important;padding:34px 30px!important}
  .booking-v124-booking-live .booking-form{width:640px!important;padding:34px!important}
}

/* Tablet and mobile stack cleanly. */
@media (max-width:1100px){
  .booking-v124-booking-live .booking-page{
    padding:48px 0 58px!important;
  }
  .booking-v124-booking-live .booking-page > .shell{
    width:min(720px,calc(100% - 36px))!important;
  }
  .booking-v124-booking-live .booking-layout{
    grid-template-columns:1fr!important;
    gap:28px!important;
    max-width:720px!important;
  }
  .booking-v124-booking-live .booking-aside,
  .booking-v124-booking-live .booking-form{
    width:100%!important;
    max-width:720px!important;
    margin:0 auto!important;
  }
}

/* ============ V12.7 — booking feature-strip reveal + global footer sync ============ */
@media(min-width:1101px){
  .booking-v122-canvas{
    aspect-ratio:1920/679!important;
  }
  .booking-v122-canvas>img{
    width:100%!important;
    height:100%!important;
    transform:none!important;
    object-fit:cover!important;
    object-position:center center!important;
  }
  .booking-v122-hotspot{
    top:47.2%!important;
  }
}

/* Give the feature strip a clean little landing zone before the white booking form. */
.booking-v122-art{
  background:
    radial-gradient(circle at 0% 50%,rgba(237,58,155,.08),transparent 28%),
    radial-gradient(circle at 100% 50%,rgba(237,58,155,.08),transparent 28%),
    linear-gradient(90deg,#f8ddea 0%,#fff7fb 16%,#fff7fb 84%,#f7d9e8 100%)!important;
}

/* Keep synced premium footer visually consistent on all interior pages. */
body:not(.home) .v108-footer{
  margin-top:0;
}
\n\n/* ============ V12.8 — contact details + Classes feature ============ */\n.v128-contact{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px 12px;margin:14px auto 4px;font-size:.86rem;color:rgba(255,255,255,.76);text-align:center}.v128-contact a{color:#fff;text-decoration:none}.v128-contact a:hover{text-decoration:underline}.v128-direct-contact{margin-top:22px;font-weight:700}.v128-direct-contact a{color:#5d2473}.classes-hero{background:linear-gradient(135deg,#fff7fb 0%,#f9e5f1 48%,#f2e8f7 100%)}.classes-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(330px,520px);gap:70px;align-items:center}.classes-hero-copy h1,.classes-format-copy h2,.classes-more-copy h2{font-size:clamp(2.8rem,5vw,5.6rem);line-height:.95;letter-spacing:-.045em;margin:.2em 0}.classes-hero-copy h1 span,.classes-format-copy h2 span,.classes-more-copy h2 span,.classes-learn-grid h3 span{color:#ed3a9b}.classes-location{margin-top:22px;font-weight:800;color:#5d2473}.classes-flyer{margin:0;padding:14px;background:#fff;border-radius:30px;box-shadow:0 26px 70px rgba(77,29,89,.16);transform:rotate(1.25deg)}.classes-flyer img{display:block;width:100%;border-radius:20px}.classes-flyer figcaption{text-align:center;padding:12px 4px 4px;font-weight:800;color:#5d2473}.classes-learn-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:38px}.classes-card{background:#fff;border-radius:26px;padding:30px;box-shadow:0 16px 44px rgba(76,34,82,.08);border:1px solid rgba(93,36,115,.08)}.classes-card>span{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#5d2473;color:#fff;font-weight:900}.classes-card h3{font-size:1.28rem;margin:18px 0 8px;color:#41204d}.classes-card p{margin:0;color:#66596b;line-height:1.65}.classes-formats{background:#32143d;color:#fff}.classes-format-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.classes-format-copy p{color:rgba(255,255,255,.78);line-height:1.75}.classes-format-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.classes-format-card{background:#fff;color:#3b2741;border-radius:28px;padding:34px;box-shadow:0 20px 50px rgba(0,0,0,.18)}.classes-format-icon{display:inline-flex;min-width:60px;height:48px;padding:0 12px;align-items:center;justify-content:center;border-radius:16px;background:#f7d9eb;color:#5d2473;font-weight:1000;font-size:.82rem;letter-spacing:.05em}.classes-format-card h3{font-size:1.45rem;margin:20px 0 10px}.classes-format-card p{color:#6a5d6e;line-height:1.65}.classes-format-card a{color:#d92e8e;font-weight:900;text-decoration:none}.classes-more-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}.classes-contact-card{background:#fff;border-radius:30px;padding:38px;box-shadow:0 20px 60px rgba(65,29,76,.1);display:flex;flex-direction:column;gap:10px}.classes-contact-card img{width:82px}.classes-contact-card h3{font-size:1.55rem;margin:10px 0 0;color:#43204d}.classes-contact-card a{color:#d92e8e;font-weight:900;text-decoration:none}.classes-contact-card span{color:#6b5d70}.home-classes-v128{background:linear-gradient(115deg,#fff9fc,#f4e7f4)}.home-classes-v128-grid{display:grid;grid-template-columns:1fr 360px;gap:64px;align-items:center}.home-classes-v128 h2{font-size:clamp(2.5rem,4.5vw,4.8rem);line-height:1;margin:.15em 0}.home-classes-v128 h2 span{color:#ed3a9b}.home-classes-v128 figure{margin:0;background:#fff;padding:10px;border-radius:26px;box-shadow:0 22px 55px rgba(71,30,80,.14);transform:rotate(1deg)}.home-classes-v128 img{display:block;width:100%;border-radius:18px}.class-fields[hidden]{display:none!important}\n@media(max-width:900px){.classes-hero-grid,.classes-format-grid,.classes-more-grid,.home-classes-v128-grid{grid-template-columns:1fr;gap:36px}.classes-flyer{max-width:560px;margin:auto}.classes-learn-grid{grid-template-columns:1fr 1fr}.classes-format-cards{grid-template-columns:1fr}.home-classes-v128 figure{max-width:420px;margin:auto}.v128-contact{padding:0 16px}}\n@media(max-width:600px){.classes-learn-grid{grid-template-columns:1fr}.classes-hero-copy h1,.classes-format-copy h2,.classes-more-copy h2{font-size:2.7rem}.classes-card,.classes-format-card,.classes-contact-card{padding:25px}.v128-contact span[aria-hidden=\"true\"]{display:none}.v128-contact{flex-direction:column;gap:5px}}\n

/* ============ V12.15 — mobile service request + reference uploads ============ */
.booking-enhancements{display:grid;gap:24px;margin-top:24px}.mobile-service-fieldset,.reference-upload-fieldset{border:1px solid rgba(93,36,115,.14);border-radius:22px;padding:22px 24px;background:#fffafd}.mobile-service-fieldset legend,.reference-upload-fieldset legend{padding:0 8px;font-weight:900;color:#4b2358}.travel-toggle{display:flex;align-items:flex-start;gap:12px;font-weight:800;color:#4b2358;cursor:pointer}.travel-toggle input{width:20px!important;height:20px!important;min-height:20px!important;flex:0 0 auto;margin-top:2px;accent-color:#ed3a9b}.travel-fields{margin-top:18px}.travel-fields[hidden]{display:none!important}.travel-callout{display:grid;gap:5px;margin-bottom:18px;padding:16px 18px;border-radius:16px;background:#f7e8f2;border-left:4px solid #d4af37;color:#4f4054}.travel-callout strong{color:#5d2473}.travel-callout span{font-size:.9rem;line-height:1.55}.field-help,.upload-note{margin:0;color:#6f6173;line-height:1.55;font-size:.9rem}.field-help{margin-bottom:15px}.optional-note{font-weight:600;color:#88788d;font-size:.8em}.upload-drop{display:grid;gap:7px;margin-top:12px;padding:16px 18px;border:1px dashed rgba(93,36,115,.3);border-radius:16px;background:#fff;font-weight:850;color:#4b2358}.upload-drop input[type="file"]{min-height:auto!important;padding:8px 0!important;border:0!important;background:transparent!important}.upload-drop span{font-size:.82rem;font-weight:600;color:#78697c}.upload-note{margin-top:14px;font-size:.8rem}.booking-form.is-class .mobile-service-fieldset,.booking-form.is-event .mobile-service-fieldset{display:block}.reference-upload-fieldset{display:block}@media(max-width:600px){.mobile-service-fieldset,.reference-upload-fieldset{padding:18px 16px}.booking-enhancements{gap:18px;margin-top:18px}.travel-callout{padding:14px}}
