:root{--navy-950:#09131f;--navy-900:#0e1b2b;--navy-800:#13263b;--navy-700:#1b3550;--navy-600:#2a4a6b;--brass-600:#9c7a45;--brass-500:#b8925a;--brass-300:#d9c29a;--brass-100:#f3ead9;--ivory:#f7f4ee;--paper:#fff;--ink:#18212d;--ink-soft:#3a4553;--muted:#5f6a79;--line:#e5dfd4;--line-strong:#cfc6b6;--success:#2f6b4f;--success-bg:#e5f1ea;--warning:#8a5a12;--warning-bg:#fbf0dc;--danger:#a23b3b;--danger-bg:#f8e6e4;--info:#24527a;--info-bg:#e3edf6;--font-serif:"Cormorant Garamond", "Times New Roman", Georgia, serif;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--radius-sm:6px;--radius:10px;--radius-lg:16px;--shadow-sm:0 1px 2px #0e1b2b0f;--shadow:0 6px 24px -8px #0e1b2b24;--shadow-lg:0 24px 60px -20px #09131f59;--container:1180px;--header-h:76px;--ease:cubic-bezier(.2, .7, .2, 1)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 12px);-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);color:var(--ink);background:var(--ivory);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:16px;line-height:1.65}img,svg{max-width:100%;display:block}h1,h2,h3,h4{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--navy-900);margin:0 0 .5em;font-weight:600;line-height:1.12}h1{font-size:clamp(2.6rem,5.4vw,4.4rem)}h2{font-size:clamp(2rem,3.6vw,2.9rem)}h3{font-size:1.55rem}p{margin:0 0 1em}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--brass-500);outline-offset:3px}::selection{background:var(--brass-300);color:var(--navy-900)}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:clamp(20px,4vw,40px)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--brass-600);align-items:center;gap:10px;margin-bottom:18px;font-size:.75rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:28px;height:1px}.eyebrow--light{color:var(--brass-300)}.lead{color:var(--muted);max-width:62ch;font-size:1.125rem}.btn{border-radius:var(--radius-sm);letter-spacing:.01em;cursor:pointer;min-height:48px;transition:background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:0 26px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn svg{width:18px;height:18px;transition:transform .2s var(--ease)}.btn:hover svg:last-child{transform:translate(3px)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--brass-500);color:var(--navy-950)}.btn--primary:hover:not(:disabled){background:var(--brass-300);box-shadow:0 10px 30px -12px #b8925acc}.btn--dark{background:var(--navy-900);color:var(--ivory)}.btn--dark:hover:not(:disabled){background:var(--navy-700)}.btn--ghost-light{color:var(--ivory);background:0 0;border-color:#f7f4ee59}.btn--ghost-light:hover{border-color:var(--brass-300);color:var(--brass-300)}.btn--outline{border-color:var(--line-strong);background:var(--paper);color:var(--navy-900)}.btn--outline:hover:not(:disabled){border-color:var(--navy-900)}.btn--sm{min-height:38px;padding:0 16px;font-size:.85rem}.btn--block{width:100%}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 20px;display:grid}.form-grid .span-2{grid-column:1/-1}@media (width<=640px){.form-grid{grid-template-columns:1fr}}.field{flex-direction:column;gap:7px;display:flex}.field label{color:var(--ink-soft);font-size:.85rem;font-weight:600}.field .optional{color:var(--muted);font-weight:400}.input,.select,.textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--paper);width:100%;min-height:48px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.textarea{resize:vertical;min-height:130px;line-height:1.55}.input:focus,.select:focus,.textarea:focus{border-color:var(--navy-600);outline:none;box-shadow:0 0 0 3px #2a4a6b26}.field.has-error .input,.field.has-error .select,.field.has-error .textarea{border-color:var(--danger)}.field-error{color:var(--danger);font-size:.8rem}.field-hint{color:var(--muted);font-size:.8rem}.checkbox{color:var(--ink-soft);cursor:pointer;align-items:flex-start;gap:12px;font-size:.9rem;display:flex}.checkbox input{width:18px;height:18px;accent-color:var(--navy-900);flex-shrink:0;margin-top:4px}.honeypot{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.alert{border-radius:var(--radius-sm);border:1px solid #0000;align-items:flex-start;gap:12px;padding:14px 16px;font-size:.92rem;display:flex}.alert svg{flex-shrink:0;width:20px;height:20px;margin-top:1px}.alert--error{background:var(--danger-bg);color:var(--danger);border-color:#a23b3b33}.alert--success{background:var(--success-bg);color:var(--success);border-color:#2f6b4f33}.alert--info{background:var(--info-bg);color:var(--info);border-color:#24527a2e}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.skeleton{border-radius:var(--radius-sm);background:linear-gradient(90deg,#ece7de 0%,#f5f1ea 50%,#ece7de 100%) 0 0/200% 100%;animation:1.4s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.skip-link{z-index:100;background:var(--brass-500);color:var(--navy-950);border-radius:var(--radius-sm);padding:10px 16px;font-weight:600;position:absolute;top:-100px;left:16px}.skip-link:focus{top:12px}.logo{align-items:center;gap:12px;text-decoration:none;display:inline-flex}.logo-text{flex-direction:column;line-height:1.1;display:flex}.logo-name{font-family:var(--font-serif);letter-spacing:.04em;font-size:1.4rem;font-weight:700}.logo-name span{font-weight:500}.logo-tagline{letter-spacing:.2em;text-transform:uppercase;margin-top:3px;font-size:.66rem;font-weight:500}.logo--light .logo-name{color:var(--ivory)}.logo--light .logo-tagline{color:var(--brass-300)}.logo--dark .logo-name{color:var(--navy-900)}.logo--dark .logo-tagline{color:var(--brass-600)}.site-header{z-index:50;height:var(--header-h);transition:background .3s var(--ease), box-shadow .3s var(--ease);align-items:center;display:flex;position:fixed;inset:0 0 auto}.site-header>a,.header-inner>a{text-decoration:none}.site-header.is-solid{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0e1b2bf5;box-shadow:0 1px #d9c29a1f}.header-inner{justify-content:space-between;align-items:center;gap:24px;display:flex}.main-nav{align-items:center;gap:6px;display:flex}.nav-link{color:#f7f4eed1;padding:8px 12px;font-size:.92rem;font-weight:500;text-decoration:none;transition:color .2s;position:relative}.nav-link:after{content:"";background:var(--brass-300);height:1px;transition:transform .25s var(--ease);position:absolute;bottom:2px;left:12px;right:12px;transform:scaleX(0)}.nav-link:hover{color:var(--ivory)}.nav-link:hover:after{transform:scaleX(1)}.nav-cta{margin-left:12px}.nav-toggle{border-radius:var(--radius-sm);width:44px;height:44px;color:var(--ivory);cursor:pointer;background:0 0;border:1px solid #f7f4ee40;justify-content:center;align-items:center;display:none}@media (width<=980px){.nav-toggle{display:inline-flex}.main-nav{inset:var(--header-h) 0 0;background:var(--navy-900);transition:transform .3s var(--ease);flex-direction:column;align-items:stretch;gap:0;padding:24px clamp(20px,4vw,40px);position:fixed;transform:translate(100%)}.main-nav.is-open{transform:none}.nav-link{border-bottom:1px solid #f7f4ee14;padding:16px 0;font-size:1.1rem}.nav-link:after{display:none}.nav-cta{min-height:52px;margin:24px 0 0}}.hero{padding:calc(var(--header-h) + clamp(48px, 9vw, 110px)) 0 0;background:radial-gradient(1000px 500px at 85% 10%, #2a4a6b8c, transparent 60%), radial-gradient(800px 400px at 0% 100%, #b8925a1a, transparent 60%), linear-gradient(180deg, var(--navy-950) 0%, var(--navy-900) 100%);color:var(--ivory);position:relative;overflow:hidden}.hero-lines{width:100%;height:65%;color:var(--brass-300);pointer-events:none;position:absolute;bottom:0;left:0;right:0}.hero-grid{grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);align-items:center;gap:clamp(32px,6vw,80px);display:grid;position:relative}.hero h1{color:var(--ivory);margin-bottom:24px;font-weight:600}.hero h1 em,.section--dark h2 em{color:var(--brass-300);font-style:italic}.hero-lead{color:#f7f4eec7;max-width:56ch;margin-bottom:36px;font-size:clamp(1.05rem,1.6vw,1.2rem)}.hero-actions{flex-wrap:wrap;gap:14px;display:flex}.hero-card{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-lg);background:linear-gradient(#f7f4ee14,#f7f4ee08);border:1px solid #d9c29a40;padding:32px;position:relative}.hero-card-head{letter-spacing:.14em;text-transform:uppercase;color:var(--brass-300);align-items:center;gap:10px;margin-bottom:18px;font-size:.75rem;font-weight:600;display:flex}.pulse{background:#6fcf97;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 #6fcf9799}@keyframes pulse{70%{box-shadow:0 0 0 10px #6fcf9700}to{box-shadow:0 0 #6fcf9700}}.hero-card-date{font-family:var(--font-serif);margin:0 0 8px;font-size:2rem;font-weight:600;line-height:1.15}.hero-card-time{color:#f7f4eebf;align-items:center;gap:8px;font-size:.95rem;display:flex}.hero-card-time svg{width:16px;height:16px;color:var(--brass-300)}.hero-card-skeleton{gap:10px;margin-bottom:1em;display:grid}.hero-card-skeleton .skeleton{background:linear-gradient(90deg,#ffffff0f,#ffffff24,#ffffff0f) 0 0/200% 100%}.hero-card-list{color:#f7f4eed9;border-top:1px solid #f7f4ee1f;border-bottom:1px solid #f7f4ee1f;gap:10px;margin:8px 0 24px;padding:20px 0;font-size:.92rem;list-style:none;display:grid}.hero-card-list li{align-items:center;gap:10px;display:flex}.hero-card-list svg{width:16px;height:16px;color:var(--brass-300)}.hero-facts{border-top:1px solid #d9c29a33;grid-template-columns:repeat(3,1fr);gap:24px;margin:clamp(56px,8vw,96px) 0 0;padding:28px 0;list-style:none;display:grid;position:relative}.hero-facts li{align-items:center;gap:14px;display:flex}.hero-facts svg{width:26px;height:26px;color:var(--brass-300);stroke-width:1.5px;flex-shrink:0}.hero-facts strong{font-size:.95rem;font-weight:600;display:block}.hero-facts span{color:#f7f4ee99;font-size:.82rem}@media (width<=980px){.hero-grid{grid-template-columns:1fr}.hero-card{max-width:480px}}@media (width<=520px){.hero-facts{grid-template-columns:1fr}}.section{padding:clamp(72px,10vw,128px) 0;position:relative}.section--paper{background:var(--paper)}.section--dark{background:linear-gradient(160deg, var(--navy-900), var(--navy-800));color:var(--ivory);overflow:hidden}.section--dark h2{color:var(--ivory)}.section--dark .hero-lines{opacity:.6;height:100%}.lead--light{color:#f7f4eeb8}.section-head{text-align:center;max-width:720px;margin:0 auto clamp(48px,6vw,72px)}.section-head .lead{margin-inline:auto}.section-head--left{text-align:left;margin:0}.services-grid{grid-template-columns:repeat(6,1fr);gap:24px;display:grid}.service-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);flex-direction:column;grid-column:span 2;padding:36px 32px 30px;display:flex}.service-card:hover{box-shadow:var(--shadow);border-color:var(--brass-300);transform:translateY(-4px)}.service-card--featured{grid-column:span 3}.service-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:24px;display:flex}.service-icon{background:var(--navy-900);width:56px;height:56px;color:var(--brass-300);border-radius:14px;justify-content:center;align-items:center;display:inline-flex}.service-icon svg{stroke-width:1.5px;width:26px;height:26px}.badge-brass{background:var(--brass-100);color:var(--brass-600);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:5px 12px;font-size:.72rem;font-weight:600}.service-card h3{margin-bottom:12px;font-size:1.7rem}.service-card p{color:var(--muted)}.check-list{gap:9px;margin:4px 0 28px;padding:0;list-style:none;display:grid}.check-list li{color:var(--ink-soft);align-items:flex-start;gap:10px;font-size:.93rem;display:flex}.check-list svg{width:16px;height:16px;color:var(--brass-500);flex-shrink:0;margin-top:4px}.service-link{border-top:1px solid var(--line);color:var(--navy-800);align-items:center;gap:8px;margin-top:auto;padding-top:20px;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.service-link svg{width:16px;height:16px;transition:transform .2s var(--ease)}.service-link:hover svg{transform:translate(4px)}.service-card--cta{background:linear-gradient(160deg, var(--navy-900), var(--navy-700));color:var(--ivory);border-color:#0000;justify-content:center}.service-card--cta h3{color:var(--ivory);margin-bottom:28px}.service-card--cta .btn{align-self:flex-start}@media (width<=980px){.services-grid{grid-template-columns:repeat(2,1fr)}.service-card,.service-card--featured{grid-column:span 1}}@media (width<=640px){.services-grid{grid-template-columns:1fr}}.modality-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(40px,7vw,96px);display:grid}.schedule-box{border:1px solid var(--line);border-radius:var(--radius);background:var(--ivory);grid-template-columns:repeat(3,1fr);margin:32px 0 36px;display:grid}.schedule-box>div{flex-direction:column;gap:2px;padding:20px;display:flex}.schedule-box>div+div{border-left:1px solid var(--line)}.schedule-box svg{width:22px;height:22px;color:var(--brass-500);stroke-width:1.6px;margin-bottom:8px}.schedule-box span{color:var(--muted);font-size:.78rem}.schedule-box strong{font-family:var(--font-serif);color:var(--navy-900);font-size:1.35rem}.steps{margin:0;padding:0;list-style:none;position:relative}.steps:before{content:"";background:linear-gradient(var(--brass-300), var(--line));width:1px;position:absolute;top:28px;bottom:28px;left:27px}.step{gap:24px;padding-bottom:36px;display:flex;position:relative}.step:last-child{padding-bottom:0}.step-number{background:var(--paper);border:1px solid var(--brass-300);width:56px;height:56px;font-family:var(--font-serif);color:var(--brass-600);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.25rem;font-weight:700;display:inline-flex}.step h3{margin:12px 0 6px;font-size:1.45rem}.step p{color:var(--muted);margin:0}@media (width<=880px){.modality-grid{grid-template-columns:1fr}}@media (width<=520px){.schedule-box{grid-template-columns:1fr}.schedule-box>div+div{border-left:0;border-top:1px solid var(--line)}}.coverage-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,7vw,96px);display:grid;position:relative}.coverage-list{gap:12px;margin:0;padding:0;list-style:none;display:grid}.coverage-list li{border-radius:var(--radius);transition:background .2s, border-color .2s, transform .2s var(--ease);background:#f7f4ee0a;border:1px solid #d9c29a2e;align-items:center;gap:18px;padding:18px 22px;display:flex}.coverage-list li:hover{background:#f7f4ee14;border-color:#d9c29a66;transform:translate(4px)}.coverage-list svg{width:22px;height:22px;color:var(--brass-300);flex-shrink:0}.coverage-list strong{font-family:var(--font-serif);font-size:1.35rem;font-weight:600;line-height:1.2;display:block}.coverage-list span{color:#f7f4ee99;font-size:.85rem}@media (width<=880px){.coverage-grid{grid-template-columns:1fr}}.faq-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(40px,7vw,96px);display:grid}.faq-list{border-top:1px solid var(--line-strong)}.faq-item{border-bottom:1px solid var(--line-strong)}.faq-item summary{cursor:pointer;font-family:var(--font-serif);color:var(--navy-900);justify-content:space-between;align-items:center;gap:20px;padding:24px 0;font-size:1.35rem;font-weight:600;list-style:none;display:flex}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary svg{width:22px;height:22px;color:var(--brass-500);transition:transform .25s var(--ease);flex-shrink:0}.faq-item[open] summary svg{transform:rotate(45deg)}.faq-item p{color:var(--muted);max-width:64ch;margin:-6px 0 24px}@media (width<=880px){.faq-grid{grid-template-columns:1fr}}.contact-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:clamp(40px,7vw,96px);display:grid}.contact-aside{gap:18px;margin:32px 0 36px;display:grid}.contact-aside-item{align-items:center;gap:16px;display:flex}.contact-aside-item svg{background:var(--brass-100);width:44px;height:44px;color:var(--brass-600);border-radius:50%;flex-shrink:0;padding:11px}.contact-aside-item strong{font-size:.95rem;display:block}.contact-aside-item span{color:var(--muted);font-size:.9rem}.contact-card{background:var(--ivory);border:1px solid var(--line);border-radius:var(--radius-lg);padding:clamp(24px,4vw,44px)}.contact-form{gap:24px;display:grid}.contact-form .btn{justify-self:start}.contact-success{text-align:center;padding:40px 12px}.contact-success>svg{width:56px;height:56px;color:var(--success);stroke-width:1.5px;margin:0 auto 16px}.contact-success p{color:var(--muted)}@media (width<=880px){.contact-grid{grid-template-columns:1fr}}.site-footer{background:var(--navy-950);color:#f7f4eeb3;padding-top:clamp(56px,8vw,88px);font-size:.92rem}.footer-grid{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding-bottom:56px;display:grid}.footer-slogan{font-family:var(--font-serif);color:var(--brass-300);margin:24px 0 8px;font-size:1.45rem;font-style:italic}.footer-muted{color:#f7f4ee8c;max-width:36ch}.footer-contact{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.footer-contact li{align-items:center;gap:10px;display:flex}.footer-contact svg{width:16px;height:16px;color:var(--brass-300)}.footer-title{font-family:var(--font-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--ivory);margin-bottom:18px;font-size:.75rem;font-weight:600}.footer-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.site-footer a{text-decoration:none;transition:color .2s}.site-footer a:hover{color:var(--brass-300)}.footer-bottom{color:#f7f4ee73;border-top:1px solid #f7f4ee14;padding-block:28px;font-size:.82rem}.footer-bottom p{margin:0 0 6px}.footer-disclaimer{max-width:90ch}@media (width<=880px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}.page{padding:calc(var(--header-h) + clamp(40px, 6vw, 72px)) 0 clamp(72px, 10vw, 120px);min-height:80vh}.container--narrow{max-width:760px}.page-head{max-width:760px;margin-bottom:40px}.page-head h1{font-size:clamp(2.2rem,4vw,3.2rem)}.not-found{text-align:center;padding-block:60px}.not-found .lead{margin:0 auto 32px}.stepper{color:var(--muted);flex-wrap:wrap;gap:8px 32px;margin:32px 0 0;padding:0;font-size:.88rem;font-weight:500;list-style:none;display:flex}.stepper li{align-items:center;gap:10px;display:flex}.stepper span{border:1px solid var(--line-strong);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.8rem;font-weight:600;display:inline-flex}.stepper .is-current{color:var(--navy-900)}.stepper .is-current span{background:var(--navy-900);border-color:var(--navy-900);color:var(--ivory)}.stepper .is-done span{background:var(--brass-100);border-color:var(--brass-300);color:var(--brass-600)}.booking-grid{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:32px;display:grid}.booking-main{gap:16px;display:grid}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:clamp(24px,4vw,40px)}.panel-title{align-items:center;gap:10px;margin-bottom:22px;font-size:1.6rem;display:flex}.panel-title svg{width:22px;height:22px;color:var(--brass-500)}.panel-title--spaced{margin-top:40px}.panel-actions{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:32px;padding-top:24px;display:flex}.panel .alert{margin-top:20px}.day-list{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:12px;display:grid}.day-option{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);cursor:pointer;transition:all .18s var(--ease);flex-direction:column;align-items:center;padding:14px 8px 12px;display:flex}.day-option:hover:not(:disabled){border-color:var(--navy-700)}.day-option.is-selected{background:var(--navy-900);border-color:var(--navy-900);color:var(--ivory)}.day-option:disabled{opacity:.45;cursor:not-allowed;background:var(--ivory)}.day-weekday{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.72rem;font-weight:600}.day-number{font-family:var(--font-serif);font-size:2rem;font-weight:700;line-height:1.1}.day-month{text-transform:capitalize;font-size:.8rem}.day-free{color:var(--success);margin-top:6px;font-size:.7rem;font-weight:600}.day-option.is-selected .day-weekday,.day-option.is-selected .day-free{color:var(--brass-300)}.day-option:disabled .day-free{color:var(--muted)}.slot-list{grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px;display:grid}.slot-option{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--paper);cursor:pointer;transition:all .18s var(--ease);flex-direction:column;align-items:center;gap:2px;padding:16px 12px;font-size:1.15rem;font-weight:600;display:flex}.slot-option small{color:var(--success);font-size:.72rem;font-weight:500}.slot-option:hover:not(:disabled){border-color:var(--brass-500);background:var(--brass-100)}.slot-option.is-selected{border-color:var(--brass-500);background:var(--brass-500);color:var(--navy-950)}.slot-option.is-selected small{color:var(--navy-900)}.slot-option:disabled{cursor:not-allowed;background:var(--ivory);color:var(--muted);text-decoration:line-through}.slot-option:disabled small{color:var(--muted);text-decoration:none}.link-button{color:var(--navy-700);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:.9rem;font-weight:600;text-decoration:underline;display:inline-flex}.link-button svg{width:16px;height:16px}.field-hint--right{align-self:flex-end;margin-top:-4px}.booking-summary{top:calc(var(--header-h) + 24px);border-radius:var(--radius-lg);background:var(--navy-900);color:var(--ivory);padding:28px;position:sticky}.booking-summary h3{color:var(--ivory);border-bottom:1px solid #d9c29a40;padding-bottom:16px;font-size:1.5rem}.booking-summary dl{gap:18px;margin:0;display:grid}.booking-summary dt{letter-spacing:.1em;text-transform:uppercase;color:var(--brass-300);align-items:center;gap:8px;font-size:.75rem;display:flex}.booking-summary dt svg{width:14px;height:14px}.booking-summary dd{margin:4px 0 0;font-weight:500}.booking-summary .muted{color:#f7f4ee73;font-weight:400}.summary-note{color:#f7f4ee8c;border-top:1px solid #f7f4ee1a;margin:24px 0 0;padding-top:16px;font-size:.8rem}@media (width<=980px){.booking-grid{grid-template-columns:1fr}.booking-summary{order:-1;position:static}}.confirm-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow);text-align:center;padding:clamp(28px,5vw,56px)}.confirm-card .lead{margin-inline:auto}.confirm-card .eyebrow:before{display:none}.confirm-icon{background:var(--success-bg);width:72px;height:72px;color:var(--success);border-radius:50%;justify-content:center;align-items:center;margin-bottom:20px;display:inline-flex}.confirm-icon svg{width:36px;height:36px}.confirm-card h1{font-size:clamp(2rem,4vw,2.8rem)}.confirm-details{border:1px solid var(--line);border-radius:var(--radius);text-align:left;grid-template-columns:repeat(2,1fr);margin:32px 0 24px;display:grid}.confirm-details>div{padding:18px 22px}.confirm-details>div:nth-child(odd){border-right:1px solid var(--line)}.confirm-details>div:nth-child(-n+2){border-bottom:1px solid var(--line)}.confirm-details dt{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:.75rem}.confirm-details dd{margin:4px 0 0;font-weight:600}.confirm-code{color:var(--brass-600);letter-spacing:.06em;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:1.2rem}.confirm-card .alert{text-align:left;margin-bottom:28px}@media (width<=560px){.confirm-details{grid-template-columns:1fr}.confirm-details>div{border-bottom:1px solid var(--line);border-right:0!important}.confirm-details>div:last-child{border-bottom:0}}.scope-notice{border-left:3px solid var(--brass-500);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--brass-100);color:var(--ink-soft);align-items:flex-start;gap:10px;margin:4px 0 0;padding:12px 16px;font-size:.88rem;line-height:1.5;display:flex}.scope-notice svg{width:18px;height:18px;color:var(--brass-600);flex-shrink:0;margin-top:1px}.scope-notice--center{text-align:left;margin-top:20px;display:inline-flex}.admin-loading{min-height:100vh;color:var(--navy-700);place-items:center;display:grid}.login-page{background:radial-gradient(900px 500px at 80% 0%, #2a4a6b80, transparent 60%), linear-gradient(180deg, var(--navy-950), var(--navy-900));place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{border-radius:var(--radius-lg);background:var(--paper);width:100%;max-width:420px;box-shadow:var(--shadow-lg);padding:40px}.login-head{margin:32px 0 24px}.login-head h1{margin-bottom:4px;font-size:2rem}.login-head p{color:var(--muted);margin:0}.login-form{gap:18px;display:grid}.login-back{color:var(--muted);align-items:center;gap:6px;margin-top:24px;font-size:.88rem;text-decoration:none;display:inline-flex}.login-back svg{width:16px;height:16px}.login-back:hover{color:var(--navy-900)}.admin{background:#f3f1ec;min-height:100vh}.admin-bar{background:var(--navy-900);align-items:center;height:68px;display:flex}.admin-bar a{text-decoration:none}.admin-bar-inner{justify-content:space-between;align-items:center;display:flex}.admin-user{color:#f7f4eecc;align-items:center;gap:16px;font-size:.9rem;display:flex}.admin-main{padding-block:40px 80px}.admin-title{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:28px;display:flex}.admin-title h1{margin-bottom:4px;font-size:2.4rem}.admin-title p{color:var(--muted);margin:0}.stats{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:36px;display:grid}.stat{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:16px;padding:22px;display:flex}.stat>svg{background:var(--navy-900);width:44px;height:44px;color:var(--brass-300);border-radius:10px;flex-shrink:0;padding:11px}.stat span{color:var(--muted);font-size:.8rem;display:block}.stat strong{font-family:var(--font-serif);color:var(--navy-900);font-size:2rem;line-height:1.1}@media (width<=900px){.stats{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.stats{grid-template-columns:1fr}}.tabs{border-bottom:1px solid var(--line-strong);gap:4px;margin-bottom:24px;display:flex}.tabs button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:8px;margin-bottom:-1px;padding:12px 18px;font-weight:600;display:inline-flex}.tabs button.is-active{color:var(--navy-900);border-bottom-color:var(--brass-500)}.tab-count{background:var(--brass-500);min-width:22px;color:var(--navy-950);text-align:center;border-radius:999px;padding:1px 7px;font-size:.72rem}.toolbar{flex-wrap:wrap;justify-content:space-between;gap:12px;margin-bottom:20px;display:flex}.toolbar-right{gap:8px;display:flex}.toolbar .btn svg{width:16px;height:16px}.segmented{border-radius:var(--radius-sm);background:var(--paper);border:1px solid var(--line);padding:4px;display:inline-flex}.segmented button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:4px;padding:7px 16px;font-size:.88rem;font-weight:500}.segmented button.is-active{background:var(--navy-900);color:var(--ivory)}.select--sm{width:auto;min-height:38px;padding:6px 12px;font-size:.88rem}.stack{gap:10px;display:grid}.empty{text-align:center;color:var(--muted);background:var(--paper);border:1px dashed var(--line-strong);border-radius:var(--radius);padding:60px 20px}.empty svg{width:36px;height:36px;color:var(--line-strong);margin:0 auto 12px}.day-group+.day-group{margin-top:28px}.day-group-title{align-items:baseline;gap:12px;margin-bottom:12px;font-size:1.35rem;display:flex}.day-group-title span{font-family:var(--font-sans);color:var(--muted);font-size:.8rem;font-weight:500}.booking-row{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);transition:box-shadow .2s;overflow:hidden}.booking-row.is-open{box-shadow:var(--shadow);border-color:var(--line-strong)}.booking-row-head{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:150px minmax(0,1fr) auto auto 20px;align-items:center;gap:20px;width:100%;padding:16px 20px;display:grid}.booking-row-head:hover{background:#fbfaf7}.br-when strong{font-family:var(--font-serif);color:var(--navy-900);font-size:1.5rem;line-height:1;display:block}.br-when span,.br-who span{color:var(--muted);font-size:.8rem}.br-who strong{font-weight:600;display:block}.br-who span{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.br-code{color:var(--muted);font-family:ui-monospace,Consolas,monospace;font-size:.82rem}.br-chevron{width:18px;height:18px;color:var(--muted);transition:transform .2s}.booking-row.is-open .br-chevron{transform:rotate(180deg)}.booking-row-body{border-top:1px solid var(--line);background:#fcfbf8;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:32px;padding:24px 20px;display:grid}.br-info dl{grid-template-columns:repeat(2,1fr);gap:14px;margin:0 0 20px;display:grid}.br-info dt{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.br-info dd{margin:2px 0 0;font-size:.92rem}.br-info dd a{color:var(--navy-700);word-break:break-all;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.br-info dd svg{flex-shrink:0;width:14px;height:14px}.br-description h4{font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:.72rem}.br-description p{white-space:pre-wrap;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:14px 16px;font-size:.93rem}.br-manage{align-content:start;gap:14px;display:grid}.br-manage .btn{justify-self:start}.br-manage .btn svg{width:16px;height:16px}.textarea--sm{min-height:80px}.input-with-action{gap:8px;display:flex}.input-with-action .btn{min-height:48px}.status{white-space:nowrap;border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:600;display:inline-flex}.status--pendiente{background:var(--warning-bg);color:var(--warning)}.status--confirmada{background:var(--info-bg);color:var(--info)}.status--realizada{background:var(--success-bg);color:var(--success)}.status--cancelada{color:var(--muted);background:#eeeae3;text-decoration:line-through}@media (width<=820px){.booking-row-head{grid-template-columns:1fr auto;gap:8px 16px}.br-code,.br-chevron{display:none}.br-who{grid-area:2/1/auto/-1}.booking-row-body{grid-template-columns:1fr}}.message-row{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.message-head{text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:16px;width:100%;padding:16px 20px;display:grid}.message-head:hover{background:#fbfaf7}.message-dot{background:0 0;border-radius:50%;width:8px;height:8px}.message-row.is-unread .message-dot{background:var(--brass-500)}.message-row.is-unread .message-meta strong{font-weight:700}.message-meta strong{font-weight:500;display:block}.message-meta span{color:var(--muted);font-size:.82rem}.message-head time{color:var(--muted);white-space:nowrap;font-size:.8rem}.message-body{padding:4px 20px 20px 46px}.message-body p{white-space:pre-wrap;margin-bottom:16px}.message-actions{flex-wrap:wrap;gap:8px;display:flex}.message-actions svg{width:16px;height:16px}
