:root{--cream:#fbf3ef;--nude:#efd8cf;--blush:#d99b8f;--rose:#c47868;--wine:#7b3f42;--wine2:#9f5451;--cacao:#4b2f2b;--text:#69433d;--white:#fffaf7;--line:rgba(75,47,43,.14)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e8d0c8;color:var(--cacao);font-family:Arial,Helvetica,sans-serif}button,a{font:inherit}.site-nav{position:fixed;z-index:50;top:0;left:0;right:0;height:86px;padding:14px clamp(18px,5vw,70px);display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:22px;background:linear-gradient(180deg,rgba(70,35,36,.35),rgba(70,35,36,0));transition:.25s}.site-nav.scrolled{background:rgba(251,243,239,.88);backdrop-filter:blur(16px);box-shadow:0 8px 30px rgba(75,47,43,.08)}.brand{color:#fff;text-decoration:none;display:inline-flex;flex-direction:column;width:max-content}.site-nav.scrolled .brand,.site-nav.scrolled .site-nav__links a{color:var(--cacao)}.brand__glow{font:400 34px/.88 Georgia,serif;letter-spacing:-.03em}.brand__nails{margin-top:7px;padding-left:12px;font-size:9px;letter-spacing:.42em}.site-nav__links{display:flex;justify-content:center;gap:30px}.site-nav__links a{color:#fff;text-decoration:none;font-size:13px}.nav-book,.hero-book,.outline,.footer-book{border-radius:999px;cursor:pointer;transition:.25s}.nav-book{padding:12px 18px;border:1px solid rgba(255,255,255,.65);background:rgba(255,255,255,.08);color:#fff}.site-nav.scrolled .nav-book{background:linear-gradient(135deg,#a95b56,#743b38);border-color:transparent}.nav-book span,.hero-book span,.outline span,.footer-book span{margin-left:8px}.hero{position:relative;min-height:100svh;overflow:hidden;isolation:isolate;background:linear-gradient(90deg,#925b5b,#b97673)}.hero__photo{position:absolute;inset:0 0 0 40%;z-index:-3;overflow:hidden}.hero__photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.03);animation:heroZoom 16s ease-in-out infinite alternate}.hero__veil{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(87,35,37,.62) 0%,rgba(99,43,45,.32) 30%,rgba(94,42,43,.08) 52%,rgba(65,22,24,.12) 100%)}@keyframes heroZoom{to{transform:scale(1.08)}}.hero__inner{width:min(1380px,calc(100% - 72px));margin:0 auto;min-height:100svh;display:grid;grid-template-columns:minmax(380px,520px) 1fr minmax(230px,310px);align-items:center;padding:120px 0 90px}.hero h1{margin:0;font:400 clamp(68px,6.8vw,112px)/.82 Georgia,serif;letter-spacing:-.055em;color:#fff}.hero h1 span{display:block}.hero h1 b{font:inherit;font-size:.52em}.hero__copy p{width:min(350px,100%);margin:28px 0;color:rgba(255,248,245,.90);font-size:18px;line-height:1.48}.hero-book{padding:14px 28px;border:1px solid rgba(255,255,255,.9);background:rgba(113,57,61,.18);color:#fff}.hero__script{grid-column:3;justify-self:end;display:flex;flex-direction:column;transform:rotate(-4deg);font-family:"Brush Script MT","Segoe Script",cursive;font-size:clamp(38px,4.1vw,68px);line-height:.86;text-align:center;color:#f4c8cf}.scroll-cue{position:absolute;left:50%;bottom:16px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:10px;letter-spacing:.36em}.mouse{width:34px;height:46px;display:grid;place-items:center;border:1px solid #fff;border-radius:18px}.scroll-cue i{width:1px;height:34px;background:#fff}.section{position:relative;padding:clamp(60px,7vw,100px) clamp(20px,5.5vw,90px);overflow:hidden}.services{background:radial-gradient(circle at 8% 16%,rgba(255,255,255,.86),transparent 25%),linear-gradient(145deg,#fff8f4 0%,#f7e5df 48%,#ebc9bf 100%)}.section-head{width:min(1320px,100%);margin:0 auto 34px;display:flex;align-items:end;justify-content:space-between;gap:28px}.eyebrow{font-size:11px;letter-spacing:.42em;color:var(--rose)}.section-head h2{margin:10px 0 8px;font:400 clamp(48px,5.5vw,82px)/.95 Georgia,serif;letter-spacing:-.04em;text-transform:uppercase}.section-head p{max-width:590px;margin:0;color:#77534e;line-height:1.5}.outline{padding:14px 22px;border:1px solid rgba(75,47,43,.22);background:rgba(255,250,247,.62);color:var(--cacao)}.services-grid{width:min(1320px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{overflow:hidden;border:1px solid rgba(255,255,255,.96);border-radius:30px;background:rgba(255,249,247,.78);box-shadow:0 24px 64px rgba(75,47,43,.14);transition:.35s}.service-card:hover{transform:translateY(-9px);box-shadow:0 34px 84px rgba(75,47,43,.20)}.service-card__visual{position:relative;aspect-ratio:1.32/1;overflow:hidden;background:#e9c5c0}.service-card__visual img{width:100%;height:100%;object-fit:cover;transition:.65s}.service-card:hover img{transform:scale(1.07)}.badge{display:inline-block;padding:8px 11px;border-radius:999px;background:#f0d6cd;color:#4d302c;font-size:10px;font-weight:700;letter-spacing:.15em}.service-card__visual .badge{position:absolute;left:18px;top:18px}.badge--live{color:#fff;background:linear-gradient(135deg,#c97867,#a95555)}.service-card__body{padding:22px 24px 24px}.num{font-size:10px;letter-spacing:.25em;color:#b07f80}.service-card h3{margin:10px 0 9px;font:400 clamp(28px,2.4vw,38px)/1 Georgia,serif}.service-card p{min-height:48px;margin:0;color:#77534e;font-size:14px;line-height:1.5}.card-bottom{margin-top:22px;display:flex;align-items:center;justify-content:space-between}.card-bottom strong{font:400 32px Georgia,serif}.round{width:46px;height:46px;border:0;border-radius:50%;background:var(--wine2);color:#fff;cursor:pointer}.price-strip{width:min(1320px,100%);margin:26px auto 0;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden;border:1px solid rgba(255,255,255,.75);border-radius:23px;background:rgba(255,249,247,.58);box-shadow:0 15px 42px rgba(75,47,43,.08)}.price-item{min-height:76px;padding:15px 18px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--cacao);display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.price-item:last-child{border-right:0}.price-item:hover{background:rgba(255,255,255,.48)}.price-item span{font-size:13px}.price-item b{font:400 20px Georgia,serif;white-space:nowrap}.events{background:radial-gradient(circle at 12% 10%,rgba(255,255,255,.75),transparent 26%),linear-gradient(145deg,#fbf3ef 0%,#f1dfd9 50%,#efd8cf 100%)}.status{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid rgba(75,47,43,.16);border-radius:999px;background:rgba(255,250,247,.72);font-size:12px}.pulse{width:8px;height:8px;border-radius:50%;background:var(--rose);box-shadow:0 0 0 0 rgba(196,120,104,.4);animation:pulse 1.8s infinite}@keyframes pulse{70%{box-shadow:0 0 0 9px rgba(196,120,104,0)}}.events-grid{width:min(1320px,100%);margin:0 auto;display:grid;grid-template-columns:1.2fr .9fr .9fr;gap:20px}.event-card{min-height:550px;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.96);border-radius:30px;background:rgba(255,249,247,.76);box-shadow:0 24px 64px rgba(75,47,43,.14);transition:.35s}.event-card:hover{transform:translateY(-8px);box-shadow:0 34px 84px rgba(75,47,43,.20)}.event-card--feature{background:linear-gradient(160deg,rgba(255,250,247,.88),rgba(239,216,207,.78))}.event-top{display:flex;align-items:center;justify-content:space-between;padding:20px 22px 0;color:#aa8580}.event-visual{min-height:225px;display:grid;place-items:center;position:relative}.gift{position:relative;width:132px;height:132px;animation:float 4.2s ease-in-out infinite}.gift__box{position:absolute;left:10px;right:10px;bottom:0;height:98px;border-radius:15px 15px 20px 20px;background:linear-gradient(145deg,#e4aa9d,#bd7165);box-shadow:0 20px 35px rgba(122,90,84,.18)}.gift__lid{position:absolute;z-index:2;left:0;right:0;top:23px;height:31px;border-radius:14px;background:linear-gradient(145deg,#f4d8ce,#ce806f)}.gift__ribbon--v{position:absolute;z-index:3;left:56px;top:23px;bottom:0;width:20px;background:rgba(255,244,240,.72)}.gift__ribbon--h{position:absolute;z-index:3;left:0;right:0;top:56px;height:18px;background:rgba(255,244,240,.72)}@keyframes float{50%{transform:translateY(-9px) rotate(2deg)}}.gift-scene i{position:absolute;color:var(--rose);font-style:normal;font-size:28px}.gift-scene i:first-of-type{left:22%;top:30%}.gift-scene i:last-of-type{right:20%;bottom:27%}.tickets{perspective:700px}.ticket{position:absolute;width:128px;height:165px;display:grid;place-items:center;border-radius:22px;box-shadow:0 18px 35px rgba(95,69,64,.11)}.ticket--back{transform:translate(-22px,9px) rotate(-9deg);background:#e8b9ae;font:400 48px Georgia,serif}.ticket--front{transform:translate(16px,-8px) rotate(6deg);background:linear-gradient(150deg,#fff8f4,#e7bdb2);grid-template-rows:1fr 1fr}.ticket--front span{align-self:end;font:400 28px Georgia,serif}.ticket--front b{align-self:start;font-size:30px;color:var(--rose)}.calendar-art{width:155px;height:145px;padding:30px 20px 18px;border-radius:25px;background:linear-gradient(145deg,#fff6f2,#e0b0a5);box-shadow:0 18px 40px rgba(95,69,64,.12);display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.calendar-art span{border-radius:8px;background:rgba(255,255,255,.62)}.calendar-art .active{background:var(--rose)}.event-body{margin-top:auto;padding:4px 24px 24px}.kicker{font-size:10px;letter-spacing:.25em;color:var(--rose)}.event-card h3{margin:9px 0 10px;font:400 clamp(30px,2.8vw,42px) Georgia,serif}.event-card p{margin:0;min-height:72px;color:#77534e;font-size:14px;line-height:1.55}.event-bottom{margin-top:21px;display:flex;align-items:center;justify-content:space-between;gap:12px}.text-btn{border:0;background:none;padding:0;color:#5a3430;font-weight:700;cursor:pointer}.event-bottom small{color:#8e6861}.ticker{width:min(1320px,100%);margin:24px auto 0;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,250,247,.32)}.ticker-track{width:max-content;display:flex;gap:42px;padding:15px 0;animation:ticker 22s linear infinite;color:#8e544d;font-size:11px;font-weight:700;letter-spacing:.22em}@keyframes ticker{to{transform:translateX(-50%)}}.cta{position:relative;display:grid;grid-template-columns:1fr 1.18fr;grid-template-rows:1fr auto;overflow:hidden;background:radial-gradient(circle at 14% 17%,rgba(255,255,255,.95),transparent 26%),linear-gradient(145deg,#fff8f4 0%,#f7e5df 50%,#edcdc4 100%)}.cta-left{padding:clamp(60px,7vw,105px) clamp(30px,6vw,92px) 34px;display:flex;flex-direction:column;justify-content:center}.eyeline{margin:16px 0 26px;display:flex;align-items:center;gap:12px;width:210px;color:var(--rose)}.eyeline i{display:block;width:78px;height:1px;background:rgba(123,63,66,.35)}.cta h2{margin:0;font:400 clamp(70px,8vw,124px)/.80 Georgia,serif;letter-spacing:-.055em;color:#8d4b4f}.cta-left>p{max-width:560px;margin:24px 0 28px;color:#71514d;font-size:18px;line-height:1.5}.cta-primary{width:min(480px,100%);display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:15px 24px;border:0;border-radius:999px;color:#fff;background:linear-gradient(135deg,#b96363,#91484b);box-shadow:0 16px 34px rgba(123,63,66,.20);cursor:pointer}.cta-primary b{text-align:left;font-size:18px}.benefits{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);width:min(620px,100%)}.benefits>div{min-height:94px;padding:10px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;border-right:1px solid var(--line)}.benefits>div:last-child{border-right:0}.benefits b{color:#a65355;font-size:30px}.benefits span{font-size:10px;letter-spacing:.18em;text-transform:uppercase;line-height:1.45}.cta-photo{position:relative;min-height:78svh;overflow:hidden}.cta-photo img{width:100%;height:100%;object-fit:cover;transform:scale(1.03);animation:ctaZoom 14s ease-in-out infinite alternate}@keyframes ctaZoom{to{transform:scale(1.08)}}.cta-photo>div{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,244,240,.22),transparent 27%),linear-gradient(180deg,transparent 68%,rgba(100,45,48,.12))}.info-strip{grid-column:1/-1;width:calc(100% - clamp(40px,8vw,120px));margin:-44px auto 18px;display:grid;grid-template-columns:1fr auto 1fr auto 1fr;align-items:center;gap:24px;padding:24px 38px;border:1px solid rgba(255,255,255,.82);border-radius:28px;background:rgba(255,249,247,.87);box-shadow:0 20px 55px rgba(103,56,56,.14);backdrop-filter:blur(14px);position:relative;z-index:4}.info-item{display:flex;align-items:center;justify-content:center;gap:15px}.info-item>b{font-size:25px;color:#9d5355}.info-item strong{display:block;margin-bottom:5px;font-size:11px;letter-spacing:.22em;text-transform:uppercase}.info-item span{font-size:13px;line-height:1.35;color:#765752}.info-strip>i{width:1px;height:54px;background:rgba(123,63,66,.18)}.footer{padding:22px clamp(24px,5vw,70px);color:#fff8f6;background:linear-gradient(120deg,#754041,#965555 58%,#a7605d)}.footer-inner{width:min(1380px,100%);margin:0 auto;display:grid;grid-template-columns:220px 1fr auto auto;align-items:center;gap:28px}.brand--footer{color:#fff}.footer nav{display:flex;justify-content:center;gap:28px}.footer nav a,.social a{color:rgba(255,255,255,.9);text-decoration:none;font-size:13px}.social{display:flex;gap:10px}.social a{width:36px;height:36px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.30);border-radius:50%}.footer-book{padding:12px 18px;border:1px solid rgba(255,255,255,.58);background:rgba(255,255,255,.08);color:#fff}.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease var(--delay,0s),transform .7s cubic-bezier(.2,.8,.2,1) var(--delay,0s)}.reveal.is-visible{opacity:1;transform:none}.toast{position:fixed;z-index:100;left:50%;bottom:24px;transform:translate(-50%,18px);padding:12px 18px;border-radius:999px;background:#573531;color:#fff;font-size:13px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:950px){.site-nav{grid-template-columns:1fr auto}.site-nav__links{display:none}.hero__photo{inset:0}.hero__photo img{object-position:63% center;filter:brightness(.78)}.hero__veil{background:linear-gradient(180deg,rgba(75,28,31,.34),rgba(78,30,33,.50))}.hero__inner{width:calc(100% - 40px);display:block;padding:150px 0 120px}.hero__script{position:absolute;right:24px;bottom:120px;font-size:36px}.services-grid{grid-template-columns:1fr 1fr}.service-card:last-child{grid-column:1/-1}.price-strip{grid-template-columns:1fr 1fr}.events-grid{grid-template-columns:1fr 1fr}.event-card--feature{grid-column:1/-1}.cta{grid-template-columns:1fr;grid-template-rows:auto auto auto}.cta-photo{min-height:52svh}.info-strip{grid-template-columns:1fr;margin:18px auto}.info-strip>i{width:100%;height:1px}.footer-inner{grid-template-columns:1fr 1fr}}@media(max-width:640px){.site-nav{height:74px;padding:10px 16px}.brand__glow{font-size:29px}.nav-book{font-size:12px;padding:10px 13px}.hero__inner{padding-top:120px}.hero h1{font-size:52px}.hero__copy p{font-size:16px;width:min(330px,82vw)}.hero__script{display:none}.section{padding:50px 16px}.section-head{display:block}.outline,.status{margin-top:20px}.services-grid,.events-grid{grid-template-columns:1fr}.service-card:last-child,.event-card--feature{grid-column:auto}.price-strip{grid-template-columns:1fr}.price-item{border-right:0;border-bottom:1px solid var(--line)}.price-item:last-child{border-bottom:0}.cta-left{padding:48px 18px 36px}.cta h2{font-size:64px}.benefits{grid-template-columns:1fr}.benefits>div{border-right:0;border-bottom:1px solid var(--line)}.benefits>div:last-child{border-bottom:0}.footer-inner{grid-template-columns:1fr}.footer nav{justify-content:flex-start;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}


/* =========================================================
   GLOW Booking V3 App — scoped, modern, Firebase connected
   ========================================================= */
body.gb-modal-open{overflow:hidden}
.gb-hidden{display:none!important}
.gb-overlay{position:fixed;inset:0;z-index:1000;padding:18px;background:rgba(52,29,28,.62);backdrop-filter:blur(16px);opacity:0;visibility:hidden;pointer-events:none;transition:.28s ease;overflow:auto}
.gb-overlay.is-open{opacity:1;visibility:visible;pointer-events:auto}
.gb-ambient{position:absolute;width:420px;height:420px;border-radius:50%;filter:blur(90px);pointer-events:none;opacity:.28}.gb-ambient-a{left:-160px;bottom:-120px;background:#fff}.gb-ambient-b{right:-150px;top:20%;background:#b95f61}
.gb-app{position:relative;width:min(1280px,100%);min-height:min(820px,calc(100vh - 36px));margin:auto;border-radius:34px;overflow:hidden;background:rgba(255,251,248,.94);backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.78);box-shadow:0 32px 100px rgba(50,25,23,.32);color:#3f2b29}
.gb-app button,.gb-app input,.gb-app textarea,.gb-app select,.gb-bottom-sheet button,.gb-bottom-sheet input,.gb-bottom-sheet textarea{font:inherit}
.gb-topbar{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:14px;padding:18px 24px;border-bottom:1px solid rgba(83,47,43,.11)}
.gb-brand{display:flex;align-items:center;gap:11px}.gb-brand-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#b65d5b,#783d43);color:#fff;font:500 19px Georgia,serif;box-shadow:0 8px 18px rgba(115,59,64,.18)}.gb-brand div{display:grid;gap:2px}.gb-brand strong{font-size:12px;letter-spacing:.13em}.gb-brand small{font-size:10px;color:#8b6f69}
.gb-status{display:flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;background:rgba(255,255,255,.6);font-size:10px;color:#6f504c;border:1px solid rgba(83,47,43,.11)}.gb-status-dot{width:7px;height:7px;border-radius:50%;background:#d2a17e;box-shadow:0 0 0 5px rgba(210,161,126,.11)}.gb-status.ready .gb-status-dot{background:#60a878;box-shadow:0 0 0 5px rgba(96,168,120,.11)}.gb-status.error .gb-status-dot{background:#b54c55}
.gb-artist-picker{display:flex;align-items:center;gap:8px;padding:6px 9px;border:1px solid rgba(83,47,43,.11);border-radius:12px;background:rgba(255,255,255,.55)}.gb-artist-picker span{font-size:8px;text-transform:uppercase;letter-spacing:.13em;color:#96766f}.gb-artist-picker select{border:0;outline:0;background:transparent;color:#4a2c31;font-size:10px;font-weight:800;max-width:155px}
.gb-icon-btn{width:38px;height:38px;border-radius:50%;border:1px solid rgba(83,47,43,.11);background:rgba(255,255,255,.68);color:#3f2b29;font-size:21px;cursor:pointer}
.gb-hero-row{display:flex;align-items:end;justify-content:space-between;gap:24px;padding:28px 30px 20px}.gb-kicker,.gb-section-label{font-size:9px;font-weight:800;letter-spacing:.26em;color:#ad5554}.gb-hero-row h2{margin:7px 0 5px;font:500 clamp(36px,5vw,58px)/.95 Georgia,"Times New Roman",serif;letter-spacing:-.04em}.gb-hero-row p{margin:0;color:#8b6f69;font-size:12px}.gb-mini-progress{display:flex;align-items:center;gap:8px;color:#ad938d;font-size:9px}.gb-mini-progress span.active{color:#733b40;font-weight:800}.gb-mini-progress i{width:22px;height:1px;background:#d9c2bc}
.gb-inline-message{margin:0 30px 14px;padding:11px 13px;border-radius:14px;background:#fff0f1;border:1px solid #efc2c7;color:#873f49;font-size:10px;font-weight:700}
.gb-service-strip{display:flex;gap:10px;overflow:auto;padding:0 30px 20px;scrollbar-width:none}.gb-service-strip::-webkit-scrollbar{display:none}.gb-loading-pill{padding:14px 16px;border-radius:17px;background:#fff;border:1px solid rgba(83,47,43,.11);font-size:10px;color:#92766f}
.gb-service-pill{min-width:172px;display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:18px;border:1px solid rgba(83,47,43,.11);background:rgba(255,255,255,.64);color:#3f2b29;cursor:pointer;text-align:left;transition:.22s ease}.gb-service-pill:hover{transform:translateY(-2px);background:#fff}.gb-service-pill.active{background:linear-gradient(145deg,#fff,#f7dfd8);border-color:#d6968d;box-shadow:0 10px 24px rgba(154,74,72,.10)}.gb-service-orb{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,#efd1c8,#e3b2a7);color:#733b40;flex:none}.gb-service-pill>span:last-child{display:grid;gap:2px}.gb-service-pill b{font-size:11px}.gb-service-pill small{font-size:10px;color:#ad5554;font-weight:800}
.gb-workspace{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:14px;padding:0 18px 102px}.gb-calendar-card,.gb-times-card{border:1px solid rgba(255,255,255,.78);border-radius:26px;background:rgba(255,255,255,.58);backdrop-filter:blur(16px);box-shadow:0 18px 48px rgba(91,52,47,.08);padding:22px}.gb-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.gb-card-head h3{margin:5px 0 0;font:500 26px Georgia,"Times New Roman",serif}.gb-calendar-nav{display:flex;gap:7px;align-items:center}.gb-calendar-nav button{min-width:32px;height:32px;border:1px solid rgba(83,47,43,.11);border-radius:10px;background:#fff;color:#3f2b29;cursor:pointer}.gb-calendar-nav button:disabled{opacity:.35;cursor:not-allowed}.gb-calendar-nav .gb-today-btn{padding:0 12px;font-size:10px}
.gb-calendar-shell{border-radius:22px;padding:12px;background:rgba(255,255,255,.64);border:1px solid rgba(255,255,255,.74)}.gb-weekdays,.gb-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:7px}.gb-weekdays{padding:4px 0 8px}.gb-weekdays span{text-align:center;font-size:8px;font-weight:800;color:#9e847e}.gb-calendar-grid button{position:relative;min-height:60px;border:0;border-radius:14px;background:transparent;color:#6f514c;cursor:pointer;transition:.2s ease}.gb-calendar-grid button span{display:block;font-weight:800;font-size:12px}.gb-calendar-grid button em{display:block;margin-top:4px;font-style:normal;font-size:7px;color:#a68982}.gb-calendar-grid button.available{background:#fbf2ee}.gb-calendar-grid button.available:hover{transform:translateY(-2px);background:#f4ddd7}.gb-calendar-grid button.selected{background:linear-gradient(145deg,#b65d5b,#743b40);color:#fff;box-shadow:0 12px 24px rgba(115,59,64,.19)}.gb-calendar-grid button.selected em{color:rgba(255,255,255,.72)}.gb-calendar-grid button.closed,.gb-calendar-grid button.outside{color:#c6b5b0;cursor:not-allowed}.gb-calendar-grid button.closed{text-decoration:line-through}.gb-calendar-grid button.no-slots{background:#f4eeee;color:#b19c96;cursor:not-allowed}.gb-calendar-grid button.loading-day em{opacity:.6}.gb-calendar-footer{display:flex;flex-wrap:wrap;gap:13px;margin-top:12px;font-size:8px;color:#8f746e}.gb-calendar-footer span{display:flex;align-items:center;gap:5px}.gb-legend{width:7px;height:7px;border-radius:50%}.gb-available-dot{background:#ead0c8}.gb-selected-dot{background:#733b40}.gb-closed-dot{background:#d8c9c5}
.gb-slots-count{padding:7px 9px;border-radius:999px;background:#f1ddd7;color:#8f504f;font-size:8px;font-weight:800}.gb-times-host{min-height:250px}.gb-day-part{padding:7px 0 16px}.gb-day-part>span{display:block;margin-bottom:9px;font-size:9px;color:#9a7d77;font-weight:800}.gb-slot-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.gb-slot-grid button{min-height:46px;border:1px solid rgba(83,47,43,.11);border-radius:14px;background:#fff;color:#674d49;font-size:11px;font-weight:800;cursor:pointer;transition:.2s ease}.gb-slot-grid button:hover{border-color:#d19a92;transform:translateY(-1px)}.gb-slot-grid button.selected{color:#fff;background:linear-gradient(145deg,#af5857,#7a3e43);border-color:transparent;box-shadow:0 9px 20px rgba(122,62,67,.17)}.gb-empty-state{height:220px;display:grid;place-items:center;align-content:center;text-align:center;color:#997d76}.gb-empty-state span{font-size:30px;color:#c68a81}.gb-empty-state p{max-width:220px;margin:8px 0 0;font-size:10px;line-height:1.45}.gb-loader{width:26px;height:26px;border:3px solid #ead3cd;border-top-color:#9f5353;border-radius:50%;animation:gbSpin .75s linear infinite}@keyframes gbSpin{to{transform:rotate(360deg)}}.gb-smart-note{display:flex;gap:9px;align-items:flex-start;margin-top:8px;padding:12px;border-radius:15px;background:#fbf0ed;border:1px solid #efd8d1}.gb-smart-note>span{color:#ad5554}.gb-smart-note p{margin:0;font-size:9px;line-height:1.4;color:#80645e}
.gb-floating-dock{position:absolute;left:18px;right:18px;bottom:18px;min-height:72px;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:20px;padding:11px 12px 11px 15px;border-radius:22px;background:rgba(68,39,37,.94);color:#fff;backdrop-filter:blur(16px);box-shadow:0 20px 48px rgba(62,31,29,.24)}.gb-dock-summary{display:flex;align-items:center;gap:10px}.gb-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:13px;background:linear-gradient(145deg,#c8756c,#9a4c4f);font:500 18px Georgia,serif}.gb-dock-summary div{display:grid;gap:2px}.gb-dock-summary span,.gb-dock-meta span{font-size:8px;opacity:.6}.gb-dock-summary strong{font-size:11px}.gb-dock-meta{display:flex;gap:22px}.gb-dock-meta div{display:grid;gap:2px}.gb-dock-meta strong{font-size:11px}.gb-continue-btn{min-height:48px;padding:0 20px;border:0;border-radius:15px;color:#4a2c31;background:#fff;font-weight:800;font-size:11px;cursor:pointer;box-shadow:0 8px 20px rgba(0,0,0,.08)}.gb-continue-btn:disabled{opacity:.45;cursor:not-allowed}
.gb-sheet-backdrop{position:fixed;inset:0;z-index:1100;background:rgba(46,25,24,.45);backdrop-filter:blur(7px);opacity:0;pointer-events:none;transition:.25s}.gb-sheet-backdrop.open{opacity:1;pointer-events:auto}.gb-bottom-sheet{position:fixed;z-index:1101;left:50%;bottom:0;width:min(760px,calc(100% - 20px));transform:translate(-50%,105%);padding:12px 24px 24px;border-radius:28px 28px 0 0;background:#fffaf7;color:#3f2b29;box-shadow:0 -24px 80px rgba(65,33,31,.22);transition:.38s cubic-bezier(.2,.8,.2,1)}.gb-bottom-sheet.open{transform:translate(-50%,0)}.gb-sheet-handle{width:44px;height:4px;border-radius:999px;background:#ddc7c1;margin:0 auto 18px}.gb-sheet-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start}.gb-sheet-head h2,.gb-success h2{margin:6px 0 5px;font:500 34px Georgia,"Times New Roman",serif}.gb-sheet-head p,.gb-success>p{margin:0;color:#8b6d67;font-size:11px}.gb-sheet-close{width:38px;height:38px;border-radius:50%;border:1px solid rgba(83,47,43,.11);background:#fff;color:#3f2b29;font-size:21px;cursor:pointer}.gb-sheet-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:22px}.gb-sheet-grid label{display:grid;gap:6px}.gb-sheet-grid label.gb-full{grid-column:1/-1}.gb-sheet-grid label span{font-size:9px;font-weight:800;color:#70544f}.gb-sheet-grid input,.gb-sheet-grid textarea{width:100%;border:1px solid #dfcbc5;border-radius:14px;background:#fff;padding:13px 14px;outline:none}.gb-sheet-grid textarea{min-height:85px;resize:vertical}.gb-sheet-grid input:focus,.gb-sheet-grid textarea:focus{border-color:#c56d67;box-shadow:0 0 0 4px rgba(197,109,103,.10)}.gb-consent{display:flex;align-items:flex-start;gap:8px;margin-top:13px;padding:11px;border-radius:13px;background:#fbf2ef;color:#80645e;font-size:9px;line-height:1.4}.gb-consent input{margin-top:1px;accent-color:#8e494c}.gb-consent a{color:#8e494c;font-weight:800}.gb-form-error{margin-top:12px;padding:11px 12px;border-radius:12px;background:#fff0f2;border:1px solid #edc2c8;color:#8b3e4a;font-size:9px;font-weight:700}.gb-sheet-confirm{margin-top:16px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:16px;border-top:1px solid rgba(83,47,43,.11)}.gb-sheet-confirm>div{display:grid;gap:3px}.gb-sheet-confirm>div span{font-size:8px;color:#9b8079}.gb-sheet-confirm>div strong{font-size:11px}.gb-sheet-confirm button,.gb-primary-btn{min-height:48px;padding:0 20px;border:0;border-radius:15px;color:#fff;background:linear-gradient(145deg,#ad5554,#743b40);font-size:11px;font-weight:800;cursor:pointer}.gb-sheet-confirm button:disabled{opacity:.6;cursor:wait}.gb-sheet-confirm button span{margin-left:9px}
.gb-success{text-align:center;padding:6px 6px 4px}.gb-success-orb{width:56px;height:56px;margin:0 auto 13px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#eef8f1,#d8ecdf);color:#347356;font-size:23px;font-weight:900}.gb-code{margin:18px auto;padding:14px;border-radius:15px;background:#fbefec;border:1px dashed #d9a8a2;display:grid;gap:3px;width:min(360px,100%)}.gb-code span{font-size:8px;color:#94766f;text-transform:uppercase;letter-spacing:.15em}.gb-code strong{font:600 23px Georgia,serif;color:#8c484b;letter-spacing:.08em}.gb-success-actions{display:flex;justify-content:center;gap:10px;margin-top:18px}.gb-secondary-btn{min-height:46px;padding:0 18px;border:1px solid #dfcbc5;border-radius:14px;background:#fff;color:#4a2c31;font-size:11px;font-weight:800;cursor:pointer}
@media(max-width:980px){.gb-workspace{grid-template-columns:1fr}.gb-app{overflow:visible}.gb-floating-dock{position:sticky;bottom:10px;margin:0 18px 18px;left:auto;right:auto}.gb-topbar{grid-template-columns:1fr auto auto}.gb-artist-picker{grid-row:2;grid-column:1/-1;justify-self:start}.gb-overlay{padding:10px}}
@media(max-width:720px){.gb-overlay{padding:0}.gb-app{min-height:100vh;border-radius:0}.gb-topbar{grid-template-columns:1fr auto;padding:14px 16px}.gb-status{display:none}.gb-artist-picker{grid-column:1/-1}.gb-hero-row{display:block;padding:22px 18px 17px}.gb-mini-progress{margin-top:13px}.gb-service-strip{padding:0 18px 17px}.gb-workspace{padding:0 8px 8px}.gb-calendar-card,.gb-times-card{padding:15px;border-radius:20px}.gb-calendar-grid button{min-height:49px}.gb-calendar-grid button em{display:none}.gb-floating-dock{grid-template-columns:1fr auto;margin:0 8px 8px}.gb-dock-meta{display:none}.gb-bottom-sheet{width:100%;border-radius:25px 25px 0 0}.gb-sheet-grid{grid-template-columns:1fr}.gb-sheet-grid label.gb-full{grid-column:auto}.gb-inline-message{margin-left:18px;margin-right:18px}}
@media(max-width:460px){.gb-card-head{align-items:flex-start}.gb-calendar-nav .gb-today-btn{display:none}.gb-calendar-grid,.gb-weekdays{gap:4px}.gb-slot-grid{grid-template-columns:1fr 1fr}.gb-service-pill{min-width:155px}.gb-sheet-confirm{align-items:stretch;flex-direction:column}.gb-sheet-confirm button{width:100%}.gb-success-actions{flex-direction:column}.gb-success-actions button{width:100%}}
@media(prefers-reduced-motion:reduce){.gb-overlay *, .gb-bottom-sheet *{animation:none!important;transition:none!important}}

/* Embedded SVG icon system: no external font dependency */
.icon-svg{display:inline-grid;place-items:center;vertical-align:middle;line-height:0}
.icon-svg svg{width:1.15em;height:1.15em;display:block}
.icon-svg.icon-md svg{width:1.35em;height:1.35em}
.icon-svg.icon-lg svg{width:1.55em;height:1.55em}
.nav-book .icon-svg,.hero-book .icon-svg,.footer-book .icon-svg{margin-left:8px}
.cta-primary .icon-svg{margin:0}
.social a.icon-svg{display:grid}
.gb-service-orb svg{width:20px;height:20px;display:block}
.gb-empty-state .icon-svg{color:#c68a81}
.gb-smart-note .icon-svg{color:#ad5554}
.gb-success-orb .icon-svg{color:#347356}


/* === Icon scale correction === */
.nav-book,
.hero-book,
.footer-book,
.outline{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:auto;
  min-width:0;
  height:auto;
}
.nav-book .icon-svg,
.hero-book .icon-svg,
.footer-book .icon-svg,
.outline .icon-svg{
  margin-left:0 !important;
  width:18px;
  height:18px;
  flex:0 0 18px;
}
.nav-book .icon-svg svg,
.hero-book .icon-svg svg,
.footer-book .icon-svg svg,
.outline .icon-svg svg{
  width:18px !important;
  height:18px !important;
}
.hero-book{padding:13px 22px}
.nav-book{padding:10px 15px}
.footer-book{padding:10px 16px}

.cta-primary .icon-svg{
  width:20px;
  height:20px;
  flex:0 0 20px;
}
.cta-primary .icon-svg svg{
  width:20px !important;
  height:20px !important;
}
.benefits .icon-svg.icon-lg{
  width:25px;
  height:25px;
}
.benefits .icon-svg.icon-lg svg{
  width:25px !important;
  height:25px !important;
}
.info-item .icon-svg.icon-md{
  width:24px;
  height:24px;
  flex:0 0 24px;
}
.info-item .icon-svg.icon-md svg{
  width:24px !important;
  height:24px !important;
}
.social .icon-svg svg{
  width:17px !important;
  height:17px !important;
}
@media(max-width:640px){
  .nav-book .icon-svg,
  .hero-book .icon-svg,
  .footer-book .icon-svg{
    width:16px;
    height:16px;
    flex-basis:16px;
  }
  .nav-book .icon-svg svg,
  .hero-book .icon-svg svg,
  .footer-book .icon-svg svg{
    width:16px !important;
    height:16px !important;
  }
}


/* Reservation confirmation positioning fix */
.gb-bottom-sheet.success-mode{
  top:50%;
  bottom:auto;
  width:min(620px,calc(100% - 28px));
  max-height:calc(100vh - 40px);
  overflow:auto;
  border-radius:28px;
  transform:translate(-50%, calc(-50% + 34px));
  box-shadow:0 28px 90px rgba(65,33,31,.28);
}
.gb-bottom-sheet.success-mode.open{
  transform:translate(-50%,-50%);
}
.gb-bottom-sheet.success-mode .gb-sheet-handle{margin-bottom:12px}
@media(max-width:720px){
  .gb-bottom-sheet.success-mode{
    width:calc(100% - 24px);
    border-radius:24px;
    max-height:calc(100vh - 32px);
  }
}


/* Desktop reservation form: centered modal instead of bottom sheet */
@media(min-width:721px){
  .gb-bottom-sheet{
    top:50% !important;
    bottom:auto !important;
    width:min(760px,calc(100% - 40px)) !important;
    max-height:calc(100vh - 40px);
    overflow:auto;
    border-radius:28px !important;
    opacity:0;
    pointer-events:none;
    transform:translate(-50%, calc(-50% + 34px)) !important;
    transition:opacity .22s ease, transform .28s cubic-bezier(.2,.8,.2,1) !important;
  }
  .gb-bottom-sheet.open{
    opacity:1;
    pointer-events:auto;
    transform:translate(-50%,-50%) !important;
  }
  .gb-bottom-sheet.success-mode,
  .gb-bottom-sheet.success-mode.open{
    top:50% !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
  }
}


/* ===== GLOW raffle sheet ===== */
.hidden{display:none!important}
body.raffle-open{overflow:hidden}
.raffle-backdrop{
  position:fixed;inset:0;z-index:2200;background:rgba(62,35,34,.58);
  backdrop-filter:blur(11px);opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .25s ease,visibility .25s ease
}
.raffle-backdrop.open{opacity:1;visibility:visible;pointer-events:auto}
.raffle-sheet{
  position:fixed;z-index:2201;left:50%;top:50%;
  width:min(920px,calc(100% - 32px));max-height:calc(100vh - 36px);
  border-radius:30px;background:#fffaf7;color:#4b312f;
  border:1px solid rgba(255,255,255,.9);
  box-shadow:0 34px 110px rgba(66,34,32,.28);
  overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;
  transform:translate(-50%,-46%) scale(.985);
  transition:opacity .26s ease,transform .34s cubic-bezier(.2,.8,.2,1),visibility .26s ease
}
.raffle-sheet.open{
  opacity:1;visibility:visible;pointer-events:auto;
  transform:translate(-50%,-50%) scale(1)
}
.raffle-sheet__top{
  position:relative;display:grid;grid-template-columns:60px 1fr auto;
  gap:12px;align-items:center;padding:17px 20px 14px;
  background:rgba(255,250,247,.96);border-bottom:1px solid rgba(141,75,75,.10)
}
.raffle-back{
  width:40px;height:40px;border-radius:50%;border:1px solid #ead3cc;
  background:#fff;color:#6f4744;font-size:23px;cursor:pointer
}
.raffle-brand{text-align:center;display:grid;justify-items:center;line-height:1}
.raffle-brand .raffle-crown{color:#da7187;font-size:21px;margin-bottom:-2px}
.raffle-brand strong{
  font:500 clamp(24px,3vw,34px)/1 Georgia,"Times New Roman",serif;
  letter-spacing:.03em;color:#2f2524
}
.raffle-brand em{
  margin-top:3px;font:italic 21px/1 "Brush Script MT","Segoe Script",cursive;
  color:#d5637d
}
.raffle-live{
  justify-self:end;padding:7px 10px;border-radius:999px;background:#f4dbe1;
  color:#8f2944;font-size:8px;font-weight:850;letter-spacing:.10em
}
.raffle-scroll{
  max-height:calc(100vh - 110px);overflow:auto;padding:20px 28px 0;
  scrollbar-width:thin;scrollbar-color:#d6b3aa transparent
}
.raffle-hero{text-align:center;margin:1px auto 17px}
.raffle-kicker{
  display:block;color:#b55e6e;font-size:9px;font-weight:850;letter-spacing:.27em
}
.raffle-hero h2{
  margin:7px 0 5px;font:500 clamp(31px,4vw,44px)/1 Georgia,"Times New Roman",serif;
  color:#372826;letter-spacing:-.03em
}
.raffle-hero p{margin:0;color:#8b6c66;font-size:11px}
.raffle-numbers{
  width:min(700px,100%);margin:0 auto;
  display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:7px
}
.raffle-numbers button{
  aspect-ratio:1.05;min-width:0;border:1px solid #ecd4cf;border-radius:11px;
  background:#fffdfb;color:#3d3030;font-size:11px;font-weight:800;
  cursor:pointer;transition:.18s ease;box-shadow:0 3px 9px rgba(89,47,44,.03)
}
.raffle-numbers button:hover:not(:disabled){
  transform:translateY(-2px);border-color:#d3848e;background:#fff4f3
}
.raffle-numbers button.selected{
  color:#fff;border-color:#a34b5c;
  background:linear-gradient(145deg,#cf7184,#9b3f54);
  box-shadow:0 9px 20px rgba(143,41,68,.18)
}
.raffle-numbers button.reserved{
  position:relative;background:#eee8e7;color:#baa8a5;border-color:#ece4e2;
  cursor:not-allowed;text-decoration:line-through;box-shadow:none
}
.raffle-numbers button.reserved::after{
  content:"";position:absolute;width:5px;height:5px;border-radius:50%;
  right:5px;top:5px;background:#c8757c
}
.raffle-draw-banner{
  width:min(760px,100%);margin:18px auto 12px;padding:12px 16px;
  display:flex;gap:12px;align-items:center;justify-content:center;
  border:1px solid #e9a7af;border-radius:15px;background:#fffdfb;text-align:center
}
.raffle-calendar-icon{
  width:38px;height:38px;border-radius:11px;display:grid;place-items:center;
  background:#f5dce1;color:#c8526d;font-size:20px;flex:none
}
.raffle-draw-banner div{display:grid;gap:3px}
.raffle-draw-banner strong{font-size:13px;letter-spacing:.03em}
.raffle-draw-banner small{font-size:9px;letter-spacing:.09em;color:#80625d}
.raffle-info-grid{
  width:min(760px,100%);margin:0 auto 13px;
  display:grid;grid-template-columns:.7fr 1.25fr 1fr;gap:9px
}
.raffle-info-grid article{
  min-height:92px;padding:12px 13px;border:1px solid #ead9d4;border-radius:15px;
  background:#fff;text-align:center;display:grid;align-content:center;gap:7px
}
.raffle-info-grid article>span{
  justify-self:center;padding:5px 9px;border-radius:999px;background:#df7587;color:#fff;
  font-size:8px;font-weight:850;letter-spacing:.08em
}
.raffle-info-grid strong{font:600 23px/1.05 Georgia,"Times New Roman",serif;color:#a73e56}
.raffle-info-grid p{margin:0;font-size:9px;line-height:1.5;color:#6e5651}
.raffle-selection{
  width:min(760px,100%);margin:0 auto 12px;padding:11px 14px;
  display:flex;align-items:center;justify-content:space-between;gap:15px;
  border-radius:14px;background:#fbefec;border:1px solid #eed8d3
}
.raffle-selection div{display:flex;align-items:center;gap:9px}
.raffle-selection span{font-size:8px;font-weight:800;color:#8d706b;letter-spacing:.08em}
.raffle-selection strong{
  min-width:38px;font:700 24px/1 Georgia,"Times New Roman",serif;color:#a33f55
}
.raffle-selection small{font-size:8px;color:#8e716c;text-align:right}
.raffle-form{
  width:min(760px,100%);margin:0 auto 14px;padding:15px;
  border:1px solid #ead7d2;border-radius:17px;background:#fffdfc
}
.raffle-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}
.raffle-form-grid label{display:grid;gap:6px}
.raffle-form-grid label.full{grid-column:1/-1}
.raffle-form-grid label>span{font-size:8px;font-weight:850;color:#705652}
.raffle-form-grid label small{font-weight:500;color:#a18a85}
.raffle-form-grid input{
  width:100%;height:43px;border:1px solid #e2cbc5;border-radius:12px;
  padding:0 12px;background:#fff;outline:none;color:#382b29
}
.raffle-form-grid input:focus{
  border-color:#c76d7e;box-shadow:0 0 0 4px rgba(199,109,126,.09)
}
.raffle-consent{
  margin:11px 0;display:flex;gap:8px;align-items:flex-start;padding:10px;
  border-radius:12px;background:#fbf3f1;color:#765e59;font-size:8px;line-height:1.45
}
.raffle-consent input{accent-color:#a44458;margin-top:1px}
.raffle-consent a{color:#914050;font-weight:800}
.raffle-error{
  margin-bottom:10px;padding:10px 11px;border-radius:11px;
  background:#fff0f2;border:1px solid #efc2ca;color:#923c4d;font-size:9px;font-weight:750
}
.raffle-submit{
  width:100%;min-height:46px;border:0;border-radius:13px;
  background:linear-gradient(145deg,#c95f78,#923d53);color:#fff;
  font-size:10px;font-weight:850;cursor:pointer;box-shadow:0 10px 23px rgba(145,57,78,.16)
}
.raffle-submit:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}
.raffle-submit span{margin-left:7px}
.raffle-success{
  width:min(760px,100%);margin:0 auto 14px;padding:22px;text-align:center;
  border:1px solid #e6d0ca;border-radius:17px;background:#fff
}
.raffle-success>span{
  width:46px;height:46px;margin:0 auto 9px;display:grid;place-items:center;
  border-radius:50%;background:#f3dce2;color:#a44458;font-size:23px
}
.raffle-success h3{margin:0 0 6px;font:600 26px Georgia,serif}
.raffle-success p{margin:0 auto 13px;max-width:440px;color:#816963;font-size:10px;line-height:1.5}
.raffle-success button{
  min-height:40px;padding:0 17px;border:0;border-radius:11px;
  background:#9e4658;color:#fff;font-size:9px;font-weight:800;cursor:pointer
}
.raffle-luck{
  margin:0 -28px;padding:13px;text-align:center;background:linear-gradient(90deg,#e16f88,#d45d78);
  color:#fff;font-size:16px;font-weight:850;letter-spacing:.08em
}
@media(max-width:720px){
  .raffle-sheet{
    inset:0;left:0;top:0;width:100%;height:100%;max-height:none;border-radius:0;
    transform:translateY(8%)!important
  }
  .raffle-sheet.open{transform:none!important}
  .raffle-sheet__top{grid-template-columns:44px 1fr 44px;padding:12px 13px}
  .raffle-back{width:36px;height:36px}
  .raffle-live{font-size:0;width:8px;height:8px;padding:0;border-radius:50%;justify-self:center;background:#69a677}
  .raffle-scroll{max-height:calc(100vh - 62px);padding:16px 12px 0}
  .raffle-brand strong{font-size:24px}.raffle-brand em{font-size:18px}
  .raffle-numbers{gap:5px}
  .raffle-numbers button{border-radius:8px;font-size:10px}
  .raffle-draw-banner{padding:10px}
  .raffle-draw-banner strong{font-size:11px}
  .raffle-info-grid{grid-template-columns:1fr 1fr}
  .raffle-info-grid article:nth-child(2){grid-column:1/-1;grid-row:2}
  .raffle-form-grid{grid-template-columns:1fr}
  .raffle-form-grid label.full{grid-column:auto}
  .raffle-selection{align-items:flex-start;flex-direction:column}
  .raffle-selection small{text-align:left}
  .raffle-luck{margin:0 -12px}
}
@media(max-width:400px){
  .raffle-numbers{gap:4px}
  .raffle-numbers button{font-size:9px;border-radius:7px}
}
@media(prefers-reduced-motion:reduce){
  .raffle-sheet,.raffle-backdrop,.raffle-numbers button{transition:none!important}
}


/* Centered raffle reservation confirmation */
.raffle-confirm-backdrop{
  position:fixed;inset:0;z-index:2300;
  background:rgba(58,32,31,.42);
  backdrop-filter:blur(10px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease
}
.raffle-confirm-backdrop.open{
  opacity:1;visibility:visible;pointer-events:auto
}
.raffle-confirm-popup{
  position:fixed;z-index:2301;left:50%;top:50%;
  width:min(430px,calc(100% - 32px));
  padding:28px 28px 25px;
  border-radius:26px;
  background:#fffaf7;
  border:1px solid rgba(255,255,255,.95);
  box-shadow:0 32px 100px rgba(65,32,31,.30);
  text-align:center;
  opacity:0;visibility:hidden;pointer-events:none;
  transform:translate(-50%,-46%) scale(.97);
  transition:opacity .22s ease,transform .30s cubic-bezier(.2,.8,.2,1),visibility .22s ease
}
.raffle-confirm-popup.open{
  opacity:1;visibility:visible;pointer-events:auto;
  transform:translate(-50%,-50%) scale(1)
}
.raffle-confirm-heart{
  width:50px;height:50px;margin:0 auto 12px;
  display:grid;place-items:center;border-radius:50%;
  background:#f4dce2;color:#b2465c;font-size:24px
}
.raffle-confirm-kicker{
  display:block;margin-bottom:7px;
  color:#b15162;font-size:8px;font-weight:850;letter-spacing:.18em
}
.raffle-confirm-popup h3{
  margin:0 0 9px;
  font:600 30px/1 Georgia,"Times New Roman",serif;
  color:#4b302e
}
.raffle-confirm-popup p{
  margin:0;color:#876d67;font-size:10px
}
.raffle-confirm-number{
  display:grid;place-items:center;
  width:100px;height:100px;margin:13px auto 12px;
  border-radius:24px;
  background:linear-gradient(145deg,#d97a8d,#a44358);
  color:#fff;
  font:700 47px/1 Georgia,"Times New Roman",serif;
  box-shadow:0 16px 35px rgba(151,57,78,.22)
}
.raffle-confirm-popup small{
  display:block;max-width:310px;margin:0 auto 18px;
  color:#806761;font-size:9px;line-height:1.5
}
.raffle-confirm-popup button{
  min-width:120px;min-height:42px;
  border:0;border-radius:12px;
  background:#a64759;color:#fff;
  font-size:9px;font-weight:850;cursor:pointer
}
@media(max-width:520px){
  .raffle-confirm-popup{
    width:calc(100% - 28px);
    padding:24px 20px 22px;
    border-radius:23px
  }
  .raffle-confirm-popup h3{font-size:27px}
  .raffle-confirm-number{width:88px;height:88px;font-size:42px}
}
@media(prefers-reduced-motion:reduce){
  .raffle-confirm-popup,.raffle-confirm-backdrop{transition:none!important}
}


/* ===== Raffle flow V3: select numbers -> summary -> data popup ===== */
.raffle-selection-v2{
  align-items:stretch;
  gap:18px;
  padding:14px 16px
}
.raffle-selection-main{
  flex:1;
  min-width:0;
  display:grid;
  gap:7px
}
.raffle-selection-main>span,
.raffle-selection-side>small{
  font-size:8px;
  font-weight:850;
  color:#8d706b;
  letter-spacing:.08em
}
.raffle-selected-chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  min-height:34px;
  align-items:center;
  font:700 21px/1 Georgia,"Times New Roman",serif;
  color:#a33f55
}
.raffle-selected-chips span{
  min-width:38px;
  height:32px;
  padding:0 8px;
  border-radius:10px;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid #e8cdd3;
  color:#9e4055;
  font:700 15px/1 Georgia,"Times New Roman",serif
}
.raffle-selection-side{
  min-width:190px;
  padding-left:16px;
  border-left:1px solid #ead7d2;
  display:grid;
  align-content:center;
  gap:6px;
  text-align:right
}
.raffle-selection-side>strong{
  font:650 25px/1 Georgia,"Times New Roman",serif;
  color:#8f2944
}
.raffle-continue{
  min-height:42px;
  border:0;
  border-radius:12px;
  padding:0 16px;
  background:linear-gradient(145deg,#c95f78,#923d53);
  color:#fff;
  font-size:9px;
  font-weight:850;
  cursor:pointer;
  box-shadow:0 9px 20px rgba(145,57,78,.15)
}
.raffle-continue:disabled{
  opacity:.42;
  cursor:not-allowed;
  box-shadow:none
}

/* Data popup shown only after confirming number selection */
.raffle-data-backdrop{
  position:fixed;
  inset:0;
  z-index:2260;
  background:rgba(60,34,33,.48);
  backdrop-filter:blur(11px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease,visibility .22s ease
}
.raffle-data-backdrop.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto
}
.raffle-data-popup{
  position:fixed;
  z-index:2261;
  left:50%;
  top:50%;
  width:min(620px,calc(100% - 28px));
  max-height:calc(100vh - 34px);
  overflow:auto;
  padding:23px;
  border-radius:26px;
  background:#fffaf7;
  border:1px solid rgba(255,255,255,.95);
  box-shadow:0 32px 100px rgba(65,32,31,.30);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transform:translate(-50%,-46%) scale(.975);
  transition:opacity .22s ease,transform .30s cubic-bezier(.2,.8,.2,1),visibility .22s ease
}
.raffle-data-popup.open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translate(-50%,-50%) scale(1)
}
.raffle-data-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:15px;
  margin-bottom:15px
}
.raffle-data-head h3{
  margin:5px 0 4px;
  font:600 29px/1 Georgia,"Times New Roman",serif;
  color:#4b302e
}
.raffle-data-head p{
  margin:0;
  color:#876d67;
  font-size:9px
}
.raffle-data-head>button{
  width:38px;
  height:38px;
  flex:none;
  border-radius:50%;
  border:1px solid #ead5d0;
  background:#fff;
  color:#755954;
  font-size:20px;
  cursor:pointer
}
.raffle-data-summary{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  padding:12px 13px;
  margin-bottom:12px;
  border-radius:14px;
  background:#fbefec;
  border:1px solid #edd8d3
}
.raffle-data-summary>div{
  display:grid;
  gap:3px
}
.raffle-data-summary>div:last-child{
  text-align:right
}
.raffle-data-summary span{
  font-size:7px;
  font-weight:850;
  color:#947772;
  letter-spacing:.08em
}
.raffle-data-summary strong{
  font:650 18px/1.2 Georgia,"Times New Roman",serif;
  color:#913d51
}
.raffle-popup-form{
  width:100%;
  margin:0;
  padding:0;
  border:0;
  background:transparent
}
.raffle-popup-form .raffle-submit{
  margin-top:2px
}

/* Final confirmation for one or multiple numbers */
.raffle-confirm-numbers{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:8px;
  margin:14px auto 14px;
  max-width:320px
}
.raffle-confirm-numbers span{
  min-width:68px;
  height:68px;
  padding:0 12px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#d97a8d,#a44358);
  color:#fff;
  font:700 31px/1 Georgia,"Times New Roman",serif;
  box-shadow:0 12px 27px rgba(151,57,78,.18)
}

@media(max-width:720px){
  .raffle-selection-v2{
    flex-direction:column;
    gap:10px;
    padding:13px
  }
  .raffle-selection-side{
    min-width:0;
    width:100%;
    padding:11px 0 0;
    border-left:0;
    border-top:1px solid #ead7d2;
    text-align:left;
    grid-template-columns:1fr auto;
    align-items:center
  }
  .raffle-selection-side>small{grid-column:1}
  .raffle-selection-side>strong{
    grid-column:2;
    grid-row:1/3;
    text-align:right;
    font-size:23px
  }
  .raffle-continue{
    grid-column:1/-1;
    width:100%;
    min-height:47px;
    font-size:10px
  }
  .raffle-selected-chips{
    font-size:18px
  }
  .raffle-data-popup{
    width:calc(100% - 20px);
    max-height:calc(100dvh - 20px);
    padding:18px 15px;
    border-radius:22px
  }
  .raffle-data-head h3{font-size:26px}
  .raffle-data-summary{
    grid-template-columns:1fr;
    gap:8px
  }
  .raffle-data-summary>div:last-child{
    text-align:left;
    padding-top:7px;
    border-top:1px solid #ead7d2
  }
  .raffle-popup-form .raffle-form-grid{
    grid-template-columns:1fr
  }
  .raffle-popup-form .raffle-form-grid label.full{
    grid-column:auto
  }
  .raffle-popup-form .raffle-form-grid input{
    height:46px;
    font-size:16px
  }
  .raffle-confirm-numbers span{
    min-width:58px;
    height:58px;
    border-radius:15px;
    font-size:27px
  }
}
@media(prefers-reduced-motion:reduce){
  .raffle-data-popup,.raffle-data-backdrop{transition:none!important}
}
