:root{--queen-purple:#5a176c;--queen-purple-dark:#2b0737;--queen-gold:#d4ad3d;--queen-ink:#251c27;--queen-muted:#675f69;--queen-soft:#f8f4f8;--queen-border:#e8dfe9;--bs-primary:#5a176c;--bs-secondary:#d4ad3d;--bs-dark:#2b0737;--bs-light:#fbf9fb}
*{box-sizing:border-box}html{scroll-padding-top:82px;overflow-x:hidden}body{font-family:"Open Sans",sans-serif;color:var(--queen-muted);line-height:1.72;overflow-x:hidden}h1,h2,h3,h4,h5,.brand-lockup strong{font-family:"Playfair Display",serif;color:var(--queen-ink)}a{transition:color .25s,background-color .25s,border-color .25s,transform .25s,box-shadow .25s}.text-primary{color:var(--queen-gold)!important}.bg-dark{background:var(--queen-purple-dark)!important}.bg-soft{background:var(--queen-soft)}.text-white-75{color:rgba(255,255,255,.78)}.section-space{padding:96px 0}.section-space-sm{padding:68px 0}
#spinner{opacity:0;visibility:hidden;transition:opacity .35s,visibility 0s linear .35s;z-index:9999}#spinner.show{opacity:1;visibility:visible;transition:opacity .35s}.top-strip{height:42px;font-size:.84rem}.top-strip a:hover{color:var(--queen-gold)!important}
.navbar{min-height:82px;z-index:1000;box-shadow:0 3px 20px rgba(43,7,55,.08)}.navbar.sticky-top{top:0}.brand-lockup{display:flex;align-items:center;gap:9px}.brand-lockup img{width:48px;height:48px;object-fit:contain}.brand-lockup span{display:flex;flex-direction:column;line-height:1}.brand-lockup strong{font-size:1.62rem;color:var(--queen-purple);font-weight:700}.brand-lockup small{text-transform:uppercase;letter-spacing:.15em;font-size:.54rem;color:#806d83;margin-top:5px}.navbar-light .navbar-nav .nav-link{font-size:.93rem;font-weight:600;color:#413643;padding:29px 0;margin-right:22px}.navbar-light .navbar-nav .nav-link:hover,.navbar-light .navbar-nav .nav-link.active{color:var(--queen-purple)}.navbar-toggler{width:43px;height:43px;padding:0;border-color:#dfd4e1;color:var(--queen-purple)!important;border-radius:8px}.navbar-toggler:focus{box-shadow:0 0 0 3px rgba(90,23,108,.16)}.nav-whatsapp{padding:.62rem 1.2rem}
.btn{font-weight:600;letter-spacing:.01em;transition:.3s}.btn-primary{background:var(--queen-purple);border-color:var(--queen-purple)}.btn-primary:hover,.btn-primary:focus{background:#461153;border-color:#461153;color:#fff!important;transform:translateY(-1px)}.btn-gold{background:var(--queen-gold);border-color:var(--queen-gold);color:var(--queen-purple-dark)}.btn-gold:hover{background:#e0bf5c;border-color:#e0bf5c;color:var(--queen-purple-dark);transform:translateY(-1px)}
.hero-section{position:relative;overflow:hidden;background:var(--queen-purple-dark)}.hero-bg,.hero-overlay{position:absolute;inset:0}.hero-bg{background:url('../img/queen-hero.webp') center/cover no-repeat;transform:scale(1.01)}.hero-overlay{background:linear-gradient(90deg,rgba(27,4,34,.97) 0%,rgba(43,7,55,.87) 40%,rgba(43,7,55,.18) 76%)}.hero-content{position:relative;z-index:2}.hero-row{min-height:calc(100vh - 124px);min-height:clamp(650px,calc(100vh - 124px),820px)}.hero-title{max-width:690px;font-size:clamp(2.65rem,5vw,4.8rem);line-height:1.06;letter-spacing:-.025em}.hero-title span{display:block;margin-bottom:15px;color:var(--queen-gold);font-family:"Open Sans",sans-serif;font-size:.22em;font-weight:600;letter-spacing:.17em;text-transform:uppercase}.hero-lead{max-width:620px;font-size:1.16rem;line-height:1.75}.eyebrow{color:var(--queen-gold);font-size:.76rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.section-title{max-width:780px;text-align:center;margin:0 auto}.section-intro{max-width:650px;margin:1rem auto 0}.sub-title{display:inline-block;color:var(--queen-purple);font-family:"Open Sans",sans-serif;font-size:.77rem;font-weight:700;text-transform:uppercase;letter-spacing:.19em;position:relative}.sub-title:after{content:"";position:absolute;right:-30px;top:50%;width:22px;border-top:1px solid var(--queen-gold)}
.about-emblem{min-height:430px;background:linear-gradient(145deg,#f0e7f2,#fff);border:1px solid #e4d7e6;border-radius:220px 220px 18px 18px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden}.about-emblem:after{content:"";position:absolute;inset:22px;border:1px solid rgba(212,173,61,.48);border-radius:200px 200px 12px 12px}.about-emblem img{width:200px;height:200px;object-fit:contain;z-index:1}.about-emblem span{text-align:center;text-transform:uppercase;letter-spacing:.13em;font-size:.68rem;color:#806d83;z-index:1}.about-emblem strong{font-family:"Playfair Display",serif;color:var(--queen-purple);font-size:1.3rem;text-transform:none;letter-spacing:0}
.service-item{background:#fff;border:1px solid var(--queen-border);border-radius:12px;box-shadow:0 12px 34px rgba(43,7,55,.055);transition:.3s}.service-item:hover{transform:translateY(-5px);border-color:#d8bedc;box-shadow:0 18px 40px rgba(43,7,55,.09)}.service-content{padding:34px 28px}.service-icon{display:flex;align-items:center;justify-content:center;width:58px;height:58px;margin-bottom:23px;border-radius:50%;background:#f1e7f3;color:var(--queen-purple);font-size:1.35rem}.service-item h4{font-size:1.28rem;line-height:1.3}.service-item p{margin:0;font-size:.94rem}.service-note{font-size:.84rem;color:#8c818e}
.feature-card{height:100%;padding:30px 25px;border-top:2px solid var(--queen-gold);border-radius:0 0 10px 10px;background:#fff;box-shadow:0 9px 28px rgba(43,7,55,.045)}.feature-card>i{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-bottom:20px;border-radius:50%;background:#f1e7f3;color:var(--queen-purple);font-size:1.15rem}.feature-card h4{font-size:1.18rem}.feature-card p{margin:0;font-size:.93rem}.cta-section{background:var(--queen-purple-dark);position:relative;overflow:hidden}.cta-section:after{content:"Q";position:absolute;right:2%;top:50%;transform:translateY(-54%);font:700 14rem/1 "Playfair Display",serif;color:rgba(255,255,255,.035);pointer-events:none}.cta-section .container{position:relative;z-index:1}
.contact-location{display:flex;align-items:center;gap:14px;margin-top:28px;color:var(--queen-ink)}.contact-location>i{color:var(--queen-purple)}.contact-location span{display:flex;flex-direction:column;font-weight:600}.contact-location small{color:#968899;font-size:.65rem;letter-spacing:.15em;text-transform:uppercase}.contact-card{height:100%;min-height:104px;padding:23px;display:flex;align-items:center;gap:17px;border:1px solid var(--queen-border);border-radius:10px;color:#554c57;background:#fff;overflow-wrap:anywhere}.contact-card:hover{color:var(--queen-purple);border-color:var(--queen-gold);box-shadow:0 10px 30px rgba(43,7,55,.075);transform:translateY(-2px)}.contact-card>i{font-size:1.22rem;color:var(--queen-purple);width:30px;text-align:center}.contact-card span{display:flex;min-width:0;flex-direction:column}.contact-card small{text-transform:uppercase;letter-spacing:.14em;font-size:.63rem;color:#978b99}.contact-card strong{font-size:.96rem;font-weight:600}
.contact{background:linear-gradient(rgba(43,7,55,.93),rgba(43,7,55,.95)),url('../img/queen-consultation.webp') center/cover fixed no-repeat}.contact-intro,.contact-note{color:rgba(255,255,255,.76)}.contact .section-title .sub-title:before,.contact .section-title .sub-title:after{border-color:var(--queen-gold)}.contact .form-floating input,.contact .form-floating textarea{color:#fff}.contact .form-floating label{color:rgba(255,255,255,.78)}.contact .form-control:focus{color:#fff;background:rgba(255,255,255,.06)!important;border-color:var(--queen-gold)!important;box-shadow:0 0 0 .2rem rgba(212,173,61,.18)}.contact .form-floating>.form-control:focus~label,.contact .form-floating>.form-control:not(:placeholder-shown)~label{color:var(--queen-gold)}.contact .form-floating>.form-control:focus~label:after,.contact .form-floating>.form-control:not(:placeholder-shown)~label:after{background:var(--queen-purple-dark)}.contact textarea.form-control{height:160px}.contact .contact-form .btn-light{box-shadow:inset 0 0 0 0 var(--queen-purple);transition:.5s}.contact .contact-form .btn-light:hover{box-shadow:inset 650px 0 0 0 var(--queen-purple)!important;color:#fff!important}.contact-detail{text-align:center;margin-bottom:28px}.contact-detail-icon{display:flex;align-items:center;justify-content:center;width:76px;height:76px;margin:0 auto 12px;border-radius:50%;background:#fff;color:var(--queen-purple);font-size:1.35rem;transition:.5s}.contact-detail:hover .contact-detail-icon{background:var(--queen-gold);transform:translateY(-3px)}.contact-detail h4{color:#fff;font-size:1rem;margin-bottom:4px}.contact-detail p,.contact-detail a{color:rgba(255,255,255,.78);font-size:.84rem;line-height:1.5;margin:0}.contact-detail a:hover{color:var(--queen-gold)}.contact-map{height:500px;overflow:hidden;box-shadow:0 16px 38px rgba(20,3,25,.25)}.contact-map iframe{height:100%;border:0}.contact-map-actions .btn{display:inline-flex;align-items:center;justify-content:center;color:var(--queen-purple)}
.footer{background:var(--queen-purple-dark)}.footer a,.footer-location{display:block;color:rgba(255,255,255,.67);margin:9px 0}.footer a:hover{color:var(--queen-gold);transform:translateX(3px)}.footer-heading{color:#fff;font:600 1.1rem "Open Sans",sans-serif;margin-bottom:18px}.footer-brand{display:flex;align-items:center;gap:12px}.footer-brand img{width:58px;height:58px;object-fit:contain}.footer-brand h2{color:#fff;margin:0}.footer-brand h2 small{display:block;font-family:"Open Sans",sans-serif;text-transform:uppercase;letter-spacing:.15em;font-size:.54rem;color:var(--queen-gold)}.footer-copy{max-width:420px}.footer-email{overflow-wrap:anywhere}.copyright{background:#19041f;color:rgba(255,255,255,.55);font-size:.84rem}.back-to-top{position:fixed;display:none;right:22px;bottom:22px;width:48px;height:48px;padding:0;align-items:center;justify-content:center;border-radius:50%;z-index:99}
/* Final template-fidelity details */
.section-title .sub-title:before{content:"";position:absolute;left:-30px;top:50%;width:22px;border-top:1px solid var(--queen-gold)}
.service-content{position:relative}.service-content:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:rgba(90,23,108,.5);transition:.5s}.service-item:hover .service-content:after{height:7px;background:var(--queen-gold)}
.feature-card{border:1px solid var(--queen-border);border-top:2px solid var(--queen-gold)}.feature-card:hover{border-color:#d8bedc}
.contact-card>i{display:flex;align-items:center;justify-content:center;flex:0 0 46px;width:46px;height:46px;border-radius:50%;background:#f1e7f3;transition:.5s}.contact-card:hover>i{background:var(--queen-purple);color:#fff}
.footer{background:linear-gradient(rgba(43,7,55,.95),rgba(25,4,31,.97)),url('../img/queen-venue.webp') center/cover no-repeat}
.back-to-top{border:1px solid rgba(212,173,61,.7);box-shadow:0 8px 24px rgba(25,4,31,.25);transition:.5s}.back-to-top:hover{border-color:var(--queen-gold);box-shadow:0 10px 28px rgba(25,4,31,.35)}
/* Restored image-based template components */
.about-img{position:relative;padding:0 28px 34px 0}.about-img-inner{position:relative;min-height:500px;overflow:hidden;border-radius:14px}.about-img-inner>img{width:100%;height:500px;object-fit:cover;transition:.5s}.about-img:hover .about-img-inner>img{transform:scale(1.035)}.about-img-small{position:absolute;right:18px;bottom:18px;width:38%;aspect-ratio:1;border:6px solid #fff;border-radius:50%;overflow:hidden;box-shadow:0 12px 30px rgba(43,7,55,.2)}.about-img-small img{object-fit:cover}.about-mark{position:absolute;right:0;bottom:0;display:flex;align-items:center;gap:7px;padding:10px 15px;background:var(--queen-purple-dark);border-radius:9px;color:#fff;font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 10px 28px rgba(43,7,55,.18)}.about-mark img{width:30px;height:30px;object-fit:contain}
.service-item{display:flex;flex-direction:column;overflow:hidden}.service-img{position:relative;aspect-ratio:4/3;overflow:hidden}.service-img:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(43,7,55,.28));opacity:.75;transition:.5s}.service-img img{width:100%;height:100%;object-fit:cover;transition:.5s}.service-item:hover .service-img img{transform:scale(1.08)}.service-item:hover .service-img:after{opacity:1}.service-content{flex:1}
.feature-img{min-height:500px;overflow:hidden;border-radius:14px;box-shadow:0 14px 38px rgba(43,7,55,.09)}.feature-img img{object-fit:cover;object-position:center;transition:.5s}.feature-img:hover img{transform:scale(1.035)}
/* Restored template interaction layer */
.navbar,.navbar-light .navbar-nav .nav-link,.brand-lockup img{transition:.5s}.navbar-light .navbar-nav .nav-link{position:relative}
.sticky-top .brand-lockup img{width:44px;height:44px}
.sticky-top.navbar-light .navbar-nav .nav-link{padding-top:24px;padding-bottom:24px}
.about-emblem img,.service-icon,.feature-card,.feature-card>i,.feature-card h4{transition:.5s}
.about-emblem:hover img{transform:scale(1.04)}
.service-item:hover .service-icon,.feature-card:hover>i{background:var(--queen-purple);color:#fff;transform:rotateY(180deg)}
.feature-card:hover{transform:translateY(-4px);box-shadow:0 16px 34px rgba(43,7,55,.08)}
@media(min-width:992px){.navbar-light .navbar-nav .nav-link:before{content:"";position:absolute;left:0;bottom:20px;width:0;border-bottom:2px solid var(--queen-gold);transition:.5s}.navbar-light .navbar-nav .nav-link:hover:before,.navbar-light .navbar-nav .nav-link.active:before{width:100%}.sticky-top.navbar-light .navbar-nav .nav-link:before{bottom:15px}}
@media(max-width:1199.98px){.navbar-light .navbar-nav .nav-link{margin-right:15px}.hero-row{min-height:680px}.service-content{padding:30px 22px}.feature-card{padding:27px 21px}}
@media(max-width:991.98px){html{scroll-padding-top:75px}.section-space{padding:78px 0}.section-space-sm{padding:58px 0}.navbar{min-height:74px}.navbar-collapse{padding:14px 0 22px;border-top:1px solid #eee6ef;margin-top:12px}.navbar-light .navbar-nav .nav-link{padding:9px 0;margin:0}.nav-whatsapp{display:inline-block;margin-top:10px}.hero-row{min-height:650px}.hero-bg{background-position:64% center}.hero-overlay{background:linear-gradient(90deg,rgba(27,4,34,.95),rgba(43,7,55,.62))}.about-emblem{min-height:380px}.about-img-inner,.about-img-inner>img{min-height:440px;height:440px}.feature-img{min-height:440px;height:440px}.contact{background-attachment:scroll}.contact-details{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.contact-detail{margin-bottom:0}.contact-map{height:420px}.cta-actions{text-align:left!important}}
@media(max-width:767.98px){.section-space{padding:68px 0}.section-title{max-width:540px}.display-4{font-size:2.55rem}.hero-title{font-size:3.35rem}.contact-section .row{--bs-gutter-y:2rem}.footer .row{--bs-gutter-y:2.5rem}}
@media(max-width:575.98px){.navbar{padding-left:15px!important;padding-right:15px!important}.brand-lockup img{width:43px;height:43px}.brand-lockup strong{font-size:1.34rem}.brand-lockup small{font-size:.47rem}.hero-row{min-height:620px}.hero-bg{background-position:69% center}.hero-overlay{background:linear-gradient(180deg,rgba(27,4,34,.52),rgba(27,4,34,.96) 68%)}.hero-title{font-size:clamp(2.5rem,11vw,3.15rem)}.hero-lead{font-size:1rem;line-height:1.65}.hero-actions{gap:12px!important}.hero-actions .btn{width:100%;padding-left:1rem!important;padding-right:1rem!important}.section-space{padding:60px 0}.section-space-sm{padding:50px 0}.display-4{font-size:2.2rem}.display-5{font-size:2rem}.sub-title:after,.section-title .sub-title:before{display:none}.about-emblem{min-height:330px}.about-emblem img{width:165px;height:165px}.about-img{padding:0 16px 26px 0}.about-img-inner,.about-img-inner>img{min-height:350px;height:350px}.about-img-small{right:12px;bottom:12px;width:36%;border-width:4px}.about-mark{padding:8px 11px}.about-mark img{width:25px;height:25px}.service-content{padding:28px 24px}.feature-img{min-height:350px;height:350px}.cta-actions .btn{width:100%;margin:0 0 12px!important}.contact-details{grid-template-columns:1fr}.contact-map{height:340px}.contact-card{padding:20px;min-height:96px}.footer-brand img{width:52px;height:52px}.footer .col-6{width:100%}.back-to-top{right:15px;bottom:15px;width:44px;height:44px}}
@media(max-width:374.98px){.brand-lockup{gap:7px}.brand-lockup img{width:39px;height:39px}.brand-lockup strong{font-size:1.2rem}.brand-lockup small{font-size:.43rem;letter-spacing:.12em}.navbar-toggler{width:40px;height:40px}.hero-title{font-size:2.35rem}.hero-row{min-height:600px}.section-space{padding:54px 0}.display-4{font-size:2rem}.service-content{padding:25px 21px}.contact-card strong{font-size:.88rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
