@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=Raleway:wght@300;400;500;600;700;800&display=swap";:root{--color-primary: #b42318;--color-primary-dark: #8c1a11;--color-secondary: #d4a017;--color-dark: #1a1208;--color-cream: #faf6f0;--color-text: #2c2416;--color-text-light: #6b5e4f;--color-border: #e0d6c8;--color-white: #ffffff;--font-heading: Georgia, "Times New Roman", serif;--font-body: -apple-system, sans-serif;--text-xs: .75rem;--text-sm: .85rem;--text-base: .95rem;--text-lg: 1rem;--text-xl: 1.15rem;--text-2xl: 1.25rem;--text-3xl: 1.75rem;--text-4xl: 2.5rem;--text-5xl: 4rem;--leading-tight: 1.1;--leading-snug: 1.2;--leading-normal: 1.4;--leading-relaxed: 1.5;--leading-loose: 1.7;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--radius-sm: 2px;--radius-md: 4px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--shadow-sm: 0 2px 6px rgba(0, 0, 0, .08);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .1);--max-w-sm: 800px;--max-w-md: 900px;--max-w-lg: 1100px;--max-w-xl: 1200px;--max-w-2xl: 1400px;--tracking-tight: 1px;--tracking-normal: 1.5px;--tracking-wide: 3px;--opacity-muted: .75;--opacity-soft: .85;--opacity-overlay: .35}*,*:before,*:after{box-sizing:border-box}:root{--font-heading: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "Raleway", -apple-system, sans-serif;--color-primary: #4338ca;--color-primary-dark: #3730a3;--color-secondary: #a78bfa;--color-dark: #110e24;--color-cream: #f5f3ff;--color-text: #1e1b4b;--color-text-light: #6b6898;--color-border: #c4b5fd;--color-white: #ffffff;--lav-tint: rgba(167, 139, 250, .14);--ind-tint: rgba(67, 56, 202, .08);--header-h: 84px}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font-body);color:var(--color-text);background:var(--color-cream);-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit}*{box-sizing:border-box}.wrap{max-width:var(--max-w-xl);margin:0 auto;padding:0 var(--space-6)}.section{padding:var(--space-16) var(--space-6)}.section-head{max-width:760px;margin:0 auto var(--space-12);text-align:center}.section-head.left{margin-left:0;text-align:left}.eyebrow{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:700;color:var(--color-primary);margin:0 0 var(--space-4)}.section-head h2{font-family:var(--font-heading);font-size:clamp(2.2rem,4.4vw,var(--text-5xl));font-weight:700;color:var(--color-dark);line-height:var(--leading-tight);margin:0 0 var(--space-3);letter-spacing:-.5px}.section-head p{font-size:var(--text-xl);color:var(--color-text-light);line-height:var(--leading-relaxed);margin:0}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-8);font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-wide);text-decoration:none;cursor:pointer;border-radius:var(--radius-md);border:2px solid var(--color-primary);background:var(--color-primary);color:var(--color-white);transition:background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease}.btn:hover{background:var(--color-primary-dark);border-color:var(--color-primary-dark);transform:translateY(-1px)}.btn.ghost{background:transparent;color:var(--color-primary);border-color:var(--color-border)}.btn.ghost:hover{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.btn.ghost.on-dark{color:var(--color-cream);border-color:#fff6}.btn.ghost.on-dark:hover{background:var(--color-cream);color:var(--color-dark);border-color:var(--color-cream)}.announce{background:var(--color-dark);color:var(--color-cream);display:flex;align-items:center;justify-content:center;gap:var(--space-3);padding:10px var(--space-12) 10px var(--space-6);font-size:var(--text-sm);font-weight:500;letter-spacing:.2px;position:relative;text-align:center}.announce a{color:var(--color-secondary);text-decoration:none;font-weight:700;border-bottom:1px solid transparent}.announce a:hover{border-bottom-color:var(--color-secondary)}.announce .ann-close{position:absolute;right:var(--space-4);top:50%;transform:translateY(-50%);width:26px;height:26px;border:0;cursor:pointer;border-radius:var(--radius-full);background:#ffffff14;color:var(--color-cream);font-size:15px;line-height:1;display:grid;place-items:center;transition:background .18s ease}.announce .ann-close:hover{background:#fff3}.announce.hidden{display:none}.site-header{position:sticky;top:0;z-index:50;height:var(--header-h);display:flex;align-items:center;background:var(--color-dark);box-shadow:0 1px #ffffff0f;transition:height .25s ease,box-shadow .25s ease}.site-header .wrap{display:flex;align-items:center;justify-content:space-between;width:100%}.brand{display:flex;align-items:center;gap:var(--space-3);text-decoration:none}.brand .mark{width:46px;height:46px;flex:none;border-radius:var(--radius-full);background:transparent;display:grid;place-items:center;color:var(--color-secondary);font-family:var(--font-heading);font-size:1.2rem;font-weight:700;font-style:italic;border:2px solid var(--color-secondary)}.brand .name{font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:700;line-height:1.02;color:var(--color-cream);letter-spacing:.3px}.brand .name small{display:block;font-family:var(--font-body);font-size:10px;letter-spacing:var(--tracking-wide);text-transform:uppercase;font-weight:700;color:var(--color-secondary);margin-top:3px}.nav{display:flex;align-items:center;gap:var(--space-8)}.nav a.lnk{text-decoration:none;font-size:var(--text-base);font-weight:500;color:var(--color-cream);letter-spacing:.3px;padding:6px 0;position:relative}.nav a.lnk:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--color-secondary);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.nav a.lnk:hover:after{transform:scaleX(1)}.nav a.lnk.active{color:var(--color-secondary);font-weight:700}.nav a.lnk.active:after{transform:scaleX(1)}.nav .btn{padding:var(--space-2) var(--space-6);border-color:var(--color-secondary);background:var(--color-secondary);color:var(--color-dark)}.nav .btn:hover{background:#b9a2fb;border-color:#b9a2fb}.site-header.scrolled{height:70px;box-shadow:var(--shadow-lg)}.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--color-cream);margin:5px 0;transition:.2s}.hero-home{display:grid;grid-template-columns:1.05fr 1fr;min-height:calc(88vh - var(--header-h));background:var(--color-dark)}.hero-home .hh-body{display:flex;flex-direction:column;justify-content:center;padding:var(--space-16) clamp(var(--space-6),5vw,var(--space-16));color:var(--color-cream);position:relative;overflow:hidden}.hero-home .hh-body:after{content:"";position:absolute;left:-12%;bottom:-30%;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(167,139,250,.14),transparent 62%);pointer-events:none}.hero-home .hh-body>*{position:relative;z-index:1}.hero-home .eyebrow{color:var(--color-secondary)}.hero-home h1{font-family:var(--font-heading);font-size:clamp(3rem,6vw,5.4rem);line-height:.98;font-weight:700;color:var(--color-white);margin:0 0 var(--space-5);max-width:14ch;letter-spacing:-1px}.hero-home .subhead{font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:var(--leading-relaxed);color:#ffffffd9;max-width:52ch;margin:0 0 var(--space-8)}.hero-home .cta-row{display:flex;flex-wrap:wrap;gap:var(--space-4)}.hero-home .hh-media{position:relative;min-height:380px}.hero-home .hh-media .img-slot{position:absolute;inset:0;width:100%;height:100%}.crumb-bar{background:var(--color-dark);padding:var(--space-16) var(--space-6) var(--space-12);position:relative;overflow:hidden}.crumb-bar:after{content:"";position:absolute;right:-6%;top:-40%;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(167,139,250,.12),transparent 62%);pointer-events:none}.crumb-bar .wrap{position:relative;z-index:1}.crumb-bar.slim{padding-top:var(--space-8);padding-bottom:var(--space-8)}.crumb-bar.slim .crumbs{margin-bottom:0}.crumb-bar .eyebrow{color:var(--color-secondary)}.crumb-bar h1{font-family:var(--font-heading);font-size:clamp(2.4rem,5vw,3.8rem);line-height:1.02;font-weight:700;color:var(--color-white);margin:var(--space-2) 0 0;max-width:20ch;letter-spacing:-.5px}.crumb-bar .lede{font-size:clamp(1.02rem,1.5vw,1.25rem);line-height:var(--leading-relaxed);color:#fffc;max-width:58ch;margin:var(--space-5) 0 0}.crumbs{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3);margin-bottom:var(--space-5);font-size:var(--text-sm);letter-spacing:.3px;text-transform:uppercase;font-weight:700}.crumbs a{color:#fff9;text-decoration:none}.crumbs a:hover{color:var(--color-secondary)}.crumbs .sep{color:#ffffff4d}.crumbs .here{color:var(--color-secondary)}.features{background:var(--color-white)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-10);max-width:var(--max-w-lg);margin:0 auto}.pillar{text-align:center}.pillar .num{font-family:var(--font-heading);font-style:italic;font-size:2.6rem;font-weight:700;color:var(--color-secondary);line-height:1;margin-bottom:var(--space-4)}.pillar .rule{width:40px;height:2px;background:var(--color-secondary);margin:0 auto var(--space-5)}.pillar h3{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-dark);margin:0 0 var(--space-3);font-weight:700}.pillar p{font-size:var(--text-lg);line-height:var(--leading-loose);color:var(--color-text-light);margin:0}.menu-cards{background:var(--color-cream)}.mc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-6);max-width:var(--max-w-xl);margin:0 auto}.mc-card{position:relative;border-radius:var(--radius-xl);overflow:hidden;min-height:340px;display:flex;align-items:flex-end;box-shadow:var(--shadow-md);text-decoration:none;transition:transform .2s ease,box-shadow .2s ease}.mc-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.mc-card .img-slot{position:absolute;inset:0;width:100%;height:100%;z-index:0}.mc-card .mc-scrim{position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,#110e24eb 6%,#110e2459 55%,#110e240d)}.mc-card .mc-inner{position:relative;z-index:2;padding:var(--space-8);width:100%}.mc-card .mc-kicker{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:700;color:var(--color-secondary);margin:0 0 var(--space-2)}.mc-card h3{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-white);margin:0 0 var(--space-2);font-weight:700;line-height:1.04}.mc-card p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:#ffffffd1;margin:0;max-width:40ch}.mc-card .mc-go{margin-top:var(--space-4);font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-secondary);display:inline-flex;align-items:center;gap:8px;transition:gap .18s ease}.mc-card:hover .mc-go{gap:14px}.stats{background:var(--color-dark);color:var(--color-cream)}.stats .section-head h2{color:var(--color-cream)}.stats .section-head .eyebrow{color:var(--color-secondary)}.stats .section-head p{color:#ffffffb3}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-8);max-width:var(--max-w-xl);margin:0 auto}.stat{text-align:center;padding:0 var(--space-2);position:relative}.stat:not(:last-child):after{content:"";position:absolute;top:12%;bottom:12%;right:calc(var(--space-8) * -.5);width:1px;background:#ffffff29}.stat .num{font-family:var(--font-heading);font-size:clamp(2.8rem,5vw,3.8rem);font-weight:700;color:var(--color-secondary);line-height:1}.stat .lbl{font-size:var(--text-base);color:#ffffffc7;margin-top:var(--space-3);line-height:var(--leading-snug)}.t-slider-sec{background:var(--color-white)}.t-slider{max-width:var(--max-w-md);margin:0 auto;position:relative;text-align:center}.t-stage{position:relative;min-height:300px}.t-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .4s ease,visibility .4s ease;display:flex;flex-direction:column;align-items:center;justify-content:center}.t-slide.active{opacity:1;visibility:visible}.t-slide .stars{color:var(--color-secondary);font-size:var(--text-lg);letter-spacing:4px;margin-bottom:var(--space-6)}.t-slide blockquote{font-family:var(--font-heading);font-style:italic;font-size:clamp(1.6rem,3.2vw,var(--text-4xl));line-height:var(--leading-snug);color:var(--color-dark);margin:0 0 var(--space-8);max-width:22ch}.t-slide .who{display:flex;align-items:center;gap:var(--space-4)}.t-slide .avatar{width:52px;height:52px;border-radius:var(--radius-full);flex:none;background:var(--color-primary);color:var(--color-cream);display:grid;place-items:center;font-family:var(--font-heading);font-weight:700;font-size:var(--text-xl)}.t-slide .meta{text-align:left}.t-slide .meta b{display:block;font-size:var(--text-base);color:var(--color-dark);font-weight:700}.t-slide .meta span{font-size:var(--text-sm);color:var(--color-text-light)}.t-dots{display:flex;justify-content:center;gap:var(--space-3);margin-top:var(--space-10)}.t-dot{width:10px;height:10px;border-radius:50%;border:0;padding:0;cursor:pointer;background:var(--color-border);transition:background .2s ease,transform .2s ease}.t-dot.active{background:var(--color-primary);transform:scale(1.25)}.cta-banner{background:var(--color-primary);color:var(--color-white);text-align:center}.cta-banner .wrap{max-width:760px}.cta-banner h2{font-family:var(--font-heading);font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:700;margin:0 0 var(--space-4);line-height:var(--leading-tight);letter-spacing:-.5px}.cta-banner p{font-size:var(--text-xl);line-height:var(--leading-relaxed);max-width:54ch;margin:0 auto var(--space-8);color:#ffffffe6}.cta-banner .btn{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-dark)}.cta-banner .btn:hover{background:var(--color-white);border-color:var(--color-white);color:var(--color-primary)}.shop{background:var(--color-cream)}.menu-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-3);margin:0 auto var(--space-12);max-width:var(--max-w-lg)}.menu-tab{font-family:var(--font-body);font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-text-light);background:transparent;border:1px solid var(--color-border);border-radius:var(--radius-full);padding:var(--space-2) var(--space-6);cursor:pointer;transition:all .18s ease}.menu-tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.menu-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.menu-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6);max-width:var(--max-w-xl);margin:0 auto}.m-card{display:flex;flex-direction:column;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.m-card.hide{display:none}.m-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--color-secondary)}.m-card .img-slot{width:100%;aspect-ratio:4/3;display:block}.m-body{padding:var(--space-5) var(--space-6) var(--space-6);display:flex;flex-direction:column;flex:1}.m-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-2)}.m-head h3{font-family:var(--font-heading);font-size:var(--text-xl);color:var(--color-dark);margin:0;font-weight:700;line-height:var(--leading-snug)}.m-price{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:700;color:var(--color-primary);flex:none}.m-body p{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:var(--color-text-light);margin:0 0 var(--space-4)}.m-tag{margin-top:auto;align-self:flex-start;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:700;color:var(--color-primary);background:var(--ind-tint);padding:4px 10px;border-radius:var(--radius-full)}.feature-alt{background:var(--color-white)}.fa-rows{display:flex;flex-direction:column;gap:var(--space-16);max-width:var(--max-w-xl);margin:0 auto}.fa-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-12);align-items:center}.fa-row.flip .fa-media{order:2}.fa-media{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4/3}.fa-media .img-slot{position:absolute;inset:0;width:100%;height:100%}.fa-body .eyebrow{color:var(--color-primary)}.fa-body h3{font-family:var(--font-heading);font-size:clamp(1.7rem,2.8vw,var(--text-3xl));color:var(--color-dark);margin:0 0 var(--space-4);font-weight:700;line-height:var(--leading-snug)}.fa-body p{font-size:var(--text-lg);line-height:var(--leading-loose);color:var(--color-text-light);margin:0}.service-cards{background:var(--color-cream)}.sc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);max-width:var(--max-w-xl);margin:0 auto}.sc-card{display:flex;flex-direction:column;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.sc-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg);border-color:var(--color-secondary)}.sc-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.sc-ico{width:48px;height:48px;flex:none;border-radius:var(--radius-md);background:var(--ind-tint);color:var(--color-primary);display:grid;place-items:center;font-family:var(--font-heading);font-style:italic;font-size:1.5rem;font-weight:700}.sc-price{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:700;padding:5px 12px;border-radius:var(--radius-full);background:var(--lav-tint);color:var(--color-primary-dark)}.sc-price.free{background:#4338ca1a}.sc-when{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:700;color:var(--color-primary);margin:0 0 var(--space-2)}.sc-card h3{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-dark);margin:0 0 var(--space-3);font-weight:700;line-height:var(--leading-snug)}.sc-card p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-light);margin:0 0 var(--space-6);flex:1}.sc-link{font-size:var(--text-sm);font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-primary);text-decoration:none;display:inline-flex;align-items:center;gap:8px;transition:gap .18s ease}.sc-link:hover{gap:14px}.process{background:var(--color-white)}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-8);max-width:var(--max-w-xl);margin:0 auto;position:relative}.steps:before{content:"";position:absolute;top:26px;left:12%;right:12%;height:2px;background:var(--color-border);z-index:0}.step{text-align:center;position:relative;z-index:1}.step .badge{width:54px;height:54px;margin:0 auto var(--space-5);border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-white);display:grid;place-items:center;font-family:var(--font-heading);font-size:var(--text-2xl);font-weight:700;box-shadow:0 0 0 6px var(--color-white)}.step h3{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-dark);margin:0 0 var(--space-2);font-weight:700}.step p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-light);margin:0}.faq{background:var(--color-cream)}.faq-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-6);margin:0 auto var(--space-10)}.faq-tab{font-family:var(--font-body);font-size:var(--text-base);font-weight:700;color:var(--color-text-light);background:transparent;border:0;cursor:pointer;padding:var(--space-2) 0;position:relative}.faq-tab:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--color-primary);transform:scaleX(0);transition:transform .2s ease}.faq-tab:hover,.faq-tab.active{color:var(--color-primary)}.faq-tab.active:after{transform:scaleX(1)}.faq-panel{display:none}.faq-panel.active{display:block}.faq-list{max-width:var(--max-w-md);margin:0 auto;display:flex;flex-direction:column;gap:var(--space-4)}.faq-item{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease}.faq-item[open]{border-color:var(--color-primary);box-shadow:var(--shadow-md)}.faq-item summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-5) var(--space-8);font-family:var(--font-heading);font-size:var(--text-xl);font-weight:600;color:var(--color-dark)}.faq-item summary::-webkit-details-marker{display:none}.faq-item .mk{flex:none;width:26px;height:26px;position:relative}.faq-item .mk:before,.faq-item .mk:after{content:"";position:absolute;top:50%;left:50%;background:var(--color-primary);transition:transform .2s ease}.faq-item .mk:before{width:14px;height:2px;transform:translate(-50%,-50%)}.faq-item .mk:after{width:2px;height:14px;transform:translate(-50%,-50%)}.faq-item[open] .mk:after{transform:translate(-50%,-50%) scaleY(0)}.faq-item .ans{padding:0 var(--space-8) var(--space-6)}.faq-item .ans p{font-size:var(--text-lg);line-height:var(--leading-loose);color:var(--color-text-light);margin:0}.hero-split{display:grid;grid-template-columns:1fr 1fr;min-height:64vh}.hero-split .hs-body{background:var(--color-dark);color:var(--color-cream);display:flex;flex-direction:column;justify-content:center;padding:var(--space-16) clamp(var(--space-6),5vw,var(--space-12))}.hero-split .hs-body .eyebrow{color:var(--color-secondary)}.hero-split .hs-body h1{font-family:var(--font-heading);font-size:clamp(2.4rem,4.2vw,3.6rem);font-weight:700;color:var(--color-white);margin:0 0 var(--space-5);line-height:1.03;letter-spacing:-.5px}.hero-split .hs-body .lede{font-size:var(--text-xl);line-height:var(--leading-relaxed);color:#ffffffd9;margin:0 0 var(--space-8)}.policy{list-style:none;margin:0 0 var(--space-8);padding:0;display:flex;flex-direction:column;gap:var(--space-4)}.policy li{display:flex;gap:var(--space-4);font-size:var(--text-base);line-height:var(--leading-relaxed);color:#ffffffd1}.policy li:before{content:"";flex:none;width:8px;height:8px;margin-top:9px;border-radius:50%;background:var(--color-secondary)}.hero-split .hs-media{position:relative;min-height:360px}.hero-split .hs-media .img-slot{position:absolute;inset:0;width:100%;height:100%}.gallery{background:var(--color-cream)}.gal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);max-width:var(--max-w-xl);margin:0 auto}.gal-item{position:relative;border:0;padding:0;cursor:pointer;border-radius:var(--radius-md);overflow:hidden;background:var(--color-border);aspect-ratio:1/1}.gal-item.wide{grid-column:span 2;aspect-ratio:2/1}.gal-item .img-slot{position:absolute;inset:0;width:100%;height:100%;transition:transform .3s ease}.gal-item:hover .img-slot{transform:scale(1.05)}.gal-item .gal-cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:var(--space-6) var(--space-4) var(--space-3);text-align:left;font-size:var(--text-sm);font-weight:700;color:var(--color-white);background:linear-gradient(0deg,rgba(17,14,36,.85),transparent);opacity:0;transition:opacity .2s ease}.gal-item:hover .gal-cap{opacity:1}.lightbox{position:fixed;inset:0;z-index:200;background:#110e24f0;display:none;align-items:center;justify-content:center;padding:var(--space-8)}.lightbox.open{display:flex}.lightbox .lb-frame{position:relative;width:min(1000px,92vw);height:min(72vh,720px);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-lg)}.lightbox .lb-frame .img-slot{position:absolute;inset:0;width:100%;height:100%}.lightbox .lb-cap{position:absolute;left:50%;bottom:var(--space-6);transform:translate(-50%);z-index:205;color:var(--color-cream);font-size:var(--text-base);font-weight:600;letter-spacing:.3px;text-shadow:0 1px 8px rgba(0,0,0,.6)}.lb-btn{position:absolute;z-index:205;width:52px;height:52px;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.3);background:#ffffff14;color:var(--color-cream);font-size:1.5rem;cursor:pointer;display:grid;place-items:center;transition:background .18s ease}.lb-btn:hover{background:#fff3}.lb-close{top:var(--space-6);right:var(--space-6)}.lb-prev{top:50%;left:var(--space-6);transform:translateY(-50%)}.lb-next{top:50%;right:var(--space-6);transform:translateY(-50%)}.pricing{background:var(--color-white)}.tier-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-6);max-width:var(--max-w-lg);margin:0 auto;align-items:stretch}.tier{display:flex;flex-direction:column;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-8)}.tier.popular{border:2px solid var(--color-primary);box-shadow:var(--shadow-lg);transform:translateY(-8px);position:relative}.tier .badge{position:absolute;top:-14px;left:50%;transform:translate(-50%);background:var(--color-primary);color:var(--color-white);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:700;padding:5px 16px;border-radius:var(--radius-full);white-space:nowrap}.tier h3{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-dark);margin:0 0 var(--space-2);font-weight:700}.tier .tagline{font-size:var(--text-sm);color:var(--color-text-light);margin:0 0 var(--space-5);line-height:var(--leading-relaxed);min-height:40px}.tier .amount{font-family:var(--font-heading);font-size:3rem;font-weight:700;color:var(--color-primary);line-height:1;margin-bottom:var(--space-6)}.tier .amount .per{font-family:var(--font-body);font-size:var(--text-base);font-weight:500;color:var(--color-text-light)}.tier ul{list-style:none;margin:0 0 var(--space-8);padding:0;display:flex;flex-direction:column;gap:var(--space-3);flex:1}.tier li{display:flex;gap:var(--space-3);font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text)}.tier li:before{content:"✓";flex:none;color:var(--color-primary);font-weight:700}.tier .btn{width:100%;justify-content:center}.tier:not(.popular) .btn{background:transparent;color:var(--color-primary)}.tier:not(.popular) .btn:hover{background:var(--color-primary);color:var(--color-white)}.spotlight{background:var(--color-cream)}.spotlight-grid{display:grid;grid-template-columns:.85fr 1fr;gap:var(--space-12);max-width:var(--max-w-xl);margin:0 auto;align-items:center}.spotlight-media{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-lg);aspect-ratio:4/5}.spotlight-media .img-slot{position:absolute;inset:0;width:100%;height:100%}.spotlight-media .badge{position:absolute;left:var(--space-5);bottom:var(--space-5);z-index:2;font-family:var(--font-heading);font-style:italic;font-size:var(--text-lg);color:var(--color-cream);background:#110e24cc;padding:8px 18px;border-radius:var(--radius-full);backdrop-filter:blur(2px)}.spotlight-body .eyebrow{color:var(--color-primary)}.spotlight-body h2{font-family:var(--font-heading);font-size:clamp(2rem,4vw,var(--text-4xl));color:var(--color-dark);margin:0 0 var(--space-6);font-weight:700;line-height:var(--leading-snug)}.spotlight-body p{font-size:var(--text-lg);line-height:var(--leading-loose);color:var(--color-text);margin:0 0 var(--space-5)}.spotlight-body p:last-child{margin-bottom:0}.spotlight-body .sig{font-family:var(--font-heading);font-style:italic;font-size:var(--text-2xl);color:var(--color-primary);margin-top:var(--space-6)}.team{background:var(--color-white)}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-6);max-width:var(--max-w-xl);margin:0 auto}.team-card{text-align:left}.team-card .img-slot{width:100%;aspect-ratio:3/4;border-radius:var(--radius-xl);display:block;margin-bottom:var(--space-5);box-shadow:var(--shadow-sm)}.team-card h3{font-family:var(--font-heading);font-size:var(--text-2xl);color:var(--color-dark);margin:0 0 2px;font-weight:700}.team-card .role{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:700;color:var(--color-primary);margin:0 0 var(--space-3)}.team-card p{font-size:var(--text-base);line-height:var(--leading-relaxed);color:var(--color-text-light);margin:0}.contact-split{background:var(--color-cream)}.cs-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:var(--space-12);max-width:var(--max-w-xl);margin:0 auto;align-items:start}.res-form{background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-10);box-shadow:var(--shadow-sm)}.res-form h3{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-dark);margin:0 0 var(--space-6)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5)}.field{display:flex;flex-direction:column;gap:var(--space-2)}.field.full{grid-column:1 / -1}.field label{font-size:var(--text-sm);font-weight:700;color:var(--color-dark)}.field label .req{color:var(--color-primary)}.field input,.field select,.field textarea{font-family:var(--font-body);font-size:var(--text-base);color:var(--color-text);background:var(--color-cream);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);transition:border-color .18s ease,box-shadow .18s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #4338ca1f}.field textarea{resize:vertical;min-height:110px}.res-form .btn{width:100%;justify-content:center;margin-top:var(--space-6)}.res-form .fineprint{font-size:var(--text-sm);color:var(--color-text-light);text-align:center;margin:var(--space-4) 0 0}.cs-info{display:flex;flex-direction:column;gap:var(--space-2)}.cs-info h3{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-dark);margin:0 0 var(--space-4)}.contact-row{display:flex;gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border)}.contact-row:last-of-type{border-bottom:0}.contact-row .k{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);font-weight:700;color:var(--color-primary);width:84px;flex:none;padding-top:3px}.contact-row .v{font-size:var(--text-lg);color:var(--color-text);line-height:var(--leading-relaxed)}.contact-row .v a{text-decoration:none}.contact-row .v a:hover{color:var(--color-primary)}.mapembed{background:var(--color-white)}.mapembed-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--space-10);max-width:var(--max-w-xl);margin:0 auto;align-items:stretch}.map-box{position:relative;border-radius:var(--radius-xl);overflow:hidden;border:1px solid var(--color-border);min-height:440px;background:repeating-linear-gradient(0deg,rgba(17,14,36,.05) 0 1px,transparent 1px 56px),repeating-linear-gradient(90deg,rgba(17,14,36,.05) 0 1px,transparent 1px 56px),linear-gradient(135deg,#e9e5fb,#ded7f7)}.map-box .road{position:absolute;background:var(--color-white);opacity:.9}.map-box .river{position:absolute;background:#7896be73}.map-box .pin{position:absolute;top:50%;left:50%;transform:translate(-50%,-100%);width:24px;height:24px;border-radius:50% 50% 50% 0;background:var(--color-primary);rotate:-45deg;box-shadow:var(--shadow-md);z-index:2}.map-box .pin:after{content:"";position:absolute;inset:6px;background:var(--color-cream);border-radius:50%}.map-box .maplbl{position:absolute;left:16px;bottom:16px;z-index:2;font-family:var(--font-body);font-size:11px;letter-spacing:var(--tracking-normal);text-transform:uppercase;font-weight:700;color:var(--color-text-light);background:#ffffffe6;padding:6px 12px;border-radius:var(--radius-full)}.mapembed .contact-card{display:flex;flex-direction:column;justify-content:center}.mapembed .contact-card h3{font-family:var(--font-heading);font-size:var(--text-3xl);color:var(--color-dark);margin:0 0 var(--space-6)}.hours-sec{background:var(--color-cream)}.hours-card{max-width:var(--max-w-sm);margin:0 auto;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-sm)}.hours-status{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-8);background:var(--color-dark);color:var(--color-cream)}.hours-status .dot{width:10px;height:10px;border-radius:50%;background:var(--color-secondary);box-shadow:0 0 0 4px #a78bfa40}.hours-status .dot.closed{background:#8a86a8;box-shadow:0 0 0 4px #8a86a833}.hours-status b{font-family:var(--font-heading);font-size:var(--text-xl)}.hours-status span{font-size:var(--text-sm);color:#ffffffb3;margin-left:auto}.hours-rows{padding:var(--space-4) var(--space-8) var(--space-6)}.hours-row{display:flex;justify-content:space-between;align-items:baseline;padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);font-size:var(--text-lg)}.hours-row:last-child{border-bottom:0}.hours-row.today{font-weight:700}.hours-row .day{color:var(--color-text)}.hours-row.today .day{color:var(--color-primary)}.hours-row .time{color:var(--color-text-light)}.hours-row.closed-day .time{color:#a29ec0}.footer-cta{position:relative;overflow:hidden;background:var(--color-primary);color:var(--color-cream);text-align:center;padding:var(--space-16) var(--space-6)}.footer-cta:after{content:"";position:absolute;right:-8%;top:-60%;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(167,139,250,.3),transparent 60%);pointer-events:none}.footer-cta .wrap{position:relative;z-index:2;max-width:760px}.footer-cta .eyebrow{color:var(--color-secondary)}.footer-cta h2{font-family:var(--font-heading);font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:700;margin:0 0 var(--space-4);line-height:var(--leading-tight);color:var(--color-white);letter-spacing:-.5px}.footer-cta p{font-size:var(--text-xl);line-height:var(--leading-relaxed);max-width:52ch;margin:0 auto var(--space-8);color:#ffffffe6}.footer-cta .btn{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-dark)}.footer-cta .btn:hover{background:var(--color-white);border-color:var(--color-white);color:var(--color-primary)}.site-footer{background:var(--color-dark);color:#ffffffb8;padding:var(--space-16) var(--space-6) var(--space-8)}.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.3fr;gap:var(--space-10);max-width:var(--max-w-xl);margin:0 auto var(--space-12)}.footer-grid .brand .name{color:var(--color-cream)}.foot-blurb{font-size:var(--text-base);line-height:var(--leading-loose);margin:var(--space-5) 0 var(--space-6);max-width:40ch}.foot-social{display:flex;gap:var(--space-3)}.foot-social a{width:40px;height:40px;border-radius:var(--radius-full);border:1px solid rgba(255,255,255,.2);display:grid;place-items:center;font-family:var(--font-heading);font-size:var(--text-base);font-style:italic;color:var(--color-cream);text-decoration:none;transition:all .18s ease}.foot-social a:hover{background:var(--color-secondary);border-color:var(--color-secondary);color:var(--color-dark)}.foot-col h4{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-secondary);margin:0 0 var(--space-5);font-weight:700}.foot-col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.foot-col a{text-decoration:none;font-size:var(--text-base);color:#ffffffb8}.foot-col a:hover{color:var(--color-cream)}.foot-col p{margin:0 0 var(--space-3);font-size:var(--text-base);line-height:var(--leading-relaxed)}.foot-col p a{text-decoration:none}.foot-col p a:hover{color:var(--color-secondary)}.foot-news h4{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--color-secondary);margin:0 0 var(--space-3);font-weight:700}.foot-news h4.spaced{margin-top:var(--space-6)}.foot-news p{font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0 0 var(--space-4)}.foot-news p.hours{margin-top:var(--space-4)}.foot-news p.hours strong{color:var(--color-cream)}.news-form{display:flex;gap:var(--space-2)}.news-form input{flex:1;min-width:0;font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-cream);background:transparent;border:0;border-bottom:1px solid rgba(255,255,255,.35);padding:var(--space-2) 0}.news-form input::placeholder{color:#ffffff73}.news-form input:focus{outline:none;border-bottom-color:var(--color-secondary)}.news-form button{flex:none;border:0;cursor:pointer;background:var(--color-primary);color:var(--color-white);font-family:var(--font-body);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:var(--tracking-wide);padding:0 var(--space-5);border-radius:var(--radius-md);transition:background .18s ease}.news-form button:hover{background:var(--color-secondary);color:var(--color-dark)}.foot-bar{max-width:var(--max-w-xl);margin:0 auto;padding-top:var(--space-8);border-top:1px solid rgba(255,255,255,.12);display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-4);font-size:var(--text-sm)}.foot-bar .tagline{font-family:var(--font-heading);font-style:italic;font-size:var(--text-base);color:var(--color-secondary)}.foot-concept{max-width:var(--max-w-xl);margin:0 auto;padding-top:var(--space-5);font-size:var(--text-xs);line-height:var(--leading-relaxed);color:#ffffff6b}.foot-concept a{color:#ffffff9e;text-decoration:underline;text-underline-offset:2px}.foot-concept a:hover{color:var(--color-cream)}@media(max-width:980px){.feature-grid,.menu-grid,.team-grid,.gal-grid{grid-template-columns:repeat(2,1fr)}.mc-grid,.sc-grid,.tier-grid{grid-template-columns:1fr}.tier.popular{transform:none}.spotlight-grid,.fa-row,.cs-grid,.mapembed-grid,.hero-split,.hero-home{grid-template-columns:1fr}.fa-row.flip .fa-media{order:0}.spotlight-media{aspect-ratio:16/10}.steps{grid-template-columns:repeat(2,1fr);gap:var(--space-10)}.steps:before{display:none}.stat-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-10)}.stat:nth-child(2):after{display:none}.footer-grid{grid-template-columns:1fr 1fr}.hero-split .hs-media,.hero-home .hh-media{min-height:320px}}@media(max-width:720px){.nav .lnk{display:none}.nav-toggle{display:block}.nav.open{position:fixed;top:var(--header-h);left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--color-dark);padding:var(--space-4) var(--space-6) var(--space-6);box-shadow:var(--shadow-lg)}.nav.open .lnk{display:block;padding:var(--space-4) 0;border-bottom:1px solid rgba(255,255,255,.1)}.nav.open .btn{margin-top:var(--space-4);justify-content:center}.feature-grid,.menu-grid,.team-grid,.gal-grid,.form-grid{grid-template-columns:1fr}.gal-item.wide{grid-column:span 1;aspect-ratio:1/1}.stat-grid,.steps{grid-template-columns:1fr;gap:var(--space-8)}.stat:not(:last-child):after{display:none}.footer-grid{grid-template-columns:1fr;gap:var(--space-8)}.section{padding:var(--space-12) var(--space-5)}.res-form{padding:var(--space-6)}}.img-slot{position:relative;overflow:hidden;background:linear-gradient(135deg,#4338ca1a,#a78bfa2e),var(--color-border);border-radius:inherit}.img-slot:before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(45deg,rgba(255,255,255,.18) 0 2px,transparent 2px 10px);pointer-events:none}.img-slot>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.img-slot.contain>img{object-fit:contain}.img-slot .slot-label{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-5);text-align:center;font-family:var(--font-body);font-size:var(--text-sm);line-height:var(--leading-relaxed);font-weight:600;letter-spacing:.2px;color:#1e1b4b8c}.img-slot .slot-label svg{opacity:.4}.img-slot.has-image .slot-label{display:none}.img-slot.has-image:before{display:none}
