:root{--brand-teal: #5eb8b0;--brand-teal-deep: #2f7a74;--brand-teal-soft: #e8f6f4;--brand-red: #c41e3a;--brand-red-dark: #9b1830;--ink: #1a1a1a;--muted: #5c6b6a;--cream: #fff8f6;--white: #ffffff;--font-display: "Playfair Display", Georgia, serif;--font-body: "Be Vietnam Pro", sans-serif;--radius: 12px;--shadow: 0 12px 40px rgba(47, 122, 116, .12)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--ink);background:var(--white);line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,.brand-font{font-family:var(--font-display);font-weight:700;line-height:1.2;margin:0 0 .5rem}p{margin:0 0 1rem}.container{width:min(1200px,calc(100% - 2rem));margin-inline:auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.85rem 1.4rem;border-radius:10px;border:none;font-family:var(--font-body);font-weight:700;font-size:.95rem;cursor:pointer;transition:transform .2s ease,background .2s ease,box-shadow .2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--brand-red);color:var(--white)}.btn-primary:hover{background:var(--brand-red-dark)}.btn-secondary{background:var(--white);color:var(--brand-teal-deep);border:1.5px solid var(--brand-teal-deep)}.btn-ghost{background:transparent;color:var(--ink)}.section{padding:4rem 0}.section-title{font-size:clamp(1.75rem,3vw,2.25rem);margin-bottom:.35rem}.section-sub{color:var(--muted);margin-bottom:2rem;max-width:40rem}.site-header{position:sticky;top:0;z-index:40;background:#ffffffeb;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(47,122,116,.12)}.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:72px}.nav-brand{display:flex;align-items:center;gap:.75rem;color:var(--brand-red);font-family:var(--font-display);font-weight:700;font-size:1.25rem}.nav-brand .brand-logo{width:40px;height:40px;object-fit:contain;border-radius:8px;flex-shrink:0;background:#fff}.nav-brand .logo-dot{width:40px;height:40px;border-radius:50%;background:var(--brand-red);flex-shrink:0}.nav-links{display:flex;align-items:center;gap:1.5rem;list-style:none;margin:0;padding:0;font-weight:500;font-size:.9rem}.nav-links a:hover{color:var(--brand-red)}.nav-toggle{display:none;background:none;border:none;font-size:1.5rem;cursor:pointer}.hero{position:relative;min-height:min(78vh,720px);display:flex;align-items:center;overflow:hidden;background:#3a8f88}.hero-split .hero-media{position:absolute;top:0;right:0;bottom:0;left:0}.hero-img{position:absolute;object-fit:cover}.hero-img-main{top:0;right:0;bottom:0;left:0;width:100%;height:100%;animation:kenburns 18s ease-in-out infinite alternate}.hero-img-float{display:none}.hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,#143c38c7,#2f7a748c 48%,#5eb8b059)}@keyframes kenburns{0%{transform:scale(1)}to{transform:scale(1.08)}}.hero-inner{position:relative;z-index:1;padding:4.5rem 0;max-width:40rem;color:#fff}.hero-inner h1,.hero-inner p:not(.hero-brand){color:#fff}.hero .btn-secondary{background:#ffffffeb}.hero-brand{color:#ffd9de;font-size:clamp(2.4rem,6vw,4rem);margin-bottom:.75rem;animation:rise .7s ease both;text-shadow:0 2px 18px rgba(0,0,0,.25)}.hero h1{font-size:clamp(1.6rem,3.5vw,2.2rem);font-weight:400;margin-bottom:1rem;animation:rise .8s ease .08s both}.hero p{font-size:1.05rem;margin-bottom:1.5rem;animation:rise .8s ease .16s both}.hero-cta{display:flex;flex-wrap:wrap;gap:.85rem;animation:rise .8s ease .24s both}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem}.card{background:var(--white);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.card-accent{height:8px;border-radius:4px;background:var(--brand-teal);margin-bottom:1rem}.promo-banner{background:var(--brand-teal-deep);color:var(--white);padding:2.5rem 0}.promo-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:wrap}.card-media{padding:0;overflow:hidden}.card-thumb{aspect-ratio:4 / 3;overflow:hidden}.card-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.card-media:hover .card-thumb img{transform:scale(1.06)}.card-body{padding:1.25rem 1.4rem 1.5rem}.text-link{color:var(--brand-teal-deep);font-weight:600;font-size:.9rem}.promo-with-image{position:relative;overflow:hidden}.promo-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:brightness(.45)}.promo-with-image .promo-inner{position:relative;z-index:1}.ba-compare{display:grid;gap:.75rem}.ba-compare-frame{position:relative;aspect-ratio:4 / 5;border-radius:var(--radius);overflow:hidden;-webkit-user-select:none;user-select:none;box-shadow:var(--shadow);container-type:inline-size}.ba-after,.ba-before{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;max-width:none}.ba-before-wrap{position:absolute;inset:0 auto 0 0;height:100%;overflow:hidden;border-right:3px solid #fff;box-shadow:4px 0 16px #0003}.ba-before{width:100cqw;max-width:none;height:100%;left:0;right:auto}.ba-range{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:ew-resize;z-index:3;margin:0}.ba-tag{position:absolute;top:.85rem;z-index:2;background:#00000073;color:#fff;font-size:.72rem;font-weight:600;padding:.2rem .55rem;border-radius:999px;pointer-events:none}.ba-tag-before{left:.75rem}.ba-tag-after{right:.75rem}.ba-label{margin:0;font-weight:600}.about-teaser{display:grid;grid-template-columns:1.1fr .9fr;gap:2.5rem;align-items:center}.about-teaser-media{position:relative}.about-teaser-media>img:first-child{width:100%;border-radius:16px;aspect-ratio:4 / 3;object-fit:cover;box-shadow:var(--shadow)}.about-teaser-float{position:absolute;width:42%;aspect-ratio:3 / 4;object-fit:cover;border-radius:14px;right:-6%;bottom:-10%;border:4px solid #fff;box-shadow:var(--shadow);animation:floaty 4s ease-in-out infinite}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.gallery-mosaic{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:140px;gap:.75rem}.gallery-item{margin:0;overflow:hidden;border-radius:12px}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}.gallery-item:hover img{transform:scale(1.05)}.gallery-item-1{grid-column:span 2;grid-row:span 2}.gallery-item-2,.gallery-item-3,.gallery-item-4,.gallery-item-5{grid-column:span 1;grid-row:span 1}.gallery-item-6{grid-column:span 2;grid-row:span 1}.testimonial-card{display:grid;gap:.85rem}.testimonial-avatar{width:56px;height:56px;border-radius:50%;object-fit:cover}.page-hero-media{position:relative;overflow:hidden;min-height:220px;display:flex;align-items:center;padding:3.5rem 0}.page-hero-media:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,#143c38b8,#5eb8b073);z-index:1}.page-hero-media>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.page-hero-media .container{position:relative;z-index:2;color:#fff}.page-hero-media h1,.page-hero-media p,.page-hero-media a{color:#fff}.service-img{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:10px;margin-bottom:.85rem}.blog-cover{width:100%;aspect-ratio:16 / 10;object-fit:cover;border-radius:10px;margin-bottom:.9rem}.booking-side-img{width:100%;border-radius:16px;aspect-ratio:4 / 3;object-fit:cover;margin-bottom:1rem;box-shadow:var(--shadow)}.site-footer{background:var(--brand-teal-deep);color:var(--white);padding:3rem 0 1.5rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem;margin-bottom:2rem}.footer-grid a:hover{text-decoration:underline}.sticky-cta{display:none;position:fixed;left:0;right:0;bottom:0;z-index:50;padding:.75rem;background:#fffffff5;border-top:1px solid rgba(47,122,116,.15);gap:.6rem}.sticky-cta .btn{flex:1}.page-hero{background:linear-gradient(135deg,#6fc4bc,var(--brand-teal));padding:3.5rem 0}.form-card{background:var(--white);border-radius:16px;padding:2rem;box-shadow:var(--shadow)}.form-grid{display:grid;gap:1rem}label{display:grid;gap:.4rem;font-weight:600;font-size:.85rem}input,select,textarea{width:100%;padding:.85rem 1rem;border:1px solid var(--brand-teal);border-radius:8px;font:inherit;background:var(--white)}textarea{min-height:100px;resize:vertical}.tips{background:var(--brand-teal-soft);border-radius:var(--radius);padding:1.25rem;color:var(--brand-teal-deep)}.tips li{margin-bottom:.4rem}.muted{color:var(--muted)}.bg-cream{background:var(--cream)}.bg-soft{background:var(--brand-teal-soft)}.list-rows{display:grid;gap:.85rem}.list-row{display:flex;gap:.85rem;align-items:flex-start;background:var(--white);border-radius:var(--radius);padding:1.1rem 1.25rem;box-shadow:var(--shadow)}.dot{width:12px;height:12px;border-radius:50%;background:var(--brand-red);margin-top:.4rem;flex-shrink:0}.map-frame{width:100%;min-height:320px;border:0;border-radius:var(--radius)}.alert{padding:.9rem 1rem;border-radius:8px;background:var(--brand-teal-soft);color:var(--brand-teal-deep);font-weight:500}.alert-error{background:#fde8eb;color:var(--brand-red-dark)}@media (max-width: 900px){.nav-links,.nav .btn{display:none}.nav.open .nav-links{display:flex;flex-direction:column;position:absolute;top:72px;left:0;right:0;background:var(--white);padding:1rem 1.25rem 1.25rem;border-bottom:1px solid rgba(47,122,116,.12);align-items:flex-start}.nav-toggle{display:block}.grid-3,.footer-grid,.about-teaser{grid-template-columns:1fr}.about-teaser-float{display:none}.gallery-mosaic{grid-template-columns:repeat(2,1fr);grid-auto-rows:120px}.gallery-item-1,.gallery-item-6{grid-column:span 2}.sticky-cta{display:flex}body{padding-bottom:76px}.section{padding:2.75rem 0}.hero-inner{max-width:100%}}:root{--admin-bg: #f3f6f5;--admin-panel: #ffffff;--admin-ink: #1a1a1a;--admin-muted: #5c6b6a;--admin-teal: #2f7a74;--admin-teal-soft: #e8f6f4;--admin-red: #c41e3a;--admin-border: #d7e3e1;--admin-sidebar: #163d3a;--admin-sidebar-2: #1f524e;--status-pending: #e6a800;--status-confirmed: #1f9d55;--status-completed: #6b7280;--status-cancelled: #c41e3a;--status-noshow: #9b1830}.admin-app{min-height:100vh;background:var(--admin-bg);color:var(--admin-ink);font-family:Be Vietnam Pro,sans-serif}.admin-auth-wrap{min-height:100vh;display:grid;place-items:center;padding:1.5rem;background:linear-gradient(135deg,#163d3ae0,#2f7a74bf),url(/images/salon-interior.jpg) center/cover}.admin-auth-card{width:min(420px,100%);background:#fff;border-radius:16px;padding:2rem;box-shadow:0 20px 50px #0003}.admin-auth-brand{display:flex;align-items:center;gap:.75rem;margin-bottom:1.5rem}.admin-auth-brand .brand-logo{width:40px;height:40px;object-fit:contain;border-radius:8px;flex-shrink:0;background:#fff}.admin-auth-brand .dot{width:40px;height:40px;border-radius:50%;background:var(--admin-red)}.admin-auth-brand h1{font-family:Playfair Display,Georgia,serif;font-size:1.35rem;margin:0;color:var(--admin-red)}.admin-field{display:grid;gap:.4rem;margin-bottom:1rem;font-weight:600;font-size:.85rem}.admin-field input,.admin-field select,.admin-field textarea{width:100%;padding:.8rem .95rem;border:1px solid var(--admin-border);border-radius:10px;font:inherit}.admin-password-wrap{position:relative}.admin-password-wrap button{position:absolute;right:.6rem;top:50%;transform:translateY(-50%);border:none;background:none;cursor:pointer;color:var(--admin-muted)}.admin-check{display:flex;align-items:center;gap:.5rem;font-weight:500;font-size:.9rem}.admin-btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border:none;border-radius:10px;padding:.8rem 1.1rem;font:inherit;font-weight:700;cursor:pointer}.admin-btn-primary{background:var(--admin-red);color:#fff;width:100%}.admin-btn-teal{background:var(--admin-teal);color:#fff}.admin-btn-ghost{background:transparent;border:1px solid var(--admin-border);color:var(--admin-ink)}.admin-link{color:var(--admin-teal);font-weight:600;font-size:.9rem}.admin-alert{padding:.75rem .9rem;border-radius:8px;background:#fde8eb;color:var(--admin-red);margin-bottom:1rem;font-size:.9rem}.admin-alert-ok{background:var(--admin-teal-soft);color:var(--admin-teal)}.admin-strength{height:6px;border-radius:999px;background:#eee;overflow:hidden;margin-top:.35rem}.admin-strength>span{display:block;height:100%;transition:width .2s ease}.admin-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.admin-shell.collapsed{grid-template-columns:78px 1fr}.admin-sidebar{background:linear-gradient(180deg,var(--admin-sidebar),var(--admin-sidebar-2));color:#fff;padding:1rem .75rem;position:sticky;top:0;height:100vh;overflow:auto}.admin-side-brand{display:flex;align-items:center;gap:.65rem;padding:.5rem .65rem 1rem}.admin-side-brand .brand-logo{width:34px;height:34px;object-fit:contain;border-radius:8px;flex-shrink:0;background:#fff}.admin-side-brand .dot{width:34px;height:34px;border-radius:50%;background:var(--admin-red);flex-shrink:0}.admin-nav a{display:flex;align-items:center;gap:.7rem;padding:.7rem .8rem;border-radius:10px;color:#ffffffdb;text-decoration:none;font-weight:500;font-size:.92rem;margin-bottom:.2rem}.admin-nav a.active,.admin-nav a:hover{background:#ffffff1f;color:#fff}.admin-main{display:flex;flex-direction:column;min-width:0}.admin-topbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1.25rem;background:#fff;border-bottom:1px solid var(--admin-border);position:sticky;top:0;z-index:10}.admin-content{padding:1.25rem}.admin-page-title{font-family:Playfair Display,Georgia,serif;font-size:1.6rem;margin:0 0 .35rem}.admin-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:.9rem;margin:1rem 0 1.25rem}.admin-stat{background:#fff;border-radius:14px;padding:1rem 1.1rem;border:1px solid var(--admin-border)}.admin-stat strong{display:block;font-size:1.6rem;margin-top:.25rem}.admin-panel{background:#fff;border:1px solid var(--admin-border);border-radius:14px;padding:1rem}.admin-toolbar{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.9rem;align-items:center}.admin-toolbar input,.admin-toolbar select{padding:.55rem .7rem;border:1px solid var(--admin-border);border-radius:8px;font:inherit}.admin-table-wrap{overflow:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th,.admin-table td{padding:.7rem .55rem;border-bottom:1px solid var(--admin-border);text-align:left;white-space:nowrap}.admin-table th{color:var(--admin-muted);font-weight:600;font-size:.8rem}.badge{display:inline-flex;padding:.2rem .55rem;border-radius:999px;font-size:.75rem;font-weight:700;color:#fff}.badge-pending{background:var(--status-pending)}.badge-confirmed{background:var(--status-confirmed)}.badge-completed{background:var(--status-completed)}.badge-cancelled{background:var(--status-cancelled)}.badge-no_show{background:var(--status-noshow)}.admin-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:grid;place-items:center;z-index:50;padding:1rem}.admin-modal{width:min(560px,100%);background:#fff;border-radius:14px;padding:1.25rem;max-height:90vh;overflow:auto}.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:.4rem}.calendar-cell{min-height:90px;border:1px solid var(--admin-border);border-radius:8px;padding:.35rem;background:#fafcfa;font-size:.75rem}.calendar-event{margin-top:.25rem;padding:.2rem .3rem;border-radius:4px;color:#fff;cursor:grab}.toast-stack{position:fixed;right:1rem;bottom:1rem;z-index:80;display:grid;gap:.5rem}.toast{background:var(--admin-sidebar);color:#fff;padding:.8rem 1rem;border-radius:10px;box-shadow:0 10px 30px #0003;min-width:240px}@media (max-width: 1100px){.admin-cards{grid-template-columns:repeat(2,1fr)}.admin-shell,.admin-shell.collapsed{grid-template-columns:1fr}.admin-sidebar{position:fixed;inset:0 auto 0 0;width:min(280px,86vw);transform:translate(-105%);transition:transform .2s ease;z-index:40}.admin-sidebar.open{transform:translate(0)}}
