/* Yoga Foto Station appointment page — isolated styles to avoid collisions with the main site */
.db-page{--db-gold:#e0bd45;--db-gold-bright:#f5d35b;--db-bg:#0b0b0b;--db-card:#171717;--db-line:rgba(255,255,255,.12);--db-muted:#aaa;background:var(--db-bg);color:#f7f2e7;padding:142px clamp(14px,4vw,54px) 64px;font-family:'Lora',Georgia,serif;min-height:70vh;position:relative;z-index:1;box-sizing:border-box}
.db-page *{box-sizing:border-box}.db-hero{text-align:center;display:block!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;margin:0 0 25px!important;position:relative!important}.db-brandline{font-size:.72rem;letter-spacing:.28em;color:var(--db-gold);font-weight:700}.db-hero h1{font-family:'Abril Fatface',Georgia,serif;color:var(--db-gold);font-size:clamp(2rem,4vw,3rem);line-height:1.15;margin:9px 0 12px}.db-hero p{color:#bdb8ad;margin:0;font-size:.98rem}
.db-legend{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:10px 22px;margin:22px 0 25px}.db-legend span{display:inline-flex;align-items:center;gap:7px;color:#e7e1d4;font-size:.82rem}.db-legend span: first-letter{font-size:1rem}
.db-layout{width:min(1160px,100%);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);gap:22px;align-items:start}.db-card{min-width:0;background:linear-gradient(145deg,#191919,#141414);border:1px solid #343434;border-radius:20px;padding:22px;box-shadow:0 18px 48px #0005}.db-card h2{font-family:'Abril Fatface',Georgia,serif;color:var(--db-gold);font-size:1.35rem;line-height:1.25;margin:0 0 18px}.db-monthbar{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:12px;margin-bottom:18px}.db-monthbar h2{text-align:center;margin:0;font-size:clamp(1.15rem,2vw,1.55rem);white-space:nowrap}.db-month-arrow{width:42px;height:42px;display:grid;place-items:center;text-decoration:none;background:linear-gradient(135deg,#f4d45b,#c99f22);color:#17130a;border-radius:12px;font:700 1.8rem Arial,sans-serif;box-shadow:0 7px 18px #d4af3720;transition:transform .18s,filter .18s}.db-month-arrow:hover{transform:translateY(-2px);filter:brightness(1.08)}
.db-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.db-weekday{text-align:center;color:#a9a49a;font-size:.78rem;font-weight:600;padding:7px 0}.db-empty{min-width:0}.db-day{appearance:none;width:100%;min-width:0;min-height:74px;padding:7px 2px;border:1px solid #2f8054;border-radius:12px;background:#174c33;color:#eafff0;font:700 1rem 'Lora',Georgia,serif;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;transition:transform .16s,box-shadow .16s,background .16s;position:relative}.db-day small{font:500 .59rem Arial,sans-serif;opacity:.86;line-height:1.15}.db-day.available{background:#1b5a3a;border-color:#2e8958;color:#e8fff0}.db-day.partial{background:#3d2b62;border-color:#7757b5;color:#e9ddff;box-shadow:inset 0 -3px 0 #8b65d4}.db-day.full{background:#5a491e;border-color:#9a7a2a;color:#ffe5a0;cursor:not-allowed}.db-day.busy{background:#54272c;border-color:#93414a;color:#ffc1c5;cursor:not-allowed}.db-day.past{background:#292929!important;border-color:#3a3a3a!important;color:#777!important;opacity:.65;cursor:not-allowed}.db-day:disabled{cursor:not-allowed;transform:none;box-shadow:none}.db-day:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 9px 20px #0006;filter:brightness(1.12)}.db-day.selected{outline:3px solid var(--db-gold-bright);outline-offset:2px;background:#6a571d;color:#fff3bd;border-color:var(--db-gold-bright)}
.db-selected-date{padding:13px 14px;background:#211e14;border:1px solid #51421d;border-radius:12px;color:#f0d36a;line-height:1.5;margin:0 0 18px}.db-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 12px}.db-form label{min-width:0;display:flex;flex-direction:column;gap:7px;color:#e7e0d0;font-size:.82rem;font-weight:600}.db-form input,.db-form select,.db-form textarea{display:block;width:100%;min-width:0;max-width:100%;padding:12px 13px;border:1px solid #414141;border-radius:10px;background:#0c0c0c;color:#fff;font:500 .88rem 'Lora',Georgia,serif;outline:none}.db-form input:focus,.db-form select:focus,.db-form textarea:focus{border-color:var(--db-gold);box-shadow:0 0 0 3px #d4af3720}.db-form input[type=date]{color-scheme:dark}.db-form textarea{resize:vertical;min-height:94px}.db-wide{grid-column:1/-1}.db-submit{width:100%;border:0;border-radius:11px;padding:14px 18px;background:linear-gradient(135deg,#f5d35b,#d0a72a);color:#15120a;font:700 .95rem 'Lora',Georgia,serif;cursor:pointer;box-shadow:0 8px 22px #d4af3720;transition:transform .18s,box-shadow .18s}.db-submit:hover{transform:translateY(-2px);box-shadow:0 12px 28px #d4af3740}.db-submit:disabled{opacity:.6;cursor:wait;transform:none}#result{font-size:.88rem;line-height:1.5;padding-top:4px}#result.ok{color:#77e5a3}#result.bad{color:#ff9b9b}
/* Header spacing: only common site-header/navigation selectors are adjusted; booking content remains isolated. */
@media(min-width:1000px){body>header:not(.db-hero),body>.site-header,body>.main-header,body>.navbar,body>.header{position:relative;z-index:30}body>.site-header .container,body>.main-header .container,body>.header .container,body>.navbar .container,body header .nav-container,body header .header-container{max-width:1450px;margin-inline:auto}body header nav,body .nav-menu,body .nav-links,body .navbar-nav{gap:clamp(8px,1vw,18px)}body header nav a,body .nav-menu a,body .nav-links a,body .navbar-nav a{white-space:nowrap}}
@media(max-width:900px){.db-page{padding:116px 14px 44px}.db-layout{grid-template-columns:minmax(0,1fr);gap:16px}.db-card{padding:18px}.db-day{min-height:62px}.db-legend{justify-content:flex-start;gap:10px 15px}.db-legend span{font-size:.76rem}}
@media(max-width:520px){.db-page{padding:108px 11px 38px}.db-hero h1{font-size:2rem}.db-card{padding:13px;border-radius:15px}.db-monthbar{grid-template-columns:38px minmax(0,1fr) 38px;gap:7px}.db-month-arrow{width:37px;height:37px;border-radius:10px}.db-calendar{gap:4px}.db-weekday{font-size:.68rem;padding:5px 0}.db-day{min-height:49px;border-radius:8px;font-size:.86rem;padding:4px 0;gap:3px}.db-day small{font-size:.48rem}.db-form{grid-template-columns:minmax(0,1fr)}.db-wide{grid-column:auto}.db-form label{font-size:.84rem}.db-form input,.db-form select,.db-form textarea{font-size:16px;padding:12px}.db-legend{gap:9px 12px}.db-legend span{font-size:.7rem}}
