@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Syne:wght@400;500;600;700;800&display=swap";:root{--bg-primary:#09090b;--bg-secondary:#121214;--bg-card:#18181b;--bg-card-hover:#27272a;--text-primary:#fff;--text-secondary:#a1a1aa;--text-muted:#71717a;--border-subtle:#27272a;--border-focus:#52525b;--accent-white:#fff;--accent-silver:#d4d4d8;--font-sans:"Plus Jakarta Sans", system-ui, sans-serif;--font-display:"Syne", system-ui, sans-serif;--header-height:4.25rem;--ticker-height:2.25rem;--top-offset:calc(var(--header-height) + var(--ticker-height))}@media (width>=1024px){:root{--header-height:4.75rem;--ticker-height:2.5rem}}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.02em;font-weight:700;line-height:1.2}a{color:inherit;text-decoration:none}ul{list-style:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img,video,iframe{filter:none;max-width:100%}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1rem}@media (width>=640px){.container{padding:0 1.5rem}}@media (width>=1024px){.container{padding:0 2rem}}.section-padding{padding:3.5rem 0}@media (width>=768px){.section-padding{padding:5rem 0}}@media (width>=1200px){.section-padding{padding:6.5rem 0}}.text-gradient{background:linear-gradient(135deg,#fff 0%,#a1a1aa 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.hero-title{letter-spacing:-.03em;font-size:clamp(2.2rem,6vw,3.8rem);font-weight:800;line-height:1.15}.page-title{letter-spacing:-.02em;font-size:clamp(2rem,5vw,3.2rem);font-weight:800;line-height:1.2}.section-title{letter-spacing:-.02em;font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:700;line-height:1.25}.tagline{font-family:var(--font-display);color:var(--text-secondary);font-style:italic}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1.5rem;display:grid}.grid-auto-fill{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:1.5rem;display:grid}@media (width>=768px){.grid-auto-fit,.grid-auto-fill{gap:2rem}}.btn{text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;touch-action:manipulation;border-radius:9999px;justify-content:center;align-items:center;gap:.5rem;min-height:44px;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--accent-white);color:var(--bg-primary);box-shadow:0 4px 14px #ffffff1a}.btn-primary:hover{background-color:var(--accent-silver);transform:translateY(-1px)}.btn-outline{color:var(--text-primary);border:1px solid var(--border-subtle);background-color:#0000}.btn-outline:hover{background-color:var(--bg-card);border-color:var(--border-focus)}.card{background-color:var(--bg-card);border:1px solid var(--border-subtle);border-radius:1rem;padding:1.25rem;transition:all .3s}@media (width>=768px){.card{padding:1.75rem}}.card:hover{border-color:var(--border-focus);background-color:var(--bg-card-hover)}input,textarea,select{background-color:var(--bg-secondary);border:1px solid var(--border-subtle);width:100%;color:var(--text-primary);appearance:none;border-radius:.5rem;padding:.75rem 1rem;font-family:inherit;font-size:1rem;transition:border-color .2s}input:focus,textarea:focus,select:focus{border-color:var(--text-secondary);outline:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-subtle);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-focus)}.app-layout{flex-direction:column;min-height:100vh;display:flex}.main-content{padding-top:var(--top-offset);flex:1}.hero-section{min-height:calc(100svh - var(--top-offset));align-items:center;padding:2.5rem 0;display:flex;position:relative;overflow:hidden}@media (width>=1024px){.hero-section{min-height:80vh;padding:4rem 0}}.hero-bg{z-index:0;background-image:url(/hero-bg.jpg);background-position:50% 30%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero-overlay{z-index:1;background:linear-gradient(#09090beb 0%,#09090bcc 50%,#09090bf5 100%);position:absolute;inset:0}@media (width>=768px){.hero-overlay{background:linear-gradient(110deg,#09090bf2 0%,#09090bd1 55%,#09090b73 100%)}}.hero-container{z-index:2;flex-direction:column;align-items:flex-start;max-width:680px;display:flex;position:relative}.hero-heading{font-family:var(--font-display);letter-spacing:-.025em;text-transform:uppercase;word-break:break-word;margin-bottom:.85rem;font-size:clamp(2.1rem,7.5vw,4.25rem);font-weight:800;line-height:1.08}.hero-tagline{color:#ffffffd9;margin-bottom:1.75rem;font-size:clamp(1rem,2.8vw,1.25rem);font-style:italic;line-height:1.5}.hero-booking-card{-webkit-backdrop-filter:blur(14px);background:#18181be0;border:1px solid #ffffff1f;border-radius:1rem;width:100%;max-width:480px;margin-bottom:1.25rem;padding:1.15rem;box-shadow:0 12px 32px #00000073}.hero-branch-select-wrap{margin-bottom:.85rem}.hero-select-label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-secondary);align-items:center;gap:.4rem;margin-bottom:.4rem;font-size:.78rem;font-weight:600;display:flex}.hero-branch-select{background:var(--bg-primary);border:1px solid var(--border-subtle);color:#fff;border-radius:.5rem;width:100%;padding:.65rem .85rem;font-size:.9rem}.hero-actions{grid-template-columns:1fr 1fr;gap:.65rem;display:grid}@media (width<=380px){.hero-actions{grid-template-columns:1fr}}.hero-btn-main{justify-content:center;width:100%;padding:.75rem 1rem;font-size:.85rem}.hero-btn-sub{background-color:#ffffff0a;justify-content:center;width:100%;padding:.75rem 1rem;font-size:.85rem}.hero-trust-badge{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.5rem;font-size:.82rem;display:flex}.hero-stars{color:#fff;align-items:center;gap:.3rem;display:inline-flex}.hero-trust-divider{color:var(--text-muted)}.section-header{text-align:center;max-width:620px;margin:0 auto 2.25rem}@media (width>=768px){.section-header{margin-bottom:3.25rem}}.section-header-split{flex-direction:column;gap:1rem;margin-bottom:1.75rem;display:flex}@media (width>=640px){.section-header-split{flex-direction:row;justify-content:space-between;align-items:flex-end;margin-bottom:2.25rem}}.section-subtitle{text-transform:uppercase;letter-spacing:.15em;color:var(--accent-silver);margin-bottom:.35rem;font-size:.75rem;font-weight:700;display:block}.section-desc{color:var(--text-secondary);margin-top:.5rem;font-size:.92rem;line-height:1.55}.services-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}@media (width>=640px){.services-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (width>=1024px){.services-grid{grid-template-columns:repeat(4,1fr)}}.service-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:1rem;flex-direction:column;transition:transform .25s,border-color .25s;display:flex;overflow:hidden}.service-card:hover{border-color:var(--border-focus)}.service-image-wrap{width:100%;height:200px;position:relative;overflow:hidden}.service-img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.service-card:hover .service-img{transform:scale(1.05)}.service-time-badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#fff;background:#000000bf;border:1px solid #ffffff26;border-radius:9999px;padding:.25rem .55rem;font-size:.72rem;font-weight:600;position:absolute;top:.65rem;right:.65rem}.service-content{flex-direction:column;flex-grow:1;justify-content:space-between;padding:1.25rem;display:flex}.service-header-row{justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.4rem;display:flex}.service-name{font-size:1.15rem;font-weight:700}.service-price{color:var(--text-primary);white-space:nowrap;font-size:1.1rem;font-weight:800}.service-desc{color:var(--text-secondary);margin-bottom:1.25rem;font-size:.85rem;line-height:1.5}.service-book-btn{justify-content:center;width:100%;padding:.65rem;font-size:.8rem}.services-cta-row{text-align:center;margin-top:2.5rem}.studios-section{background-color:var(--bg-secondary);padding:3.5rem 0}@media (width>=768px){.studios-section{padding:5rem 0}}.studios-grid{grid-template-columns:1fr;gap:1.5rem;display:grid}@media (width>=768px){.studios-grid{grid-template-columns:repeat(3,1fr)}}.studio-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:1rem;flex-direction:column;display:flex;overflow:hidden}.studio-map-wrap{background:#111;width:100%;height:190px}.studio-info{flex-direction:column;flex-grow:1;justify-content:space-between;padding:1.25rem;display:flex}.studio-name{align-items:center;gap:.4rem;margin-bottom:.35rem;font-size:1.15rem;font-weight:700;display:flex}.studio-address{color:var(--text-secondary);margin-bottom:.5rem;font-size:.88rem;line-height:1.45}.studio-hours{color:var(--text-muted);align-items:center;gap:.35rem;margin-bottom:1.25rem;font-size:.8rem;display:flex}.studio-buttons{flex-direction:column;gap:.5rem;display:flex}.studio-book-btn{justify-content:center;width:100%;padding:.7rem;font-size:.85rem}.studio-dir-btn{text-align:center;justify-content:center;width:100%;padding:.6rem;font-size:.8rem}.gallery-all-btn{align-self:flex-start;padding:.55rem 1.15rem;font-size:.85rem}.gallery-preview-grid{grid-template-columns:repeat(2,1fr);gap:.75rem;display:grid}@media (width>=768px){.gallery-preview-grid{grid-template-columns:repeat(4,1fr);gap:1.25rem}}.gallery-preview-card{aspect-ratio:4/5;border:1px solid var(--border-subtle);background-color:var(--bg-card);border-radius:.85rem;position:relative;overflow:hidden}.gallery-preview-img{object-fit:cover;width:100%;height:100%;transition:transform .35s;display:block}.gallery-preview-card:hover .gallery-preview-img{transform:scale(1.06)}.gallery-preview-caption{color:#fff;background:linear-gradient(#0000 40%,#000000d1 100%);align-items:flex-end;padding:.85rem;font-size:.85rem;font-weight:700;display:flex;position:absolute;inset:0}.pillars-section{background-color:var(--bg-secondary);padding:3.5rem 0}@media (width>=768px){.pillars-section{padding:5rem 0}}.pillars-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}@media (width>=768px){.pillars-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.pillar-card{background:var(--bg-card);border:1px solid var(--border-subtle);text-align:center;border-radius:1rem;flex-direction:column;align-items:center;padding:1.5rem 1.25rem;display:flex}.pillar-icon{border:1px solid var(--border-subtle);background:#ffffff0f;border-radius:12px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:1rem;display:flex}.pillar-title{margin-bottom:.5rem;font-size:1.15rem}.pillar-desc{color:var(--text-secondary);font-size:.88rem;line-height:1.55}.reviews-grid{grid-template-columns:1fr;gap:1.25rem;display:grid}@media (width>=768px){.reviews-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.review-card{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:1rem;flex-direction:column;justify-content:space-between;padding:1.5rem 1.25rem;display:flex}.review-stars{gap:.2rem;margin-bottom:.85rem;display:flex}.review-text{color:#ffffffe6;margin-bottom:1.25rem;font-size:.9rem;font-style:italic;line-height:1.6}.review-footer{border-top:1px solid var(--border-subtle);padding-top:.75rem}.review-author{font-size:.95rem;font-weight:700}.review-meta{color:var(--text-secondary);font-size:.78rem}.cta-section{padding:1rem 0 3.5rem}@media (width>=768px){.cta-section{padding:2rem 0 5rem}}.cta-box{text-align:center;background:linear-gradient(135deg,#1c1c20f2 0%,#101013fa 100%);border:1px solid #ffffff1f;border-radius:1.25rem;padding:2rem 1.25rem;box-shadow:0 16px 36px #00000080}@media (width>=768px){.cta-box{padding:3.5rem 2rem}}.cta-heading{margin-bottom:.6rem;font-size:clamp(1.4rem,4vw,2.25rem);font-weight:800}.cta-desc{color:var(--text-secondary);max-width:500px;margin:0 auto 1.5rem;font-size:.92rem;line-height:1.55}.cta-buttons{flex-direction:column;gap:.75rem;max-width:380px;margin:0 auto;display:flex}@media (width>=480px){.cta-buttons{flex-direction:row;justify-content:center;max-width:none}}
