
:root{--gold:#cba32a;--navy:#0f1f3d;--cream:#faf6ea;--ink:#1b2233;--mut:#5d6578;--line:#e6dfc9;--bs-body-color:var(--ink);--bs-body-font-family:Figtree,system-ui,sans-serif}
body{font-size:16px;line-height:1.65}h1,h2,h3,h4{font-family:Fraunces,Georgia,serif;color:var(--navy);line-height:1.2}
h1{font-size:clamp(2rem,5vw,3.4rem)}h2{font-size:clamp(1.5rem,3vw,2.2rem);margin-bottom:1rem}h3{font-size:1.2rem}a{color:inherit}
.topbar{background:var(--navy);color:#dfe4ef;font-size:.85rem;padding:6px 0}.topbar a{text-decoration:none}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font:700 1.15rem/1.1 Fraunces,serif;color:var(--navy)}.brand img{width:46px;height:46px}.brand small{display:block;font:500 .72rem Figtree,sans-serif;color:var(--mut)}
.nav-link{font-weight:500}.nav-link:hover,.dropdown-item:hover{color:var(--gold)}@media(min-width:992px){.dropdown:hover>.dropdown-menu{display:block}}
.btn-gold{background:var(--gold);color:var(--navy);font-weight:600;padding:.7rem 1.4rem;border:0}.btn-gold:hover{background:#b8921f;color:var(--navy)}
a:focus-visible,.btn:focus-visible,.form-control:focus,.form-select:focus{outline:3px solid var(--gold);outline-offset:2px;box-shadow:none}
.hero{background:var(--navy) url(../img/logo-symbol.png) no-repeat right -80px center/520px;color:#fff;padding:90px 0}.hero h1{color:#fff;max-width:760px}.hero p{max-width:560px;font-size:1.15rem;color:#dfe4ef}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:2rem}.chips a{display:flex;gap:7px;align-items:center;border:1px solid rgba(255,255,255,.3);padding:6px 12px;border-radius:99px;text-decoration:none;font-size:.9rem}.chips a:hover{border-color:var(--gold)}
.page-hero{background:var(--navy);padding:46px 0}.page-hero h1{color:#fff;margin:0}.bg-cream{background:var(--cream)}.navy{background:var(--navy);color:#dfe4ef}.navy h2{color:#fff}
.card{border:1px solid var(--line);border-top:4px solid var(--gold);border-radius:8px;text-decoration:none}.svc:hover,.fl:hover{box-shadow:0 8px 24px rgba(15,31,61,.12)}.svc span{color:#9a7a14;font-weight:600}
.img{background:var(--cream);border:2px dashed var(--gold);color:var(--mut);aspect-ratio:4/3;display:grid;place-items:center;margin-bottom:12px;border-radius:6px;font-size:.9rem}
.note{background:var(--cream);border-left:4px solid var(--gold);padding:10px 14px;font-size:.9rem;color:var(--mut)}.narrow{max-width:760px}
.map{width:100%;height:380px;border:0}.accordion-button:not(.collapsed){background:var(--cream);color:var(--navy)}
.ft{background:var(--navy);color:#cfd6e6}.ft h4{color:#fff;font-size:1.1rem}.ft a{display:block;text-decoration:none;margin:4px 0}.ft a:hover{color:var(--gold)}.ft .brand small{color:#cfd6e6}.copy{border-top:1px solid rgba(255,255,255,.15);font-size:.88rem}.copy a{display:inline;margin-left:12px}
.wa{position:fixed;right:18px;bottom:18px;width:58px;height:58px;border-radius:50%;background:#25d366;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.3);z-index:1030}
@media(max-width:991px){.hero{background-position:right -200px bottom;padding:60px 0}}

.hero-slider{background:var(--navy) radial-gradient(circle at 85% 20%,rgba(203,163,42,.22),transparent 45%);color:#fff;padding:70px 0 90px;overflow:hidden}
.hero-slider h1{color:#fff;font-size:clamp(2rem,4.6vw,3.2rem)}.hero-slider p{font-size:1.15rem;color:#dfe4ef;max-width:540px}
.hero-slider .carousel-indicators{margin-bottom:.6rem}.hero-slider .carousel-indicators button{width:34px;height:4px;background:var(--gold);border:0;margin:0 4px}
.hero-slider .carousel-control-prev,.hero-slider .carousel-control-next{width:6%}
.art{max-width:100%;height:auto;animation:float 6s ease-in-out infinite;filter:drop-shadow(0 18px 30px rgba(0,0,0,.35))}
.carousel-item.active .hero-text>*{animation:up .8s both}.carousel-item.active .hero-text>*:nth-child(2){animation-delay:.15s}.carousel-item.active .hero-text>*:nth-child(3){animation-delay:.3s}
@keyframes up{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes float{50%{transform:translateY(-14px)}}
.marquee{background:var(--gold);overflow:hidden;white-space:nowrap;padding:12px 0}.track{display:inline-flex;gap:38px;animation:scroll 40s linear infinite;color:var(--navy);font-weight:600}.track span{display:inline-flex;align-items:center;gap:8px}.marquee:hover .track{animation-play-state:paused}
@keyframes scroll{to{transform:translateX(-50%)}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.in{opacity:1;transform:none}
.card{transition:transform .25s,box-shadow .25s}.svc:hover,.fl:hover{transform:translateY(-6px)}.btn-gold{transition:transform .2s,background .2s}.btn-gold:hover{transform:translateY(-2px)}
.wa::before{content:'';position:absolute;inset:0;border-radius:50%;background:#25d366;animation:pulse 2.2s infinite;z-index:-1}@keyframes pulse{to{transform:scale(1.7);opacity:0}}
@media(prefers-reduced-motion:reduce){*,*::before{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}
