:root{--gold:#c8973a;--gold-l:#e2b96a;--gold-p:#f5e6c8;--ink:#0d0c0a;--ink2:#141210;--ink3:#1c1a16;--ink4:#242018;--muted:#ffffff70;--wh:#fff}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--ink);color:var(--wh);font-family:DM Sans,sans-serif;overflow-x:hidden}.site-shell nav{z-index:200;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0d0c0aeb;border-bottom:1px solid #c8973a33;justify-content:space-between;align-items:center;height:72px;padding:0 5vw;display:flex;position:fixed;top:0;left:0;right:0}.nav-logo{cursor:pointer;align-items:center;height:48px;display:flex}.nav-logo img{filter:brightness(0)invert();width:auto;height:48px;transition:filter .3s}.nav-logo:hover img{filter:none}.nav-links{gap:2.4rem;list-style:none;display:flex}.nav-links a{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);cursor:pointer;font-size:.71rem;font-weight:500;text-decoration:none;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--gold)}.nav-cta{background:var(--gold);color:var(--ink);letter-spacing:.12em;text-transform:uppercase;padding:10px 24px;font-size:.72rem;font-weight:600;text-decoration:none;transition:background .2s,transform .15s}.nav-cta:hover{background:var(--gold-l);transform:translateY(-1px)}.hamburger{cursor:pointer;flex-direction:column;gap:5px;padding:4px;display:none}.hamburger span{background:var(--gold);width:24px;height:2px;display:block}.page{padding-top:72px;animation:.5s both pgIn;display:none}.page.active{display:block}@keyframes pgIn{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.btn-gold{background:var(--gold);color:var(--ink);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:none;padding:13px 30px;font-family:DM Sans,sans-serif;font-size:.74rem;font-weight:600;text-decoration:none;transition:background .2s,transform .15s,box-shadow .2s;display:inline-block}.btn-gold:hover{background:var(--gold-l);transform:translateY(-2px);box-shadow:0 8px 28px #c8973a4d}.btn-ghost{color:#ffffffbf;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border:1px solid #ffffff40;padding:13px 30px;font-family:DM Sans,sans-serif;font-size:.74rem;font-weight:500;text-decoration:none;transition:border-color .2s,color .2s,transform .15s;display:inline-block}.btn-ghost:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}.btn-wa{color:#fff;letter-spacing:.12em;text-transform:uppercase;background:#25d366;align-items:center;gap:.6rem;padding:13px 28px;font-family:DM Sans,sans-serif;font-size:.73rem;font-weight:500;text-decoration:none;transition:background .2s,transform .15s;display:inline-flex}.btn-wa:hover{background:#20bd5a;transform:translateY(-2px)}.hero{align-items:flex-end;height:calc(100vh - 72px);min-height:620px;display:flex;position:relative;overflow:hidden}.hero-bg{background-position:top;background-size:cover;position:absolute;inset:0}.hero-overlay{background:linear-gradient(#0d0c0a14 0%,#0d0c0a2e 20%,#0d0c0a99 60%,#0d0c0af7 100%);position:absolute;inset:0}.hero-content{z-index:2;max-width:820px;padding:0 7vw 6rem;position:relative}.eyebrow{letter-spacing:.24em;text-transform:uppercase;color:var(--gold);opacity:0;align-items:center;gap:.8rem;margin-bottom:1.4rem;font-size:.68rem;font-weight:500;animation:.6s .1s both pgIn;display:flex}.eyebrow:before{content:"";background:var(--gold);width:32px;height:1px;display:block}.hero-title{color:var(--wh);opacity:0;margin-bottom:1.6rem;font-family:Playfair Display,serif;font-size:clamp(3rem,6vw,5.6rem);font-weight:700;line-height:1.05;animation:.6s .25s both pgIn}.hero-title em{color:var(--gold);font-style:italic}.hero-sub{color:#ffffff8c;opacity:0;max-width:540px;margin-bottom:2.8rem;font-family:Cormorant Garamond,serif;font-size:1.2rem;font-weight:300;line-height:1.75;animation:.6s .4s both pgIn}.hero-btns{opacity:0;flex-wrap:wrap;gap:1rem;animation:.6s .55s both pgIn;display:flex}.hero-scroll{z-index:2;opacity:0;flex-direction:column;align-items:center;gap:.6rem;animation:.6s .8s both pgIn;display:flex;position:absolute;bottom:2.5rem;right:7vw}.hero-scroll span{letter-spacing:.2em;text-transform:uppercase;color:#ffffff40;writing-mode:vertical-rl;font-size:.62rem}.scroll-line{background:linear-gradient(180deg,var(--gold),transparent);width:1px;height:50px;animation:2s ease-in-out infinite scrollPulse}@keyframes scrollPulse{0%,to{opacity:.3}50%{opacity:1}}.strip{grid-template-columns:repeat(3,1fr);display:grid}.strip-card{aspect-ratio:3/4;cursor:default;position:relative;overflow:hidden}.strip-card:hover .strip-photo{transform:scale(1.06)}.strip-photo{background-position:50%;background-size:cover;transition:transform .7s;position:absolute;inset:0}.strip-grad{background:linear-gradient(#0000 0%,#0d0c0a2e 45%,#0d0c0af5 100%);position:absolute;inset:0}.strip-body{z-index:2;padding:2rem 2.2rem 2.5rem;position:absolute;bottom:0;left:0;right:0}.strip-num{letter-spacing:.22em;color:var(--gold);margin-bottom:.5rem;font-size:.63rem;font-weight:600}.strip-name{color:var(--wh);margin-bottom:.65rem;font-family:Playfair Display,serif;font-size:1.45rem;font-weight:700;line-height:1.15}.strip-desc{color:#ffffff80;font-size:.82rem;line-height:1.65}.strip-tag{letter-spacing:.14em;text-transform:uppercase;color:var(--gold);border:1px solid #c8973a4d;margin-top:1.2rem;padding:4px 12px;font-size:.62rem;display:inline-block}.about-split{grid-template-columns:1fr 1fr;min-height:72vh;display:grid}.about-img-side{position:relative;overflow:hidden}.about-img-side img{object-fit:cover;width:100%;height:100%;transition:transform .7s;display:block}.about-split:hover .about-img-side img{transform:scale(1.03)}.about-img-side:after{content:"";background:linear-gradient(90deg,transparent 55%,var(--ink2) 100%);position:absolute;inset:0}.about-body{background:var(--ink2);flex-direction:column;justify-content:center;padding:6rem 5vw 6rem 4rem;display:flex}.sec-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);margin-bottom:.9rem;font-size:.68rem;font-weight:500}.sec-title{color:var(--wh);margin-bottom:1.4rem;font-family:Playfair Display,serif;font-size:clamp(1.9rem,3vw,2.7rem);font-weight:700;line-height:1.12}.sec-title em{color:var(--gold);font-style:italic}.sec-body{color:#ffffff75;margin-bottom:1rem;font-size:.95rem;line-height:1.85}.gold-bar{background:var(--gold);width:48px;height:2px;margin:1.8rem 0}.quote-band{background:var(--gold);text-align:center;padding:5rem 7vw;position:relative;overflow:hidden}.quote-band:before{content:"\"";color:#00000012;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:Playfair Display,serif;font-size:16rem;font-weight:700;line-height:1;position:absolute;top:-2rem;left:4vw}.quote-band blockquote{color:var(--ink);z-index:1;max-width:740px;margin:0 auto 1.2rem;font-family:Cormorant Garamond,serif;font-size:clamp(1.4rem,2.4vw,2.1rem);font-style:italic;font-weight:300;line-height:1.55;position:relative}.quote-band cite{letter-spacing:.18em;text-transform:uppercase;color:#0d0c0a80;font-size:.72rem;font-style:normal}.team-section{background:var(--ink3);padding:6rem 7vw}.team-grid{grid-template-columns:repeat(3,1fr);gap:2px;margin-top:3.5rem;display:grid}.team-card{overflow:hidden}.team-card:hover .tc-img{transform:scale(1.05)}.tc-wrap{aspect-ratio:3/4;position:relative;overflow:hidden}.tc-img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.tc-overlay{background:linear-gradient(#0000 45%,#0d0c0acc 100%);position:absolute;inset:0}.tc-body{background:var(--ink4);padding:1.5rem 1.6rem 2rem}.tc-role{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.4rem;font-size:.62rem}.tc-name{color:var(--wh);margin-bottom:.6rem;font-family:Playfair Display,serif;font-size:1.2rem;font-weight:700}.tc-desc{color:#fff6;font-size:.82rem;line-height:1.65}.reviews-section{background:var(--ink2);padding:6rem 7vw;overflow:hidden}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.reviews-track-wrap{margin-top:3.5rem;overflow:hidden}.reviews-grid{flex-wrap:nowrap;gap:12px;width:max-content;animation:40s linear infinite marqueeScroll;display:flex}.reviews-track-wrap:hover .reviews-grid{animation-play-state:paused}.review{background:var(--ink3);border-bottom:2px solid #0000;flex:0 0 280px;padding:2rem 1.8rem;transition:border-color .2s,transform .2s}.review:hover{border-color:var(--gold);transform:translateY(-3px)}.r-stars{color:var(--gold);margin-bottom:.9rem;font-size:.85rem}.r-text{color:#ffffffa6;margin-bottom:1.1rem;font-family:Cormorant Garamond,serif;font-size:1.02rem;font-style:italic;line-height:1.65}.r-name{letter-spacing:.12em;text-transform:uppercase;color:#ffffff47;font-size:.68rem}.svc-hero{align-items:flex-end;height:60vh;min-height:420px;display:flex;position:relative;overflow:hidden}.svc-hero-bg{background-position:50%;background-size:cover;position:absolute;inset:0}.svc-hero-overlay{background:linear-gradient(#0d0c0a33 0%,#0d0c0a80 45%,#0d0c0af7 100%);position:absolute;inset:0}.svc-hero-content{z-index:2;padding:0 7vw 5rem;position:relative}.svc-band{grid-template-columns:1fr 1fr;min-height:500px;display:grid}.svc-band.flip{direction:rtl}.svc-band.flip>*{direction:ltr}.svc-photo{position:relative;overflow:hidden}.svc-photo img{object-fit:cover;width:100%;height:100%;transition:transform .7s;display:block}.svc-band:hover .svc-photo img{transform:scale(1.04)}.svc-text{background:var(--ink2);flex-direction:column;justify-content:center;padding:5rem 5vw;display:flex}.svc-num-big{color:#c8973a1a;margin-bottom:-.5rem;font-family:Playfair Display,serif;font-size:5.5rem;font-weight:700;line-height:1}.svc-band-title{color:var(--wh);margin-bottom:1.2rem;font-family:Playfair Display,serif;font-size:2.1rem;font-weight:700;line-height:1.15}.svc-band-title em{color:var(--gold);font-style:italic}.svc-band-desc{color:#ffffff75;margin-bottom:2rem;font-size:.95rem;line-height:1.85}.svc-link{letter-spacing:.14em;text-transform:uppercase;color:var(--gold);align-items:center;gap:.7rem;font-size:.72rem;font-weight:500;text-decoration:none;transition:gap .2s;display:inline-flex}.svc-link:hover{gap:1.1rem}.svc-link:after{content:""}.how-works{background:var(--ink3);text-align:center;padding:6rem 7vw}.steps-grid{grid-template-columns:repeat(4,1fr);gap:1px;max-width:900px;margin:3.5rem auto 0;display:grid}.step{background:var(--ink4);text-align:center;padding:2.5rem 1.5rem}.step-num{color:var(--gold);opacity:.5;margin-bottom:1rem;font-family:Playfair Display,serif;font-size:2.6rem;font-weight:700;line-height:1}.step-title{letter-spacing:.1em;text-transform:uppercase;color:var(--wh);margin-bottom:.6rem;font-size:.82rem;font-weight:600}.step-desc{color:#ffffff61;font-size:.8rem;line-height:1.65}.about-hero{background:var(--ink2);padding:5rem 7vw 4rem}.about-grid{background:var(--ink);grid-template-columns:1fr 1fr;align-items:center;gap:5rem;padding:6rem 7vw;display:grid}.about-img-frame{position:relative}.about-img-main{aspect-ratio:3/4;object-fit:cover;width:100%;display:block}.about-img-logo{pointer-events:none;width:55%;position:absolute;top:0;left:0}.about-img-badge{background:var(--gold);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:absolute;bottom:-1.5rem;right:-1.5rem}.about-img-badge strong{color:var(--ink);font-family:Playfair Display,serif;font-size:2rem;font-weight:700;line-height:1}.about-img-badge span{letter-spacing:.08em;text-transform:uppercase;color:#0d0c0aa6;margin-top:3px;font-size:.62rem;font-weight:500}.pillars{grid-template-columns:1fr 1fr;gap:1.2rem;margin-top:2.5rem;display:grid}.pillar{background:var(--ink3);border-left:3px solid var(--gold);padding:1.4rem}.pillar-title{color:var(--wh);margin-bottom:.4rem;font-family:Playfair Display,serif;font-size:.95rem;font-weight:600}.pillar-desc{color:#fff6;font-size:.82rem;line-height:1.6}.contact-split{grid-template-columns:1fr 1fr;display:grid}.contact-img{min-height:520px;position:relative;overflow:hidden}.contact-img img{object-fit:cover;width:100%;height:100%;display:block}.contact-img:after{content:"";background:#0d0c0a33;position:absolute;inset:0}.contact-body{background:var(--ink2);padding:5rem 5vw}.contact-row{border-bottom:1px solid #c8973a1a;align-items:flex-start;gap:1rem;margin-bottom:2rem;padding-bottom:2rem;display:flex}.contact-row:last-of-type{border-bottom:none}.contact-icon{margin-top:2px;font-size:1.1rem}.contact-lbl{letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin-bottom:.3rem;font-size:.63rem}.contact-val{color:#ffffff8c;font-size:.9rem;line-height:1.65}.contact-val a{color:inherit;text-decoration:none;transition:color .2s}.contact-val a:hover{color:var(--gold)}.contact-form-section{background:var(--ink3);padding:5rem 7vw}.form-grid{grid-template-columns:1fr 1fr;gap:1.5rem;max-width:900px;margin:3rem auto 0;display:grid}.form-full{grid-column:1/-1}.form-lbl{letter-spacing:.16em;text-transform:uppercase;color:#ffffff59;margin-bottom:.5rem;font-size:.63rem;display:block}.form-inp,.form-sel,.form-ta{width:100%;color:var(--wh);background:#ffffff0a;border:1px solid #c8973a2e;outline:none;padding:12px 15px;font-family:DM Sans,sans-serif;font-size:.9rem;transition:border-color .2s,background .2s}.form-inp:focus,.form-sel:focus,.form-ta:focus{border-color:var(--gold);background:#c8973a0a}.form-inp::placeholder,.form-ta::placeholder{color:#fff3}.form-sel option{background:var(--ink3)}.form-ta{resize:vertical;height:130px}.form-submit{background:var(--gold);width:100%;color:var(--ink);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;border:none;margin-top:.5rem;padding:15px;font-family:DM Sans,sans-serif;font-size:.74rem;font-weight:600;transition:background .2s,transform .15s}.form-submit:hover{background:var(--gold-l);transform:translateY(-1px)}.form-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}footer{background:var(--ink);border-top:1px solid #c8973a1f;padding:4rem 7vw 2rem}.footer-top{border-bottom:1px solid #ffffff0d;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem;padding-bottom:3rem;display:grid}.footer-logo img{filter:brightness(0)invert();width:auto;height:50px;margin-bottom:1rem}.footer-desc{color:#ffffff4d;max-width:280px;margin-bottom:1.5rem;font-size:.84rem;line-height:1.75}.footer-socials{gap:.7rem;display:flex}.social-btn{color:#fff6;border:1px solid #c8973a38;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:.7rem;text-decoration:none;transition:border-color .2s,color .2s,background .2s;display:flex}.social-btn:hover{border-color:var(--gold);color:var(--gold);background:#c8973a14}.footer-col-title{letter-spacing:.2em;text-transform:uppercase;color:var(--gold);margin-bottom:1.2rem;font-size:.66rem}.footer-links{list-style:none}.footer-links li{margin-bottom:.55rem}.footer-links a{color:#ffffff59;cursor:pointer;font-size:.84rem;text-decoration:none;transition:color .2s}.footer-links a:hover{color:var(--gold)}.footer-hours li{color:#ffffff59;margin-bottom:.45rem;font-size:.84rem;list-style:none}.footer-hours span{color:#ffffff26;margin:0 .35rem}.footer-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-copy{color:#ffffff2e;font-size:.74rem}.footer-tagline{color:#c8973a59;font-family:Cormorant Garamond,serif;font-size:.9rem;font-style:italic}#ecs-toast{background:var(--ink3);color:var(--wh);letter-spacing:.06em;z-index:9999;opacity:0;pointer-events:none;white-space:nowrap;border:1px solid #c8973a59;border-radius:2px;padding:14px 28px;font-family:DM Sans,sans-serif;font-size:.82rem;transition:transform .35s cubic-bezier(.34,1.56,.64,1),opacity .35s;position:fixed;bottom:2rem;left:50%;transform:translate(-50%)translateY(120px)}#ecs-toast.show{opacity:1;transform:translate(-50%)translateY(0)}#ecs-toast.success{color:#2ecc71;border-color:#2ecc71}#ecs-toast.error{color:#e74c3c;border-color:#e74c3c}@media (max-width:768px){.site-shell nav{padding:0 1.5rem}.nav-links,.nav-cta{display:none}.hamburger{display:flex}.nav-links.open{background:var(--ink);z-index:199;border-top:1px solid #c8973a26;flex-direction:column;gap:1.2rem;padding:1.5rem 2rem 2rem;display:flex;position:fixed;top:72px;left:0;right:0}.nav-links.open a{font-size:1rem}.strip,.team-grid,.steps-grid,.about-split,.svc-band,.contact-split,.about-grid{grid-template-columns:1fr}.svc-band.flip{direction:ltr}.about-img-badge{display:none}.pillars,.form-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.hero-content{padding:0 1.5rem 4rem}}.admin-root{color:#fff;background:#0f0f0f;min-height:100vh;font-family:DM Sans,sans-serif;display:flex}.admin-sidebar{z-index:10;background:#141414;border-right:1px solid #c8973a1f;flex-direction:column;flex-shrink:0;width:240px;height:100vh;transition:width .22s cubic-bezier(.4,0,.2,1);display:flex;position:sticky;top:0;overflow:hidden}.admin-sidebar.collapsed{width:64px}.admin-sidebar-brand{border-bottom:1px solid #c8973a1a;flex-shrink:0;align-items:center;gap:.75rem;min-height:56px;padding:1.1rem 1rem 1rem;display:flex}.admin-sidebar-logo{background:var(--gold);width:34px;height:34px;color:var(--ink);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;font-size:.82rem;font-weight:700;display:flex}.admin-sidebar-name{color:#ffffffbf;white-space:nowrap;opacity:1;font-size:.82rem;font-weight:600;transition:opacity .18s;overflow:hidden}.admin-sidebar.collapsed .admin-sidebar-name{opacity:0;pointer-events:none;width:0}.admin-user-card{border-bottom:1px solid #c8973a14;flex-shrink:0;align-items:center;gap:.6rem;padding:.7rem 1rem;display:flex;overflow:hidden}.admin-user-avatar{background:var(--gold);width:30px;height:30px;color:var(--ink);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:.78rem;font-weight:700;display:flex}.admin-user-info{flex:1;min-width:0;transition:opacity .18s,max-width .22s;overflow:hidden}.admin-user-name{color:#fffc;white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;font-weight:600;overflow:hidden}.admin-user-email{color:#ffffff47;white-space:nowrap;text-overflow:ellipsis;font-size:.63rem;overflow:hidden}.admin-role-badge{letter-spacing:.1em;text-transform:uppercase;border-radius:99px;flex-shrink:0;padding:2px 7px;font-size:.54rem;font-weight:700;transition:opacity .18s}.admin-role-badge.admin{color:var(--gold);background:#c8973a2e;border:1px solid #c8973a4d}.admin-role-badge.standard{color:#ffffff59;background:#ffffff0f;border:1px solid #ffffff1a}.admin-sidebar.collapsed .admin-user-info,.admin-sidebar.collapsed .admin-role-badge{opacity:0;border:none;max-width:0;padding:0;overflow:hidden}.admin-sidebar-nav{flex-direction:column;flex:1;padding:.5rem 0 .25rem;display:flex;overflow:hidden auto}.admin-sidebar-nav::-webkit-scrollbar{width:3px}.admin-sidebar-nav::-webkit-scrollbar-track{background:0 0}.admin-sidebar-nav::-webkit-scrollbar-thumb{background:#c8973a33;border-radius:3px}.admin-nav-group-label{letter-spacing:.2em;text-transform:uppercase;color:#ffffff2e;white-space:nowrap;opacity:1;max-height:36px;padding:.85rem 1rem .2rem;font-size:.52rem;font-weight:700;transition:max-height .18s,opacity .15s,padding .18s;display:block;overflow:hidden}.admin-sidebar.collapsed .admin-nav-group-label{opacity:0;max-height:0;padding-top:0;padding-bottom:0;overflow:hidden}.admin-nav-item{color:#ffffff73;cursor:pointer;white-space:nowrap;text-align:left;background:0 0;border:none;border-radius:5px;align-items:center;gap:.75rem;width:calc(100% - 1rem);margin:1px .5rem;padding:.6rem .75rem;font-size:.82rem;text-decoration:none;transition:background .15s,color .15s;display:flex;overflow:hidden}.admin-nav-item:hover{color:#fffc;background:#c8973a14}.admin-nav-item.active{color:var(--gold);background:#c8973a21}.admin-nav-icon{text-align:center;flex-shrink:0;width:20px;min-width:20px;font-size:.95rem}.admin-nav-label{white-space:nowrap;transition:opacity .18s;overflow:hidden}.admin-sidebar.collapsed .admin-nav-label{opacity:0;max-width:0;overflow:hidden}.admin-sidebar-footer{border-top:1px solid #c8973a14;flex-direction:column;flex-shrink:0;gap:2px;padding:.5rem .5rem .75rem;display:flex}.admin-collapse-btn{color:#ffffff47;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:5px;align-items:center;gap:.75rem;width:100%;margin:0;padding:.6rem .75rem;font-size:.78rem;transition:color .15s,background .15s;display:flex;overflow:hidden}.admin-collapse-btn:hover{color:#ffffffa6;background:#ffffff0a}.admin-collapse-icon{text-align:center;flex-shrink:0;width:20px;min-width:20px;font-size:.8rem;transition:transform .22s cubic-bezier(.4,0,.2,1);display:inline-block}.admin-sidebar.collapsed .admin-collapse-icon{transform:rotate(180deg)}.admin-collapse-icon.pinned{transform:rotate(0)}.admin-logout-btn{color:#ffffff4d;cursor:pointer;text-align:left;white-space:nowrap;background:0 0;border:none;border-radius:5px;align-items:center;gap:.75rem;width:100%;padding:.6rem .75rem;font-size:.8rem;transition:color .15s,background .15s;display:flex;overflow:hidden}.admin-logout-btn:hover{color:#e74c3cbf;background:#e74c3c0d}.admin-website-link{color:#ffffff4d;text-decoration:none}.admin-website-link:hover{color:#ffffffb3;background:#ffffff0a}.admin-main{background:#0f0f0f;flex:1;min-width:0;overflow-y:auto}.admin-content{max-width:1100px;padding:2.5rem 3rem}.admin-header{margin-bottom:2rem}.admin-page-title{color:#fff;margin-bottom:.3rem;font-family:Playfair Display,serif;font-size:1.75rem;font-weight:700}.admin-page-sub{color:#ffffff4d;font-size:.82rem}.admin-stats-grid{grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2.5rem;display:grid}.admin-stat{text-align:center;background:#1a1a1a;border:1px solid #c8973a1a;border-radius:6px;padding:1.5rem}.admin-stat.highlight{border-color:#c8973a59}.admin-stat-value{color:var(--gold);font-family:Playfair Display,serif;font-size:2.4rem;font-weight:700}.admin-stat-label{letter-spacing:.14em;text-transform:uppercase;color:#ffffff4d;margin-top:.3rem;font-size:.7rem}.admin-section{margin-top:2rem}.admin-section-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.admin-section-title{letter-spacing:.18em;text-transform:uppercase;color:#ffffff4d;font-size:.65rem}.admin-nav-group{flex-direction:column;display:flex}.admin-toolbar{align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.admin-count{color:#ffffff4d;font-size:.82rem}.admin-count .ml{margin-left:.5rem}.admin-empty{color:#ffffff40;padding:2rem 0;font-size:.85rem}.admin-btn-primary{background:var(--gold);color:var(--ink);cursor:pointer;border:none;border-radius:4px;align-items:center;gap:.4rem;padding:8px 18px;font-size:.8rem;font-weight:500;text-decoration:none;transition:opacity .2s;display:inline-flex}.admin-btn-primary:hover{opacity:.85}.admin-btn-primary:disabled{opacity:.5;cursor:not-allowed}.admin-btn-ghost{color:var(--gold);cursor:pointer;background:0 0;border:1px solid #c8973a4d;border-radius:4px;align-items:center;gap:.4rem;padding:7px 16px;font-size:.8rem;transition:opacity .2s;display:inline-flex}.admin-btn-ghost:hover{opacity:.75}.admin-btn-full{justify-content:center;width:100%}.admin-btn-sm{color:#ffffff80;cursor:pointer;background:0 0;border:1px solid #c8973a40;border-radius:3px;padding:4px 12px;font-size:.72rem;transition:all .2s}.admin-btn-sm:hover{border-color:var(--gold);color:var(--gold)}.admin-btn-sm.danger{color:#e74c3c99;border-color:#e74c3c4d}.admin-btn-sm.danger:hover{color:#e74c3c;border-color:#e74c3c}.badge{letter-spacing:.07em;text-transform:uppercase;border-radius:99px;padding:2px 9px;font-size:.62rem;font-weight:600;display:inline-block}.badge-read{color:#ffffff4d;background:#ffffff0f;border:1px solid #ffffff1a}.badge-unread{color:var(--gold);background:#c8973a26;border:1px solid #c8973a4d}.badge-service{color:#fff6;background:#ffffff0f;border:1px solid #ffffff1a}.badge-source-google{color:#4285f4;background:#4285f41f;border:1px solid #4285f440}.badge-source-manual{color:var(--gold);background:#c8973a1f;border:1px solid #c8973a40}.admin-table{border-collapse:collapse;width:100%}.admin-table th{letter-spacing:.16em;text-transform:uppercase;color:#ffffff40;text-align:left;border-bottom:1px solid #c8973a1a;padding:.7rem 1rem;font-size:.6rem}.admin-table td{color:#ffffffa6;vertical-align:middle;border-bottom:1px solid #ffffff0a;padding:.8rem 1rem;font-size:.84rem}.admin-table tr:hover td{background:#c8973a05}.admin-td-order{width:2.5rem;color:#fff3!important}.admin-td-name{white-space:nowrap;max-width:150px;font-weight:500}.admin-td-text{max-width:300px;color:#ffffff73!important}.admin-td-stars{letter-spacing:-.05em;white-space:nowrap;color:var(--gold)!important}.admin-td-actions{white-space:nowrap;flex-shrink:0;align-items:center;gap:.4rem;display:flex}.admin-toggle{letter-spacing:.06em;cursor:pointer;border:none;border-radius:3px;padding:3px 10px;font-size:.68rem;font-weight:600;transition:all .2s}.admin-toggle.on{color:#2ecc71;background:#2ecc711f;border:1px solid #2ecc7140}.admin-toggle.off{color:#ffffff40;background:#ffffff0d;border:1px solid #ffffff1a}.admin-field{flex-direction:column;gap:.4rem;margin-bottom:1rem;display:flex}.admin-field label{letter-spacing:.14em;text-transform:uppercase;color:#ffffff4d;font-size:.62rem}.admin-field input,.admin-field select,.admin-field textarea{color:#fff;background:#ffffff0d;border:1px solid #c8973a33;border-radius:3px;outline:none;padding:9px 13px;font-family:DM Sans,sans-serif;font-size:.88rem;transition:border-color .2s}.admin-field input:focus,.admin-field select:focus,.admin-field textarea:focus{border-color:var(--gold)}.admin-field select option{background:#1a1a1a}.admin-field-row{grid-template-columns:1fr 1fr 80px;gap:1rem;display:grid}.admin-field-check label{color:#fff9;cursor:pointer;text-transform:none;letter-spacing:0;align-items:center;gap:.5rem;font-size:.84rem;display:flex}.admin-field-check input[type=checkbox]{accent-color:var(--gold)}.admin-form-actions{border-top:1px solid #ffffff12;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.25rem;display:flex}.admin-form-error{color:#e74c3c;background:#e74c3c1a;border:1px solid #e74c3c4d;border-radius:4px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.84rem}.admin-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:100;background:#000000b3;justify-content:center;align-items:flex-start;padding:4rem 1rem;display:flex;position:fixed;inset:0;overflow-y:auto}.admin-modal{background:#1a1a1a;border:1px solid #c8973a33;border-radius:8px;width:100%;max-width:560px;padding:2rem}.admin-modal-title{color:#fff;margin-bottom:1.5rem;font-family:Playfair Display,serif;font-size:1.25rem}.admin-login-page{background:#0f0f0f;justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.admin-login-card{background:#141414;border:1px solid #c8973a26;border-radius:8px;width:100%;max-width:400px;padding:2.5rem}.admin-login-logo{text-align:center;margin-bottom:1.75rem}.admin-login-brand{color:var(--gold);letter-spacing:.04em;font-family:Playfair Display,serif;font-size:1.1rem}.admin-login-title{color:#fff;margin-bottom:.3rem;font-family:Playfair Display,serif;font-size:1.75rem}.admin-login-sub{color:#ffffff4d;margin-bottom:2rem;font-size:.82rem}.admin-login-form{flex-direction:column;gap:0;display:flex}.admin-login-error{color:#e74c3c;background:#e74c3c1a;border:1px solid #e74c3c4d;border-radius:4px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.84rem}.submissions-layout{border:1px solid #c8973a1a;border-radius:6px;grid-template-columns:340px 1fr;gap:0;min-height:60vh;display:grid;overflow:hidden}.submissions-list{background:#141414;border-right:1px solid #c8973a1a;overflow-y:auto}.submissions-list .admin-toolbar{border-bottom:1px solid #c8973a14;padding:.75rem 1rem}.submission-row{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;border-bottom:1px solid #ffffff0a;padding:.9rem 1rem;transition:background .15s;display:block}.submission-row:hover{background:#ffffff08}.submission-row.active{background:#c8973a12}.submission-row.unread .submission-name:after{content:"";background:var(--gold);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-left:.5rem;display:inline-block}.submission-row-top{justify-content:space-between;align-items:baseline;margin-bottom:.2rem;display:flex}.submission-name{color:#fffc;font-size:.85rem;font-weight:600}.submission-date{color:#ffffff40;font-size:.7rem}.submission-row-bottom{align-items:center;gap:.5rem;margin-bottom:.3rem;display:flex}.submission-email{color:#ffffff59;font-size:.75rem}.submission-preview{color:#ffffff40;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:.76rem;overflow:hidden}.submission-detail{background:#0f0f0f;padding:2rem}.submission-detail-empty{color:#fff3;justify-content:center;align-items:center;height:100%;font-size:.85rem;display:flex}.submission-detail-header{justify-content:space-between;align-items:baseline;margin-bottom:1.5rem;display:flex}.submission-detail-header h2{color:#fff;font-family:Playfair Display,serif;font-size:1.4rem}.submission-detail-date{color:#ffffff40;font-size:.75rem}.submission-meta{grid-template-columns:auto 1fr;gap:.4rem 1rem;margin-bottom:1.5rem;display:grid}.submission-meta dt{letter-spacing:.14em;text-transform:uppercase;color:#ffffff4d;padding-top:.15rem;font-size:.65rem}.submission-meta dd{color:#ffffffb3;margin:0;font-size:.88rem}.submission-meta a{color:var(--gold);text-decoration:none}.submission-message h3{letter-spacing:.16em;text-transform:uppercase;color:#ffffff40;margin-bottom:.75rem;font-size:.62rem}.submission-message p{color:#ffffffa6;white-space:pre-wrap;margin-bottom:1.5rem;font-size:.88rem;line-height:1.6}.admin-form-success{color:#2ecc71;background:#2ecc711a;border:1px solid #2ecc714d;border-radius:4px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.84rem}.admin-login-link{color:#ffffff4d;cursor:pointer;text-align:center;background:0 0;border:none;margin-top:1rem;padding:0;font-family:DM Sans,sans-serif;font-size:.82rem;text-decoration:underline;transition:color .2s;display:block}.admin-login-link:hover{color:var(--gold)}.inbox-controls{flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1.25rem;display:flex}.inbox-search{color:#fff;background:#ffffff0d;border:1px solid #c8973a2e;border-radius:3px;outline:none;flex:1;min-width:180px;padding:9px 14px;font-family:DM Sans,sans-serif;font-size:.85rem;transition:border-color .2s}.inbox-search:focus{border-color:var(--gold)}.inbox-search::placeholder{color:#fff3}.inbox-filters{flex-wrap:wrap;gap:.4rem;display:flex}.inbox-filter-btn{color:#fff6;cursor:pointer;background:0 0;border:1px solid #ffffff1a;border-radius:3px;padding:5px 14px;font-size:.72rem;font-weight:500;transition:all .2s}.inbox-filter-btn:hover{color:#ffffffb3;border-color:#c8973a4d}.inbox-filter-btn.active{border-color:var(--gold);color:var(--gold);background:#c8973a1a}.submission-actions{flex-wrap:wrap;align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.badge-replied{color:#2ecc71;background:#2ecc711f;border:1px solid #2ecc7140}.reviews-table-wrap{border:1px solid #c8973a1a;border-radius:4px;overflow-x:auto}.drag-handle{cursor:grab;-webkit-user-select:none;user-select:none;text-align:center;font-size:.9rem;color:#fff3!important}.drag-handle:active{cursor:grabbing}tr.drag-source td{opacity:.4;background:#c8973a0a}tr.drag-over td{box-shadow:inset 0 2px 0 var(--gold)}.badge-published{color:#2ecc71;background:#2ecc711f;border:1px solid #2ecc7140}.announcement-list{flex-direction:column;gap:1rem;display:flex}.announcement-card{background:#1a1a1a;border:1px solid #ffffff0f;border-radius:6px;padding:1.25rem 1.5rem;transition:border-color .2s}.announcement-card.published{border-color:#2ecc7133}.announcement-card-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.announcement-card-meta{align-items:center;gap:.75rem;display:flex}.announcement-title{color:#fff;margin-bottom:.5rem;font-family:Playfair Display,serif;font-size:1.05rem;font-weight:700}.announcement-body{color:#ffffff73;white-space:pre-wrap;font-size:.86rem;line-height:1.6}.profile-layout{grid-template-columns:1fr 1fr;align-items:start;gap:2rem;display:grid}.profile-section{background:#1a1a1a;border:1px solid #c8973a1a;border-radius:6px;padding:1.75rem}.profile-section-title{letter-spacing:.16em;text-transform:uppercase;color:#ffffff4d;margin-bottom:1.5rem;font-size:.62rem;font-weight:600}.role-select{color:#ffffffb3;cursor:pointer;background:#ffffff0d;border:1px solid #c8973a26;border-radius:3px;outline:none;padding:4px 10px;font-family:DM Sans,sans-serif;font-size:.78rem}.role-select:focus{border-color:var(--gold)}.role-select option{background:#1a1a1a}@media (max-width:900px){.profile-layout{grid-template-columns:1fr}}.announcement-banner{background:var(--gold);color:var(--ink);text-align:center;letter-spacing:.02em;z-index:201;padding:.5rem 3rem .5rem 1rem;font-size:.78rem;font-weight:500;line-height:1.4;position:relative}.announcement-banner a{color:inherit;text-decoration:underline}.announcement-banner-close{cursor:pointer;color:inherit;opacity:.7;background:0 0;border:none;padding:0;font-size:1rem;line-height:1;transition:opacity .2s;position:absolute;top:50%;right:.75rem;transform:translateY(-50%)}.announcement-banner-close:hover{opacity:1}.reviews-skeleton{gap:12px;margin-top:3.5rem;display:flex;overflow:hidden}.skeleton-card{background:linear-gradient(90deg,var(--ink3) 25%,#ffffff0a 50%,var(--ink3) 75%);background-size:200% 100%;border-radius:2px;flex:0 0 280px;height:160px;animation:1.4s ease-in-out infinite skeletonPulse}@keyframes skeletonPulse{0%{background-position:100% 0}to{background-position:-100% 0}}.contact-icon svg{display:block}.contact-info-form{max-width:700px}.ci-section{background:#1a1a1a;border:1px solid #c8973a1a;border-radius:6px;margin-bottom:1.25rem;padding:1.5rem}.ci-section-title{letter-spacing:.18em;text-transform:uppercase;color:#ffffff4d;margin-bottom:1.25rem;font-size:.6rem;font-weight:700}.ci-grid{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.ci-full{grid-column:1/-1}.ci-hours-grid{flex-direction:column;gap:.75rem;display:flex}.ci-hours-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.ci-preview{background:#c8973a0a;border:1px solid #c8973a26;border-radius:6px;margin-bottom:1.25rem;padding:1.5rem}.ci-preview-body{flex-direction:column;gap:.6rem;display:flex}.ci-preview-row{gap:1rem;font-size:.85rem;display:flex}.ci-preview-row strong{min-width:70px;color:var(--gold);letter-spacing:.12em;text-transform:uppercase;padding-top:.1rem;font-size:.65rem}.ci-preview-row span{color:#fff9;line-height:1.5}.admin-mobile-bar,.admin-mobile-overlay{display:none}@media (max-width:768px){.admin-root{flex-direction:column}.admin-main{flex:1;width:100%;min-width:0}.admin-content{max-width:100%;padding:1.25rem 1rem}.admin-header{margin-bottom:1.25rem}.admin-page-title{font-size:1.35rem}.admin-sidebar{z-index:300;height:100vh;transition:left .25s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:-241px;width:240px!important}.admin-sidebar.mobile-open{left:0}.admin-mobile-bar{z-index:50;background:#141414;border-bottom:1px solid #c8973a1f;flex-shrink:0;align-items:center;gap:1rem;padding:.7rem 1rem;display:flex;position:sticky;top:0}.admin-hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;flex-shrink:0;gap:4px;padding:4px;display:flex}.admin-hamburger span{background:var(--gold);width:22px;height:2px;display:block}.admin-mobile-title{color:#fff;font-family:Playfair Display,serif;font-size:1rem}.admin-mobile-overlay{z-index:299;background:#0009;position:fixed;inset:0}.admin-mobile-overlay.show{display:block}.admin-stats-grid{grid-template-columns:1fr 1fr}.admin-stats-grid .admin-stat:last-child{grid-column:1/-1}.admin-section{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-table{min-width:480px}.reviews-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-toolbar{flex-wrap:wrap;gap:.5rem}.admin-count{font-size:.75rem}.admin-field-row{grid-template-columns:1fr!important}.admin-form-actions{flex-direction:column-reverse;gap:.5rem}.admin-form-actions button{justify-content:center;width:100%}.admin-modal-backdrop{align-items:flex-start;padding:.75rem .5rem}.admin-modal{border-radius:6px;padding:1.25rem 1rem}.admin-modal-title{font-size:1.1rem}.submissions-layout{grid-template-columns:1fr}.submissions-list{border-bottom:1px solid #c8973a1a;border-right:none;max-height:280px;overflow-y:auto}.submission-detail{padding:1.25rem 1rem}.inbox-controls{flex-direction:column;gap:.6rem}.inbox-search{width:100%}.inbox-filters{gap:.3rem;padding-bottom:.2rem;overflow-x:auto}.inbox-filter-btn{white-space:nowrap;flex-shrink:0}.announcement-card-header{flex-direction:column;align-items:flex-start;gap:.5rem}.profile-layout{grid-template-columns:1fr}.ci-grid{grid-template-columns:1fr!important}.ci-full{grid-column:1}.ci-hours-row{grid-template-columns:1fr!important}.admin-login-card{padding:1.75rem 1.25rem}}
