/* Kával — Espresso / Cappuccino / Latte. Shared public and CRM theme. */
:root{--ink:#34271f;--muted:#746252;--espresso:#493124;--coffee:#694633;--caramel:#9b714d;--latte:#efe4d4;--milk:#faf6ef;--paper:#fffdf9;--line:#e2d3c0;--shadow:0 18px 50px #4931240c;color:var(--ink);background:var(--milk);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
body{background:var(--milk);color:var(--ink)}
.site{background:radial-gradient(ellipse at 90% 0%,#ead9c14d,transparent 45%),var(--milk)}
.top{background:#fffdf9f5;border-bottom:1px solid var(--line);height:108px;padding-inline:max(4vw,24px)}
.brand-logo{mix-blend-mode:multiply;max-width:100%;object-fit:contain}
.site-menu{gap:10px}
.site-menu a.nav-link,.site-menu a.nav-button{color:var(--coffee);background:var(--paper);border:1px solid #cdb79b;border-radius:10px;min-height:46px;padding:12px 18px;display:inline-flex;justify-content:center;align-items:center;font-size:13px;font-weight:650;letter-spacing:.01em;box-shadow:0 2px 2px #49312405;transition:background .18s,border-color .18s,transform .18s}
.site-menu a[href="#idopontfoglalas"]{color:var(--paper);background:var(--coffee);border-color:var(--coffee);box-shadow:0 5px 14px #49312416}
.site-menu a.nav-link:hover,.site-menu a.nav-button:hover{color:var(--espresso);background:var(--latte);border-color:var(--caramel);text-decoration:none;transform:translateY(-1px)}
.site-menu a[href="#idopontfoglalas"]:hover{color:var(--paper);background:var(--espresso)}
.club-hero{background:radial-gradient(ellipse at 85% 20%,#fffdf9 0,transparent 55%),linear-gradient(120deg,#e8d8c1,var(--milk));border-bottom:1px solid var(--line)}
.club-hero-inner{padding-top:65px;padding-bottom:46px;gap:34px 56px}
.club-hero h1,.intro h2,.works-heading h2,.custom-page-module h2,body.service-page h1,body.service-page h2,.seo-info h2{font-family:Georgia,"Times New Roman",serif;letter-spacing:-.035em;font-weight:400;line-height:1.12}
.club-hero h1{font-size:clamp(40px,5.4vw,66px);max-width:620px;margin:22px 0}
.club-hero h1 em{color:var(--coffee)}
.club-hero-copy>p{font-size:16px;line-height:1.85;color:var(--muted)}
.club-eyebrow,.eyebrow,.overline{color:var(--coffee);letter-spacing:.14em;font-weight:700}
.club-member-box{background:var(--paper);border:1px solid var(--line);border-radius:22px;padding:30px;box-shadow:var(--shadow)}
.club-member-box h2{font-family:Georgia,"Times New Roman",serif;font-size:29px;font-weight:400;letter-spacing:-.025em}
.club-code-row input,.club-phone-input{background:var(--milk);border-color:#cdb79b;min-height:48px;border-radius:10px;font-size:16px}
.club-code-row button{background:var(--coffee);color:var(--paper);min-height:48px;box-shadow:0 4px 10px #49312414}
.club-code-row button:hover{background:var(--espresso)}
.club-book-link,.works-book,.about-phone,.club-confirm a,.success a{background:var(--coffee);color:var(--paper);border:1px solid var(--coffee);border-radius:11px;min-height:48px;padding:13px 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;font-weight:650;text-decoration:none;box-shadow:0 5px 16px #49312412;transition:background .18s,transform .18s}
.club-book-link:hover,.works-book:hover,.about-phone:hover,.club-confirm a:hover,.success a:hover{background:var(--espresso);color:var(--paper);text-decoration:none;transform:translateY(-1px)}
.club-tiers{gap:16px;margin-top:10px}
.club-tier{background:var(--espresso);color:var(--paper);border:1px solid #493124;border-radius:18px;padding:25px;box-shadow:0 8px 20px #49312407}
.club-tier h3{font-family:Georgia,"Times New Roman",serif;font-size:29px;font-weight:400;letter-spacing:-.02em}
.club-tier p,.club-tier .tier-number{color:#e9d9c3}.club-tier .tier-threshold{color:var(--paper)}
.club-tier.tier-1{background:#f0e3d0;color:var(--ink);border-color:#ddc5a6}
.club-tier.tier-2{background:#fbf5e9;color:var(--ink);border-color:#ddc5a6}
.club-tier.tier-1 p,.club-tier.tier-2 p,.club-tier.tier-1 .tier-number,.club-tier.tier-2 .tier-number{color:#715a44}
.club-tier.tier-1 .tier-threshold,.club-tier.tier-2 .tier-threshold{color:var(--ink)}
.club-rules{color:#715d4b}
.shell{padding-block:64px 42px;gap:55px}.intro h2{font-size:clamp(36px,4vw,51px)}
.booking{background:var(--paper);border-color:var(--line);border-radius:24px;box-shadow:0 20px 60px #4931240d}
.booking-head{background:#fffdf9}.booking h2{font-weight:650;letter-spacing:-.035em}
.service-card,.package-card{background:var(--milk);border-color:var(--line);border-radius:14px}
.service-card.selected,.package-card.selected,.date-card.selected,.time-grid button.selected{background:#e8d5ba;border-color:var(--coffee);box-shadow:inset 0 0 0 1px var(--coffee)}
.service-card:hover,.package-card:hover{border-color:var(--caramel)}
.service-icon{background:var(--latte);color:var(--coffee)}
.primary,button.primary,.club-code-row button{background:var(--coffee);color:var(--paper);border:1px solid var(--coffee);min-height:48px;border-radius:10px;padding:13px 21px;box-shadow:0 4px 12px #49312412}
.primary:hover,button.primary:hover{background:var(--espresso)}
.secondary,.back,.summary button,.item-remove{color:var(--coffee);background:var(--paper);border:1px solid #cdb79b;border-radius:10px;min-height:44px;padding:10px 16px;text-decoration:none;display:inline-flex;justify-content:center;align-items:center;font-weight:650}
.secondary:hover,.back:hover,.summary button:hover,.item-remove:hover{background:var(--latte);border-color:var(--coffee)}
.primary:disabled,.secondary:disabled,.back:disabled,.club-code-row button:disabled{background:#e6dacc;color:#786b5e;border-color:#dacbb8;box-shadow:none;cursor:not-allowed}
.fields input,.fields textarea,.detail select,.club-choice input:not([type=checkbox]){background:var(--paper);border-color:#cdb79b;border-radius:10px;font-size:16px;min-height:46px}
input[type=checkbox],input[type=range],progress{accent-color:var(--coffee)}
.progress span{background:var(--caramel)}.summary,.planned-summary,.club-choice,.booking-items{background:#f3eadd;border:1px solid var(--line)}
.item-quantity button{min-width:34px;min-height:34px;border-color:#cdb79b;color:var(--coffee);background:var(--paper);border-radius:8px}
.date-nav button{width:40px;height:40px;border-color:#cdb79b;color:var(--coffee)}
.date-card,.time-grid button{color:var(--ink);background:var(--paper);border-color:var(--line)}
.works-section{background:var(--paper);border-color:var(--line);padding-block:70px}
.works-heading h2{font-size:clamp(36px,4vw,50px)}.works-book{white-space:normal;flex-shrink:0}
.work-card{border-color:var(--line);box-shadow:var(--shadow)}.works-empty{background:linear-gradient(135deg,#f4eadc,#faf6ef);border-color:#d5bea0}
.custom-page-module{background:var(--paper);border-color:var(--line)}
.about-section{background:linear-gradient(125deg,#eaddc9,var(--milk) 75%)}
.about-contact{background:var(--espresso);box-shadow:0 18px 40px #49312418;border:1px solid #6e4c35}
.about-section .about-phone{font-family:Georgia,"Times New Roman",serif;background:#fcf5e8;color:var(--espresso);border-color:#fcf5e8;font-size:clamp(25px,4.5vw,43px);padding:14px 24px;letter-spacing:-.02em;max-width:100%}
.about-section .about-phone:hover{background:#ead8bd;color:var(--espresso)}
.about-portrait-placeholder{color:#9b714d;background:linear-gradient(140deg,#e2d3c0,#efe4d4)}
.about-portrait{background:var(--latte)}
.back-to-top{background:var(--coffee);box-shadow:0 6px 24px #49312425}.back-to-top:hover{background:var(--espresso)}
.membership-dialog,.legal-dialog{background:var(--paper);color:var(--ink);border-color:var(--line);box-shadow:0 20px 80px #49312430}
.membership-dialog::backdrop,.legal-dialog::backdrop{background:#34271f66}
.membership-card header button,.legal-dialog header button{background:var(--latte);color:var(--coffee)}
:is(a,button,input,select,textarea):focus-visible{outline:3px solid #9b714d;outline-offset:4px}
.legal-links a,.booking-legal-links a{color:var(--coffee);text-decoration:underline}
.site>footer{color:var(--muted);border-color:var(--line)}
.seo-info{background:#f1e6d7;color:var(--ink);border:1px solid var(--line);padding:36px;box-shadow:none}
.seo-info h2{font-size:29px}.seo-info a{color:var(--coffee)}
.seo-info nav a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 18px;border:1px solid #cdb79b;border-radius:10px;background:var(--paper);font-weight:600;text-decoration:none}
.seo-info nav a:hover{background:#e7d6bd}.seo-info details{border-bottom:1px solid #ddcbb3}
body.service-page{color:var(--ink);background:var(--milk)}
body.service-page header,body.service-page footer{background:var(--espresso)}
body.service-page h1{font-size:clamp(36px,5vw,58px)}
body.service-page h2{font-size:29px}
body.service-page article{border-color:var(--line);padding:24px 0}
body.service-page a{color:var(--coffee)}
body.service-page header a,body.service-page footer a{color:var(--paper)}
body.service-page nav a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #bca68e;border-radius:9px;text-decoration:none}
body.service-page nav a:hover{background:#ffffff15}
body.service-page main nav a{background:var(--paper);border-color:#cdb79b}body.service-page main nav a:hover{background:var(--latte)}
body.service-page a.cta{background:var(--coffee);color:var(--paper);border:1px solid var(--coffee);border-radius:10px;min-height:48px;padding:12px 21px}
body.service-page a.cta:hover{background:var(--espresso)}
.notification-panel button{background:var(--coffee);color:var(--paper);border:1px solid var(--coffee);border-radius:9px;min-height:44px;padding:10px 18px;margin:5px 6px 5px 0;font-weight:650}
.notification-panel button:disabled{opacity:.6;cursor:wait}
@media(min-width:1000px){.site-menu a.nav-link{padding-inline:20px}.club-hero-copy{padding-top:12px}}
@media(max-width:900px){.shell{gap:30px;padding-top:40px}.club-hero-inner{padding-top:40px;gap:26px}.site-menu{gap:7px}.site-menu a.nav-link{font-size:12px;padding:11px 12px}.top{padding-inline:24px}.brand-logo{width:210px}}
@media(max-width:760px){.top{height:86px;min-height:86px;padding-inline:18px}.brand-logo{width:180px;height:80px}.menu-toggle{color:var(--coffee);background:var(--latte);border:1px solid #d5bea0}.site-menu{background:var(--paper);border-color:var(--line);padding:15px 18px 20px;gap:10px;box-shadow:0 18px 28px #49312416}.site-menu a.nav-link{font-size:15px;padding:13px 18px;min-height:48px}.about-section{padding:44px 20px}.seo-info{margin:20px 15px;padding:25px 20px}.seo-info nav{gap:10px}.seo-info nav a{width:100%}}
@media(max-width:570px){.club-hero-inner{padding:32px 18px}.club-hero h1{font-size:43px}.club-hero-copy>p{font-size:15px}.club-member-box{padding:24px 20px}.club-tiers{gap:12px}.club-tier{padding:20px 16px;grid-template-columns:115px 1fr}.club-tier h3{font-size:24px}.club-tier p{font-size:12px}.club-book-link{width:100%;text-align:center;gap:8px;font-size:13px}.shell{padding:38px 15px}.intro h2{font-size:37px}.works-section{padding:44px 20px}.works-book{width:100%}.actions{gap:8px}.primary,.secondary,.back{padding-inline:16px}.summary{flex-wrap:wrap}.about-section .about-phone{font-size:clamp(23px,6.8vw,34px);padding:13px 16px}.about-section .about-contact{padding:26px 16px}.site>footer{width:calc(100% - 30px)}body.service-page header,body.service-page footer{padding:18px}body.service-page nav{gap:10px}body.service-page header nav a{flex:1 1 130px;font-size:14px}body.service-page main{padding:34px 20px}body.service-page h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}.site-menu a:hover,.club-book-link:hover,.works-book:hover,.about-phone:hover{transform:none}}
