
/* akozmetikad.hu – foglaló arculati illesztés */
:root{--bg:#fbf7f1;--paper:#fffdf9;--paper2:#fffdf9;--ink:#2b211b;--muted:#74665d;--gold:#b77b43;--gold2:#d7ab7c;--gold-dark:#8e5e32;--line:rgba(183,123,67,.20);--line-strong:rgba(183,123,67,.35);--shadow:0 18px 46px rgba(93,65,40,.11);--shadow-soft:0 10px 30px rgba(93,65,40,.07)}
body{font-family:'DM Sans',Arial,sans-serif;background:radial-gradient(circle at 10% 0%,rgba(232,205,175,.22),transparent 30%),linear-gradient(180deg,#fbf7f1 0%,#fffdf9 44%,#f5eadf 100%)}
.booking-header{height:78px;padding:0 max(24px,calc((100vw - 1220px)/2));background:rgba(255,253,249,.96);border-bottom:1px solid rgba(189,153,118,.25);box-shadow:none}
.booking-header::after{display:none}
.booking-brand{display:flex;align-items:center;gap:10px;color:#2b211b;min-width:max-content}
.booking-brand .brand-leaf{width:42px;height:42px}.booking-brand .brand-leaf svg{width:100%;height:100%;fill:none;stroke:#b77b43;stroke-width:1.8;stroke-linecap:round}
.booking-brand strong{display:block;font-family:'Italiana','Times New Roman',serif;font-weight:400;font-size:22px;letter-spacing:.08em}.booking-brand small{display:block;text-align:center;font-size:10px;letter-spacing:.34em;margin-top:-3px;color:#8e5e32}
.back{font-family:'DM Sans',Arial,sans-serif;border:1px solid rgba(183,123,67,.25);background:#fffdf9;color:#6f594a}
.page-shell{width:min(100% - 48px,1160px);padding:36px 0 52px}
.booking-hero{grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:22px}.intro{padding:44px 46px;border-radius:28px;background:linear-gradient(125deg,#f3e7d8 0%,#fffaf3 68%,#efe1d1 100%);border:1px solid rgba(183,123,67,.20)}
.eyebrow{color:#a46b39;letter-spacing:2.3px}.intro h1{font-family:'Cormorant Garamond',Georgia,serif;font-size:60px;color:#2b211b;line-height:1.02}.intro p{font-size:14px;color:#74665d}.booking-mini-points span{border-color:rgba(183,123,67,.18);background:rgba(255,253,249,.85);color:#6f5d51}.booking-phone{color:#8e5e32;font-weight:600}
.booking-portrait-shell{padding:0;border-radius:28px;background:#ead9c7;border:1px solid rgba(183,123,67,.20)}.booking-portrait{min-height:430px;border-radius:28px;object-position:50% 25%}.booking-portrait-shell::before,.booking-portrait-shell::after{display:none}.booking-portrait-logo{display:none}.booking-portrait-shell figcaption{left:22px;bottom:18px;padding:8px 12px;border-radius:999px;background:rgba(255,253,249,.88);backdrop-filter:blur(8px);font-family:'DM Sans',Arial,sans-serif;font-size:10px;color:#8e5e32}
.booking-trust{border-color:rgba(183,123,67,.18);background:rgba(255,253,249,.88)}.booking-trust b{font-family:'Cormorant Garamond',Georgia,serif;color:#2b211b}
.booking-card{border-radius:28px;padding:42px;background:#fffdf9;border:1px solid rgba(183,123,67,.20);box-shadow:0 18px 46px rgba(93,65,40,.09)}.booking-card::before{height:2px;background:linear-gradient(90deg,transparent,#b77b43 25%,#e8cdaf 50%,#b77b43 75%,transparent)}
.step-head>span{border-color:#b77b43;color:#8e5e32;background:#fbf3e9;box-shadow:none}.step-head h2,.calendar-title-block h3,.slot-preview-head strong,.service-category>summary span,.summary strong{font-family:'Cormorant Garamond',Georgia,serif}.step-head small{color:#b77b43}
.location-choice{border-color:rgba(183,123,67,.18);background:#fffdf9}.location-choice.selected{border-color:#b77b43;background:linear-gradient(90deg,#f7ecdf,#fffaf4)}
.service-category{border-color:#eadbc9;background:#fffdf9}.service-category[open]>summary{background:#f7eee4}.service-category .service{background:#fffdf9}.service-category .service:hover{background:#fbf7f1}.service-category .service.selected{background:#f3e5d5;box-shadow:inset 4px 0 0 #b77b43}.service-category .service .price,.service-arrow{color:#8e5e32}
.calendar-card,.slot-area .slots{background:linear-gradient(180deg,#fffdf9,#fbf7f1);border-color:rgba(183,123,67,.16)}.calendar-nav{border-color:rgba(183,123,67,.3);background:#fffaf4;color:#8e5e32}.calendar-day.selected{border-color:#b77b43;background:linear-gradient(180deg,#fff5e9,#f1dfcb)}.calendar-day.selected .num{color:#8e5e32}.slot-area .helper,.slot-area .no-slots{background:linear-gradient(180deg,#fbf7f1,#f6eee5);border-color:rgba(183,123,67,.14);color:#806f62}.slot:hover,.slot.selected{background:linear-gradient(135deg,#8e5e32,#b77b43)}
.form-grid input,.form-grid textarea{border-color:rgba(183,123,67,.22);background:#fffdf9}.form-grid input:focus,.form-grid textarea:focus{border-color:#b77b43;box-shadow:0 0 0 3px rgba(183,123,67,.10)}.consent{background:#fbf3e9;border-color:rgba(183,123,67,.14)}.consent a{color:#8e5e32}.summary{background:linear-gradient(180deg,#f8eadb,#f2dfcc);border-color:rgba(183,123,67,.18)}.submit{background:linear-gradient(135deg,#8e5e32,#b77b43);border:0;letter-spacing:.02em;text-transform:none;font-size:14px}.submit::before{display:none}
.booking-unavailable{border-color:rgba(183,123,67,.2);background:#fffdf9}.fallback-primary{background:linear-gradient(135deg,#8e5e32,#b77b43)!important}.fallback-secondary{border-color:rgba(183,123,67,.3)!important;color:#8e5e32!important}
footer{background:#ead8c7;color:#725f51;padding:20px max(24px,calc((100vw - 1220px)/2));font-family:'DM Sans',Arial,sans-serif}footer::before{background:linear-gradient(90deg,transparent,#b77b43,transparent)}footer a{color:#8e5e32}
.single-location-note{display:none}
@media(max-width:900px){.page-shell{width:min(100% - 30px,760px)}.booking-portrait{min-height:360px}}
@media(max-width:680px){.booking-header{height:68px;padding:0 15px}.booking-brand .brand-leaf{width:32px;height:32px}.booking-brand strong{font-size:16px}.booking-brand small{font-size:7px;letter-spacing:.28em}.back{font-size:0;padding:8px 10px}.back::after{content:'← Vissza';font-size:10px}.page-shell{width:calc(100% - 18px);padding:22px 0 30px}.booking-hero{gap:12px}.intro{padding:28px 20px 24px;border-radius:22px}.intro h1{font-size:43px}.intro p{font-size:12px;line-height:1.7}.booking-mini-points{display:none}.booking-phone{font-size:12px}.booking-portrait-shell{border-radius:22px}.booking-portrait{min-height:280px;height:320px;border-radius:22px;object-position:50% 22%}.booking-portrait-shell figcaption{left:14px;bottom:12px}.booking-card{padding:24px 13px;border-radius:22px}.step-head h2{font-size:25px}.location-choice{padding:16px}.calendar-card{border-radius:18px}.calendar-grid{gap:5px}.calendar-day{border-radius:10px}.booking-trust{grid-template-columns:1fr 1fr}.booking-trust span{background:#fffdf9;border-color:rgba(183,123,67,.14)}footer{padding:18px 14px}}


/* V21 – mobil szétesés javítás */
body{overflow-x:hidden}
.booking-header{gap:10px}
.booking-brand{min-width:0}

@media (max-width: 900px){
  .booking-hero{
    grid-template-columns:1fr !important;
    gap:16px;
  }
  .booking-portrait-card{
    order:2;
    width:100%;
  }
  .booking-portrait-shell{
    min-height:unset;
  }
}

@media (max-width: 680px){
  .booking-header{
    gap:8px;
  }
  .booking-brand{
    max-width:calc(100% - 88px);
  }
  .booking-brand strong{
    font-size:15px;
    letter-spacing:.05em;
    white-space:nowrap;
  }
  .booking-brand small{
    white-space:nowrap;
  }
  .booking-hero{
    grid-template-columns:1fr !important;
    gap:14px;
  }
  .intro,
  .booking-portrait-shell,
  .booking-card{
    width:100%;
    max-width:100%;
    overflow:hidden;
  }
  .booking-portrait-card{
    width:100%;
  }
}
