*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-size:16px}body{background:#fdf8f8;color:#2d0a10;font-family:DM Sans,sans-serif;overflow-x:hidden;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{text-decoration:none}button{font-family:inherit;cursor:pointer}input,textarea,select{font-family:inherit;font-size:1rem;outline:none}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#fdf8f8}::-webkit-scrollbar-thumb{background:#7c1d2e;border-radius:3px}:root{--burg: #7c1d2e;--burg2: #9b2335;--burg3: #c0404f;--cream: #fdf8f8;--cream2: #f5ede0;--cream3: #ecddc8;--dark: #2d0a10;--mid: #6b5257;--light: #a08085;--gold: #c27b3a;--gold2: #d4904f;--shadow: 0 4px 24px rgba(124,29,46,.1);--shadow-lg: 0 16px 52px rgba(124,29,46,.15)}.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s ease,transform .65s ease}.reveal.show{opacity:1;transform:translateY(0)}.revL{opacity:0;transform:translate(-28px);transition:opacity .65s ease,transform .65s ease}.revL.show{opacity:1;transform:translate(0)}.revR{opacity:0;transform:translate(28px);transition:opacity .65s ease,transform .65s ease}.revR.show{opacity:1;transform:translate(0)}@keyframes fadeUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.65;transform:scale(.95)}}@keyframes shimmer{0%,to{opacity:.6}50%{opacity:1}}@keyframes lineG{0%{width:0}to{width:52px}}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes heroImageFade{0%{opacity:.35;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes marqueeScrollRev{0%{transform:translate(-50%)}to{transform:translate(0)}}.hero-slide-img{animation:heroImageFade .55s ease both}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px;border-radius:4px;border:none;cursor:pointer;font-family:DM Sans,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:all .28s;-webkit-tap-highlight-color:transparent;white-space:nowrap}.btn-main{background:var(--burg);color:#fff;box-shadow:0 4px 18px #7c1d2e4d}.btn-main:hover{background:var(--burg2);transform:translateY(-2px);box-shadow:0 10px 28px #7c1d2e66}.btn-main:active{transform:translateY(0)}.btn-outline{background:transparent;color:var(--burg);border:2px solid var(--burg)}.btn-outline:hover{background:var(--burg);color:#fff;box-shadow:0 8px 24px #7c1d2e4d}.btn-outline:active{background:var(--burg2);color:#fff}.btn-full{width:100%}.btn-gold{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 28px;border-radius:4px;border:none;cursor:pointer;font-family:DM Sans,sans-serif;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;background:var(--gold);color:#fff;box-shadow:0 4px 18px #c27b3a59;transition:all .28s}.btn-gold:hover{background:var(--gold2);transform:translateY(-2px)}.card{background:#fff;border-radius:8px;border:1px solid rgba(124,29,46,.09);transition:transform .3s,box-shadow .3s,border-color .3s}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:#7c1d2e38}.pill{display:inline-flex;align-items:center;gap:7px;padding:6px 14px;border-radius:2px;background:#7c1d2e12;border-left:3px solid var(--burg);font-size:.67rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--burg)}.site-mark{width:38px;height:38px;border-radius:8px;display:block;flex:0 0 auto;box-shadow:0 8px 20px #7c1d2e2e}.footer-mark{width:37px;height:37px;box-shadow:none}section{padding:90px 80px}.div-line{width:52px;height:3px;background:var(--burg);border-radius:2px;margin-bottom:36px}.form-input{width:100%;padding:12px 16px;border-radius:4px;border:1.5px solid rgba(124,29,46,.18);background:#fff;color:var(--dark);font-size:.88rem;transition:border-color .25s,box-shadow .25s}.form-input:focus{border-color:var(--burg);box-shadow:0 0 0 3px #7c1d2e1a}.form-input::placeholder{color:var(--light)}.form-label{display:block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);margin-bottom:6px}.form-select{width:100%;padding:12px 16px;border-radius:4px;border:1.5px solid rgba(124,29,46,.18);background:#fff;color:var(--dark);font-size:.88rem;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;transition:border-color .25s}.form-select:focus{border-color:var(--burg);box-shadow:0 0 0 3px #7c1d2e1a}.star{font-size:1.4rem;cursor:pointer;color:#ddd;transition:color .15s;-webkit-user-select:none;user-select:none}.star.active{color:#f59e0b}.rating-bar-bg{background:#f0e0e0;border-radius:4px;height:8px;flex:1;overflow:hidden}.rating-bar-fill{height:100%;background:var(--burg);border-radius:4px;transition:width .6s ease}.gallery-cover{position:relative;border-radius:10px;overflow:hidden;cursor:pointer;height:440px}.gallery-cover img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.gallery-cover:hover img{transform:scale(1.04)}.lb-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0205ed;z-index:9999;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);animation:fadeIn .3s ease}.lb-box{position:relative;width:min(90vw,860px);animation:zoomIn .3s ease}.lb-img-wrap{width:100%;height:min(80vh,560px);border-radius:8px;overflow:hidden;position:relative}.lb-img-wrap img{width:100%;height:100%;object-fit:contain;background:#1a0508}.lb-caption{margin-top:14px;text-align:center}.lb-close{position:absolute;top:-44px;right:0;width:36px;height:36px;border-radius:50%;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:#fff;font-size:1rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.lb-close:hover{background:var(--burg)}.lb-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;background:#ffffff1f;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .25s;z-index:2}.lb-arrow:hover{background:var(--burg);border-color:var(--burg)}.lb-arrow.prev{left:-60px}.lb-arrow.next{right:-60px}.lb-dots{display:flex;gap:7px;justify-content:center;margin-top:16px}.lb-dot{width:8px;height:8px;border-radius:50%;background:#ffffff40;cursor:pointer;transition:all .25s;border:none}.lb-dot.active{background:var(--burg);transform:scale(1.3)}.vid-card{cursor:pointer}.vid-card:hover .vid-play-btn{transform:scale(1.1)}.review-cards-grid{grid-template-columns:repeat(3,1fr)!important}.review-page{min-height:100vh;background:linear-gradient(180deg,#fdf8f8,#fff 58%,#f5ede0);padding-top:86px}.review-page-section{padding:44px 18px 72px!important}.review-page-card{width:min(100%,620px);margin:0 auto;overflow:hidden;box-shadow:0 22px 70px #7c1d2e29}.review-page-card:hover{transform:none}.review-page-accent{height:5px;background:var(--burg)}.review-page-card-body{padding:46px 52px}.review-page-title{font-family:EB Garamond,serif;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:700;line-height:1.1;color:var(--dark);margin-bottom:10px}.review-page-subtitle{color:var(--mid);font-size:.96rem;line-height:1.55;margin-bottom:30px}.review-page-field{margin-bottom:20px}.review-page-input{min-height:62px;border-color:#7c1d2e33;box-shadow:inset 0 0 0 1px #7c1d2e0a;font-size:1rem;padding:16px 20px}.review-page-textarea{min-height:136px;resize:vertical}.review-page-stars .star{font-size:2rem}.review-page-recommend{display:flex;align-items:center;gap:9px;color:var(--dark);font-size:1rem;font-weight:600;margin:4px 0 28px}.review-page-recommend input{width:20px;height:20px;accent-color:var(--burg)}.review-page-actions{display:flex;gap:14px;flex-wrap:wrap}.review-page-msg{border-radius:6px;font-size:.86rem;font-weight:600;line-height:1.5;margin-bottom:22px;padding:13px 16px}.review-page-msg.ok{background:#22c55e14;border:1px solid rgba(34,197,94,.3);color:#15803d}.review-page-msg.error{background:#ef444414;border:1px solid rgba(239,68,68,.3);color:#dc2626}@media (max-width: 1280px){section{padding:80px 60px}.nav-inner{padding:18px 60px!important}}@media (min-width: 769px) and (max-width: 1024px){section{padding:70px 40px}.nav-inner{padding:16px 40px!important}.hero-left{padding:110px 40px 60px!important}.about-grid{gap:40px!important}.awards-grid{grid-template-columns:repeat(2,1fr)!important}.media-grid{grid-template-columns:1fr 1fr!important}.footer-grid{grid-template-columns:1fr 1fr!important;gap:28px!important}.review-cards-grid,.vid-grid{grid-template-columns:repeat(2,1fr)!important}.vid-banner{grid-template-columns:1fr!important}.vid-stats{justify-content:flex-start!important;margin-top:14px}}@media (max-width: 768px){section{padding:52px 16px!important}h1{font-size:clamp(2.4rem,9vw,3.6rem)!important}.nav-links,.nav-book-btn{display:none!important}.nav-burger{display:flex!important}.nav-inner{padding:13px 16px!important}.mobile-menu{display:flex!important;flex-direction:column;position:fixed;top:0;left:0;right:0;bottom:0;background:var(--dark);z-index:1100;padding:72px 24px 36px;gap:0;animation:slideDown .3s ease;overflow-y:auto}.mobile-menu a{font-size:1.15rem;font-family:EB Garamond,serif;font-weight:600;color:#fffc;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.07);display:block}.mobile-menu a:active{color:var(--burg3)}.mobile-menu-close{position:absolute;top:16px;right:16px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1rem;cursor:pointer}.mobile-menu .mob-book{margin-top:14px;background:var(--burg);color:#fff!important;border-radius:4px;text-align:center;padding:14px!important;border-bottom:none!important;font-size:.9rem!important;font-family:DM Sans,sans-serif!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.hero-inner{flex-direction:column!important;min-height:auto!important}.hero-left{flex:none!important;width:100%!important;padding:16px 16px 28px!important}.hero-right{flex:none!important;width:100%!important;height:630px!important}.hero-right img{border-radius:0!important;height:100%!important;object-position:top center!important}.hero-slide-img{width:100%!important}.float-card{display:none!important}.hero-stats{gap:18px!important;flex-wrap:wrap!important;margin-top:28px!important}.hero-stats>div{flex:1 1 auto;min-width:80px}.trust-chips{gap:6px!important}.trust-chips span{font-size:.6rem!important;padding:4px 8px!important}.btn-row{flex-direction:column!important;gap:10px!important}.btn-row .btn{width:100%!important;text-align:center}.stats-bar-grid{grid-template-columns:repeat(3,1fr)!important;padding:20px 12px!important;gap:4px}.stats-bar-grid>div{border-right:none!important;padding:8px 4px!important}.stats-bar-grid>div:nth-child(-n+3){border-bottom:1px solid rgba(255,255,255,.1);padding-bottom:12px}.stats-bar-grid>div:nth-child(n+4){padding-top:12px}.about-grid{grid-template-columns:1fr!important;gap:32px!important}.about-cred-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}.about-btn-row{flex-direction:column;gap:10px}.about-btn-row .btn{width:100%}.spec-tabs{gap:6px!important}.spec-tabs button{font-size:.65rem!important;padding:6px 9px!important}.spec-panel{grid-template-columns:1fr!important}.spec-sidebar{display:none!important}.spec-panel>div:first-child{padding:24px 20px!important}#media{padding:52px 0 60px!important}#media>div:first-child{padding:0 16px!important}#media>div:last-child{margin:32px 16px 0!important}.yt-grid{grid-template-columns:1fr!important;gap:20px!important}.yt-grid>div:last-child{display:none}.awards-grid{grid-template-columns:1fr!important;gap:14px!important}.awards-grid .card>div:first-child{height:230px!important}.awards-grid .card img{height:100%!important}.edu-grid{grid-template-columns:1fr!important;gap:20px!important}.edu-detail{display:none!important}#vip{padding:52px 0 60px!important}#vip>div:first-child{padding:0 16px!important}#gallery{padding:52px 0!important}#gallery>div:first-child{padding:0 16px!important}#gallery>div:nth-child(3){padding:0 16px!important;text-align:center;margin-top:20px}.gallery-cover{height:200px!important}.lb-arrow.prev{left:4px!important}.lb-arrow.next{right:4px!important}.lb-arrow{width:34px!important;height:34px!important;font-size:.9rem!important}.lb-img-wrap{height:min(60vh,300px)!important}#testimonials{padding:52px 0 60px!important}#testimonials>div{padding:0 16px!important}#testimonials>div:last-child{margin:32px 16px 0!important}.vid-tab-row{overflow-x:auto;-webkit-overflow-scrolling:touch}.vid-tab-row>div{flex-wrap:nowrap!important}.vid-banner{grid-template-columns:1fr!important;padding:18px 16px!important}.vid-stats{gap:16px!important;flex-wrap:wrap!important;justify-content:flex-start!important;margin-top:14px}.vid-grid{grid-template-columns:1fr!important;gap:14px!important}.review-cards-grid{grid-template-columns:1fr!important}.review-form-grid{grid-template-columns:1fr!important;gap:12px!important}.review-page{padding-top:64px}.review-page-section{padding:32px 17px 72px!important}.review-page-card{border-radius:6px}.review-page-card-body{padding:50px 50px 44px}.review-page-title{font-size:1.85rem!important}.review-page-subtitle{font-size:.95rem;margin-bottom:30px}.review-page-field{margin-bottom:20px}.review-page-input{min-height:61px;padding:16px 20px}.review-page-textarea{min-height:134px}.review-page-actions .btn{width:auto!important;min-width:136px}.revL>div[style*="display:flex"][style*="gap:0"]{flex-direction:column!important}.appt-grid{grid-template-columns:1fr!important;gap:24px!important}.appt-grid-2col{grid-template-columns:1fr!important;gap:12px!important}.appt-grid-3col{grid-template-columns:1fr 1fr!important;gap:12px!important}.appt-grid>div:last-child>div{padding:22px 16px!important}.consult-link-row{gap:8px!important}.consult-link-row a{font-size:.72rem!important;padding:8px 12px!important}.footer-grid{grid-template-columns:1fr!important;gap:24px!important}.footer-inner{padding:36px 16px!important}.footer-bottom{flex-direction:column!important;gap:8px!important;text-align:center}.btn{padding:12px 20px!important;font-size:.78rem!important}.card{border-radius:6px}}@media (min-width: 769px){.nav-burger,.mobile-menu{display:none!important}}.vid-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media (min-width: 769px) and (max-width: 1024px){.vid-grid{grid-template-columns:repeat(2,1fr)!important}}@media (max-width: 768px){.vid-grid{grid-template-columns:1fr!important}}@media (max-width: 420px){.review-page-card-body{padding:44px 28px 40px}.review-page-actions{flex-direction:column}.review-page-actions .btn{width:100%!important}}.location-section{background:var(--cream2)}.location-inner{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(360px,1.4fr);gap:34px;align-items:stretch}.location-copy{display:flex;flex-direction:column;justify-content:center}.location-copy h2{font-family:EB Garamond,serif;font-size:clamp(1.8rem,3.2vw,2.8rem);line-height:1.12;color:var(--dark);margin:18px 0 14px}.location-copy h2 em{color:var(--burg);font-style:italic}.location-copy p{color:var(--mid);font-size:.9rem;line-height:1.8;max-width:420px;margin-bottom:22px}.location-list{display:grid;gap:10px}.location-list div{padding:14px 16px;border:1px solid rgba(124,29,46,.12);border-radius:6px;background:#ffffffb3}.location-list strong{display:block;color:var(--dark);font-family:EB Garamond,serif;font-size:1.05rem;margin-bottom:4px}.location-list span{display:block;color:var(--mid);font-size:.78rem;line-height:1.55}.location-map{min-height:380px;border-radius:8px;overflow:hidden;border:1px solid rgba(124,29,46,.12);box-shadow:var(--shadow-lg);background:#fff}.location-map iframe{width:100%;height:100%;min-height:380px;border:0;display:block}@media (max-width: 768px){.location-inner{grid-template-columns:1fr;gap:22px}.location-map,.location-map iframe{min-height:320px}}
