:root {
--navy:#071d33;
--navy-mid:#0c2d4e;
--navy-light:#143d66;
--gold:#c9a45c;
--gold-light:#e8c97a;
--gold-pale:#f7efd8;
--ink:#0f1f30;
--body:#344054;
--muted:#667085;
--soft:#f6f8fb;
--line:#e4e8f0;
--white:#ffffff;
--shadow-sm:0 2px 12px rgba(7,29,51,.07);
--shadow-md:0 14px 48px rgba(7,29,51,.13);
--shadow-lg:0 32px 80px rgba(7,29,51,.18);
--radius-md:20px;
--radius-lg:32px;
--transition:.28s cubic-bezier(.4,0,.2,1);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{
font-family:'Inter',system-ui,sans-serif;
color:var(--ink);
background:var(--white);
line-height:1.65;
-webkit-font-smoothing:antialiased;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(1200px,92%);margin:auto}
.top-bar{
background:var(--navy);
color:#b8cde4;
font-size:.82rem;
display:flex;
justify-content:space-between;
align-items:center;
gap:12px;
padding:8px 4%;
font-weight:500;
}
.top-bar-left,.top-bar-right{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.top-bar-left{gap:18px}
.top-bar-left span:first-child{color:#d4e7f5;font-weight:800}
.top-bar-sep{color:#2a4a6a}
.top-bar a{color:#d4e7f5;transition:color var(--transition)}
.top-bar a:hover{color:#fff}
.top-bar-cta{
background:var(--gold);
color:var(--navy)!important;
padding:4px 14px;
border-radius:999px;
font-weight:800;
font-size:.8rem;
}
.site-header{
position:sticky;
top:0;
z-index:100;
background:rgba(255,255,255,.96);
backdrop-filter:blur(16px);
border-bottom:1px solid var(--line);
transition:box-shadow var(--transition);
}
.site-header.scrolled{box-shadow:var(--shadow-md)}
.header-inner{
width:min(1200px,92%);
margin:auto;
height:76px;
display:flex;
align-items:center;
justify-content:space-between;
}
.brand{display:flex;align-items:center;gap:14px}
.brand-logo,.footer-logo{
width:46px;
height:46px;
background:var(--navy);
border-radius:12px;
display:grid;
place-items:center;
object-fit:cover;
font-family:'Cormorant Garamond',serif;
font-size:1.4rem;
font-weight:700;
color:var(--gold);
flex-shrink:0;
letter-spacing:.04em;
}
.brand-text strong{
display:block;
font-size:.95rem;
font-weight:900;
color:var(--navy);
letter-spacing:.06em;
text-transform:uppercase;
}
.brand-text small{
display:block;
font-size:.6rem;
color:var(--muted);
font-weight:800;
letter-spacing:.18em;
line-height:1.4;
}
.main-nav{display:flex;align-items:center;gap:6px}
.main-nav a{
padding:8px 14px;
font-size:.88rem;
font-weight:600;
color:var(--body);
border-radius:999px;
transition:all var(--transition);
}
.main-nav a:hover{background:var(--soft);color:var(--navy)}
.main-nav a[aria-current="page"]{color:var(--gold);font-weight:700}
.nav-cta{
background:var(--navy)!important;
color:var(--white)!important;
padding:10px 20px!important;
font-weight:700!important;
margin-left:6px;
}
.menu-toggle{
display:none;
background:none;
border:none;
cursor:pointer;
width:44px;
height:44px;
flex-direction:column;
align-items:center;
justify-content:center;
gap:6px;
border-radius:10px;
}
.menu-toggle span{
display:block;
width:24px;
height:2px;
background:var(--navy);
border-radius:2px;
transition:all var(--transition);
}
.menu-toggle[aria-expanded="true"] span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-toggle[aria-expanded="true"] span:nth-child(2){opacity:0;transform:scaleX(0)}
.menu-toggle[aria-expanded="true"] span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
.saturday-alert{
background:linear-gradient(90deg,var(--gold),var(--gold-light));
color:var(--navy);
text-align:center;
padding:10px 20px;
font-size:.86rem;
font-weight:700;
display:none;
gap:10px;
align-items:center;
justify-content:center;
}
.saturday-alert.show{display:flex}
.saturday-alert a{color:var(--navy);font-weight:900;text-decoration:underline}
.pulse{
width:10px;
height:10px;
background:var(--navy);
border-radius:50%;
animation:pulse 1.6s infinite;
}
@keyframes pulse{
0%,100%{opacity:1;transform:scale(1)}
50%{opacity:.5;transform:scale(.7)}
}
.hero{
background:
radial-gradient(ellipse at 90% 0%,rgba(201,164,92,.22),transparent 45%),
radial-gradient(ellipse at 10% 100%,rgba(201,164,92,.12),transparent 40%),
linear-gradient(145deg,#061523 0%,#0b2645 55%,#103560 100%);
color:var(--white);
padding:80px 0 0;
overflow:hidden;
}
.hero-inner{
width:min(1200px,92%);
margin:auto;
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:end;
}
.hero-content{padding-bottom:60px}
.breadcrumb{
display:flex;
gap:8px;
align-items:center;
color:#7fa8cc;
font-size:.82rem;
margin-bottom:28px;
}
.breadcrumb a:hover{color:var(--gold-light)}
.hero-badge{
display:inline-flex;
align-items:center;
gap:8px;
background:rgba(201,164,92,.18);
border:1px solid rgba(201,164,92,.4);
padding:8px 18px;
border-radius:999px;
color:var(--gold-light);
font-size:.82rem;
font-weight:700;
letter-spacing:.06em;
text-transform:uppercase;
margin-bottom:22px;
}
.hero-badge .dot{
width:7px;
height:7px;
background:var(--gold);
border-radius:50%;
animation:pulse 2s infinite;
}
.hero h1{
font-family:'Cormorant Garamond',serif;
font-size:clamp(2.8rem,5.5vw,5.2rem);
line-height:1;
font-weight:700;
letter-spacing:-.02em;
margin-bottom:24px;
}
.hero h1 em{
font-style:italic;
color:var(--gold-light);
display:block;
}
.hero-lead{
font-size:1.08rem;
color:#c5d8ec;
line-height:1.7;
max-width:540px;
margin-bottom:36px;
}
.hero-lead strong{color:#fff}
.hero-stats{
display:flex;
gap:32px;
margin-bottom:36px;
padding:22px 26px;
background:rgba(255,255,255,.07);
border:1px solid rgba(255,255,255,.12);
border-radius:18px;
backdrop-filter:blur(8px);
}
.hero-stat-num{
font-family:'Cormorant Garamond',serif;
font-size:2.2rem;
font-weight:700;
color:var(--gold-light);
line-height:1;
}
.hero-stat-label{
font-size:.78rem;
color:#94b8d4;
font-weight:600;
letter-spacing:.04em;
text-transform:uppercase;
margin-top:4px;
}
.hero-actions,.cta-band-actions,.final-cta-actions,.card-actions{
display:flex;
gap:14px;
flex-wrap:wrap;
}
.btn{
display:inline-flex;
align-items:center;
justify-content:center;
gap:8px;
min-height:50px;
padding:13px 24px;
border-radius:999px;
font-weight:700;
font-size:.92rem;
border:2px solid transparent;
cursor:pointer;
transition:all var(--transition);
white-space:nowrap;
font-family:inherit;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{background:var(--gold);color:var(--navy);border-color:var(--gold)}
.btn-primary:hover{background:var(--gold-light);border-color:var(--gold-light)}
.btn-outline{background:transparent;color:var(--white);border-color:rgba(255,255,255,.45)}
.btn-outline:hover{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.7)}
.btn-navy{background:var(--navy);color:var(--white);border-color:var(--navy)}
.btn-gold-solid{background:var(--gold-light);color:var(--navy);border-color:var(--gold-light)}
.btn-outline-navy{background:transparent;color:var(--navy);border-color:var(--line)}
.btn-outline-navy:hover{border-color:var(--navy);background:var(--soft)}
.btn-sm{min-height:40px;padding:8px 18px;font-size:.84rem}
.full-btn{justify-content:center;width:100%}
.hero-visual{
position:relative;
display:flex;
align-items:flex-end;
justify-content:center;
}
.hero-photo-frame{
position:relative;
width:100%;
max-width:520px;
}
.hero-photo-placeholder{
width:100%;
aspect-ratio:4/5;
background:linear-gradient(160deg,rgba(255,255,255,.09),rgba(255,255,255,.03));
border:1px solid rgba(255,255,255,.15);
border-radius:28px 28px 0 0;
overflow:hidden;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:12px;
color:rgba(255,255,255,.5);
font-size:.85rem;
font-weight:600;
letter-spacing:.04em;
text-transform:uppercase;
}
.hero-photo-img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}
.photo-icon{
width:64px;
height:64px;
border:2px solid rgba(255,255,255,.25);
border-radius:50%;
display:grid;
place-items:center;
font-family:'Cormorant Garamond',serif;
font-size:1.5rem;
color:var(--gold-light);
}
.hero-photo-caption{
font-size:.7rem;
color:rgba(255,255,255,.35);
text-align:center;
}
.hero-card-time{
position:absolute;
left:-28px;
bottom:80px;
background:var(--white);
color:var(--navy);
padding:18px 22px;
border-radius:20px;
box-shadow:var(--shadow-lg);
min-width:170px;
}
.card-label{
font-size:.7rem;
font-weight:800;
letter-spacing:.1em;
text-transform:uppercase;
color:var(--muted);
margin-bottom:4px;
}
.card-time{
font-family:'Cormorant Garamond',serif;
font-size:2rem;
font-weight:700;
line-height:1;
}
.card-sub{
font-size:.78rem;
color:var(--gold);
font-weight:700;
margin-top:4px;
}
.hero-card-reserve{
position:absolute;
right:-20px;
top:40px;
background:var(--gold);
color:var(--navy);
padding:14px 18px;
border-radius:16px;
box-shadow:var(--shadow-md);
text-align:center;
max-width:140px;
}
.reserve-text{font-size:.78rem;font-weight:800;line-height:1.3}
.trust-band{
background:var(--white);
border-bottom:1px solid var(--line);
}
.trust-band-inner{
width:min(1200px,92%);
margin:auto;
display:grid;
grid-template-columns:repeat(5,1fr);
}
.trust-item{
padding:22px 20px;
border-right:1px solid var(--line);
display:flex;
align-items:center;
gap:14px;
}
.trust-item:last-child{border-right:none}
.trust-icon{
width:42px;
height:42px;
background:var(--gold-pale);
border-radius:12px;
display:grid;
place-items:center;
font-family:'Cormorant Garamond',serif;
font-size:1.2rem;
font-weight:800;
color:var(--navy);
flex-shrink:0;
}
.trust-label strong{display:block;font-size:.88rem;font-weight:800;color:var(--navy)}
.trust-label span{font-size:.76rem;color:var(--muted)}
.section{padding:88px 0}
.section-soft{background:var(--soft)}
.section-dark{
background:linear-gradient(135deg,var(--navy),var(--navy-mid));
color:#fff;
}
.eyebrow{
font-size:.72rem;
font-weight:800;
letter-spacing:.16em;
text-transform:uppercase;
color:var(--gold);
margin-bottom:12px;
display:block;
}
.eyebrow-light{color:var(--gold-light)}
.section-title{
font-family:'Cormorant Garamond',serif;
font-size:clamp(2.2rem,4vw,3.8rem);
font-weight:700;
line-height:1.06;
color:var(--navy);
margin-bottom:18px;
letter-spacing:-.02em;
}
.section-title-light{color:#fff}
.section-lead{
font-size:1.06rem;
color:var(--muted);
max-width:580px;
line-height:1.7;
}
.section-lead-light{color:#c5d8ec}
.section-header{margin-bottom:54px}
.centered{text-align:center}
.narrow{max-width:680px;margin-left:auto;margin-right:auto}
.services-grid{
display:grid;
grid-template-columns:repeat(2,1fr);
gap:26px;
}
.service-card{
background:var(--white);
border:1px solid var(--line);
border-radius:var(--radius-lg);
padding:36px;
transition:all var(--transition);
display:flex;
flex-direction:column;
position:relative;
overflow:hidden;
}
.service-card::before{
content:'';
position:absolute;
top:0;
left:0;
right:0;
height:3px;
background:linear-gradient(90deg,var(--gold),var(--gold-light));
transform:scaleX(0);
transform-origin:left;
transition:transform var(--transition);
}
.service-card:hover{
box-shadow:var(--shadow-md);
transform:translateY(-4px);
border-color:rgba(201,164,92,.3);
}
.service-card:hover::before{transform:scaleX(1)}
.service-card-icon{
width:54px;
height:54px;
background:var(--navy);
border-radius:16px;
display:grid;
place-items:center;
font-family:'Cormorant Garamond',serif;
font-size:1.2rem;
font-weight:700;
color:var(--gold-light);
margin-bottom:22px;
}
.service-card h3{
font-family:'Cormorant Garamond',serif;
font-size:1.9rem;
font-weight:700;
color:var(--navy);
margin-bottom:12px;
}
.service-card>p{
color:var(--muted);
font-size:.94rem;
margin-bottom:20px;
}
.service-card ul{
list-style:none;
margin-bottom:22px;
flex:1;
}
.service-card ul li{
padding:8px 0;
border-bottom:1px solid var(--line);
color:var(--body);
font-size:.9rem;
display:flex;
align-items:center;
gap:10px;
}
.service-card ul li::before{
content:'';
width:6px;
height:6px;
background:var(--gold);
border-radius:50%;
}
.service-card ul li:last-child{border-bottom:none}
.service-card-email{
display:flex;
padding:10px 16px;
background:var(--soft);
border-radius:12px;
font-size:.8rem;
font-weight:700;
color:var(--navy);
margin-bottom:18px;
word-break:break-word;
}
.service-card-email:hover{background:var(--gold-pale)}
.mini-services{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:16px;
}
.mini-service-link{
background:#fff;
border:1px solid var(--line);
border-radius:var(--radius-md);
padding:22px 24px;
display:flex;
align-items:center;
gap:14px;
font-weight:700;
color:var(--navy);
transition:all var(--transition);
font-size:.92rem;
}
.mini-service-link:hover{
border-color:var(--gold);
transform:translateY(-3px);
box-shadow:var(--shadow-sm);
}
.mini-arrow{
margin-left:auto;
color:var(--gold);
opacity:0;
transform:translateX(-4px);
transition:all var(--transition);
}
.mini-service-link:hover .mini-arrow{
opacity:1;
transform:translateX(0);
}
.cta-band{
background:linear-gradient(90deg,var(--navy),var(--navy-mid));
padding:52px 0;
}
.cta-band-inner{
width:min(1200px,92%);
margin:auto;
display:flex;
align-items:center;
justify-content:space-between;
gap:32px;
}
.cta-band-text h2{
font-family:'Cormorant Garamond',serif;
font-size:clamp(1.6rem,3vw,2.4rem);
color:#fff;
margin-bottom:8px;
}
.cta-band-text p{color:#94b8d4;font-size:.94rem}
.why-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:60px;
align-items:start;
}
.why-list{display:grid;gap:16px}
.why-item{
display:flex;
gap:18px;
padding:22px 24px;
background:#fff;
border:1px solid var(--line);
border-radius:var(--radius-md);
align-items:flex-start;
transition:all var(--transition);
}
.why-item:hover{border-color:rgba(201,164,92,.4);box-shadow:var(--shadow-sm)}
.why-num{
font-family:'Cormorant Garamond',serif;
font-size:2rem;
font-weight:700;
color:var(--gold);
line-height:1;
min-width:32px;
}
.why-text strong{display:block;font-size:.92rem;color:var(--navy);margin-bottom:4px}
.why-text span{font-size:.86rem;color:var(--muted)}
.why-photo{
aspect-ratio:3/4;
background:var(--soft);
border-radius:var(--radius-lg);
border:1px solid var(--line);
overflow:hidden;
display:flex;
flex-direction:column;
align-items:center;
justify-content:center;
gap:10px;
color:var(--muted);
font-size:.8rem;
text-align:center;
padding:20px;
}
.why-photo-icon{
width:74px;
height:74px;
border-radius:50%;
display:grid;
place-items:center;
background:var(--gold-pale);
color:var(--navy);
font-family:'Cormorant Garamond',serif;
font-size:1.8rem;
font-weight:800;
}
.why-photo a{font-size:.76rem;color:var(--gold);font-weight:700}
.zones-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:20px;
margin-top:48px;
}
.zone-card{
background:rgba(255,255,255,.08);
border:1px solid rgba(255,255,255,.14);
border-radius:var(--radius-md);
padding:28px 24px;
text-align:center;
transition:all var(--transition);
}
.zone-card:hover{background:rgba(255,255,255,.13);border-color:rgba(201,164,92,.4)}
.zone-name{
font-family:'Cormorant Garamond',serif;
font-size:1.5rem;
font-weight:700;
color:#fff;
margin-bottom:6px;
}
.zone-desc{font-size:.82rem;color:#94b8d4}
.contact-layout{
display:grid;
grid-template-columns:.9fr 1.1fr;
gap:40px;
align-items:start;
}
.email-links{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:14px;
max-width:780px;
margin:0 auto 40px;
}
.email-link-card{
background:#fff;
border:1px solid var(--line);
border-radius:var(--radius-md);
padding:18px 16px;
text-align:center;
transition:all var(--transition);
}
.email-link-card:hover{background:var(--gold-pale);border-color:var(--gold);transform:translateY(-2px)}
.email-type{
font-size:.72rem;
font-weight:800;
text-transform:uppercase;
letter-spacing:.08em;
color:var(--muted);
margin-bottom:4px;
display:block;
}
.email-addr{
font-size:.76rem;
font-weight:700;
color:var(--navy);
word-break:break-all;
}
.contact-sidebar{display:grid;gap:22px}
.info-card{
background:#fff;
border:1px solid var(--line);
border-radius:var(--radius-md);
padding:26px;
}
.info-card h3{
font-size:.72rem;
font-weight:800;
letter-spacing:.14em;
text-transform:uppercase;
color:var(--gold);
margin-bottom:16px;
}
.info-row{
padding:12px 0;
border-bottom:1px solid var(--line);
font-size:.88rem;
}
.info-row:last-child{border-bottom:none}
.info-row a{color:var(--navy);font-weight:600}
.info-row-label{font-size:.72rem;color:var(--muted);display:block;margin-bottom:2px}
.info-row strong{color:var(--navy);font-size:.9rem}
.map-embed{
border-radius:var(--radius-md);
overflow:hidden;
border:1px solid var(--line);
height:220px;
background:#fff;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
padding:20px;
color:var(--muted);
font-size:.86rem;
}
.map-embed-link{
display:block;
margin-top:10px;
color:var(--navy);
font-weight:700;
font-size:.88rem;
}
.form-card{
background:#fff;
border:1px solid var(--line);
border-radius:var(--radius-lg);
padding:36px;
box-shadow:var(--shadow-md);
}
.form-card h3{
font-family:'Cormorant Garamond',serif;
font-size:1.8rem;
font-weight:700;
color:var(--navy);
margin-bottom:8px;
}
.form-card p{font-size:.88rem;color:var(--muted);margin-bottom:24px}
.form-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:16px;
}
.form-group{display:flex;flex-direction:column;gap:6px}
.form-group.full{grid-column:1/-1}
.form-group label{
font-size:.8rem;
font-weight:700;
color:var(--navy);
}
.form-group input,.form-group select,.form-group textarea{
width:100%;
padding:12px 16px;
border:1.5px solid var(--line);
border-radius:12px;
font:inherit;
font-size:.9rem;
color:var(--ink);
background:#fff;
transition:border-color var(--transition),box-shadow var(--transition);
}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{
outline:none;
border-color:var(--gold);
box-shadow:0 0 0 3px rgba(201,164,92,.15);
}
.form-group textarea{resize:vertical;min-height:110px}
.form-submit{margin-top:8px}
.form-submit .btn{width:100%;justify-content:center;min-height:52px;font-size:.95rem}
.form-note{
font-size:.76rem;
color:var(--muted);
margin-top:12px;
text-align:center;
line-height:1.5;
}
.form-success{
display:none;
text-align:center;
padding:32px;
color:var(--navy);
}
.success-icon{
width:52px;
height:52px;
border-radius:50%;
background:var(--gold-pale);
display:grid;
place-items:center;
margin:0 auto 12px;
font-weight:900;
color:var(--navy);
}
.form-success h4{font-size:1.2rem;margin-bottom:8px}
.faq-container{max-width:820px}
.faq-list{display:grid;gap:12px}
details{
background:#fff;
border:1px solid var(--line);
border-radius:var(--radius-md);
overflow:hidden;
transition:border-color var(--transition);
}
details[open]{border-color:rgba(201,164,92,.4)}
summary{
padding:20px 24px;
cursor:pointer;
font-weight:700;
color:var(--navy);
font-size:.94rem;
display:flex;
align-items:center;
justify-content:space-between;
gap:12px;
list-style:none;
}
summary::-webkit-details-marker{display:none}
summary::after{
content:'＋';
font-size:1.1rem;
color:var(--gold);
transition:transform var(--transition);
}
details[open] summary::after{transform:rotate(45deg)}
details p{
padding:0 24px 20px;
color:var(--muted);
font-size:.9rem;
line-height:1.7;
}
details a{color:var(--navy);font-weight:700}
.final-cta{
background:
radial-gradient(ellipse at 80% 50%,rgba(201,164,92,.18),transparent 50%),
linear-gradient(135deg,var(--navy),var(--navy-mid));
padding:96px 0;
text-align:center;
color:#fff;
}
.final-cta h2{
font-family:'Cormorant Garamond',serif;
font-size:clamp(2.2rem,4.5vw,4rem);
font-weight:700;
color:#fff;
margin-bottom:18px;
line-height:1.05;
}
.final-cta h2 em{font-style:italic;color:var(--gold-light)}
.final-cta p{color:#b8d0e8;max-width:540px;margin:0 auto 36px}
.final-cta-actions{justify-content:center}
.site-footer{
background:#060f1a;
color:#8ab2cc;
padding:60px 0 0;
}
.footer-inner{
width:min(1200px,92%);
margin:auto;
display:grid;
grid-template-columns:1.4fr 1fr 1fr 1fr;
gap:40px;
}
.footer-brand{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.footer-logo{width:44px;height:44px;background:var(--navy-mid);object-fit:cover}
.footer-brand-text strong{
display:block;
color:#fff;
font-size:.9rem;
font-weight:800;
letter-spacing:.06em;
text-transform:uppercase;
}
.footer-brand-text small{display:block;color:#4a6a84;font-size:.72rem}
.footer-desc{font-size:.84rem;line-height:1.7;margin-bottom:20px}
.footer-hours{
background:#0c1e2e;
border:1px solid #1a3550;
border-radius:14px;
padding:16px 18px;
font-size:.82rem;
}
.footer-hours strong{
display:block;
color:var(--gold);
margin-bottom:6px;
font-size:.78rem;
letter-spacing:.08em;
text-transform:uppercase;
}
.footer-hours span{color:#fff;font-weight:600}
.site-footer h4{
color:#fff;
font-size:.8rem;
font-weight:800;
letter-spacing:.1em;
text-transform:uppercase;
margin-bottom:18px;
}
.footer-links{display:grid;gap:8px}
.footer-links a{
font-size:.84rem;
color:#7090aa;
transition:color var(--transition);
}
.footer-links a:hover{color:var(--gold-light)}
.footer-bottom{
border-top:1px solid #0e2035;
margin-top:48px;
padding:20px 4%;
display:flex;
justify-content:space-between;
align-items:center;
gap:16px;
font-size:.78rem;
color:#4a6a84;
flex-wrap:wrap;
}
.footer-bottom a:hover{color:var(--gold-light)}
.wa-float{
position:fixed;
bottom:28px;
right:28px;
z-index:999;
display:flex;
align-items:center;
filter:drop-shadow(0 8px 24px rgba(0,0,0,.28));
}
.wa-bubble{
background:#fff;
color:#075E54;
padding:10px 16px;
border-radius:12px 0 0 12px;
font-size:.82rem;
font-weight:700;
max-width:0;
overflow:hidden;
white-space:nowrap;
transition:max-width .5s cubic-bezier(.4,0,.2,1),padding .3s;
opacity:0;
}
.wa-float:hover .wa-bubble{max-width:200px;opacity:1}
.wa-btn{
width:60px;
height:60px;
background:#25D366;
border-radius:50%;
display:grid;
place-items:center;
transition:transform var(--transition);
}
.wa-btn:hover{transform:scale(1.1)}
.wa-btn svg{width:30px;height:30px;fill:#fff}
.reveal{
opacity:0;
transform:translateY(20px);
transition:.65s cubic-bezier(.4,0,.2,1);
}
.reveal.visible{opacity:1;transform:none}
.reveal-delay-1{transition-delay:.1s}
.reveal-delay-2{transition-delay:.2s}
@media(prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
@media(max-width:1024px){
.trust-band-inner{grid-template-columns:repeat(3,1fr)}
.footer-inner{grid-template-columns:1fr 1fr}
}
@media(max-width:900px){
.top-bar{display:none}
.menu-toggle{display:flex}
.main-nav{
position:absolute;
top:76px;
left:4%;
right:4%;
background:#fff;
border:1px solid var(--line);
border-radius:20px;
padding:16px;
flex-direction:column;
align-items:stretch;
gap:4px;
box-shadow:var(--shadow-lg);
display:none;
}
.main-nav.open{display:flex}
.main-nav a{border-radius:12px;padding:12px 16px}
.nav-cta{margin-left:0;text-align:center}
.hero-inner{grid-template-columns:1fr}
.hero-visual{display:none}
.hero-stats{flex-wrap:wrap;gap:20px}
.services-grid,.why-grid,.contact-layout{grid-template-columns:1fr}
.mini-services,.zones-grid,.email-links{grid-template-columns:1fr 1fr}
.why-photo{display:none}
.cta-band-inner{flex-direction:column;text-align:center}
.cta-band-actions{justify-content:center}
.trust-band-inner{grid-template-columns:1fr 1fr}
.footer-inner{grid-template-columns:1fr}
}
@media(max-width:640px){
.section{padding:60px 0}
.hero{padding-top:40px}
.form-grid,.mini-services,.zones-grid,.trust-band-inner,.email-links{grid-template-columns:1fr}
.trust-item{border-right:none;border-bottom:1px solid var(--line)}
.trust-item:last-child{border-bottom:none}
.wa-float{bottom:16px;right:16px}
.footer-bottom{flex-direction:column;text-align:center}
.hero-stats{gap:16px}
}

.why-photo{padding:0}
.why-photo img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-lg);display:block}
