
:root{--navy:#08066b;--navy2:#0d0b86;--gold:#c9a227;--gold2:#e6c65a;--ink:#172033;--muted:#667085}
body{font-family:Arial,Helvetica,sans-serif;color:var(--ink)}
.navbar{background:var(--navy);padding:12px 0}.navbar-brand img{height:58px}.navbar .nav-link{color:#fff!important;font-weight:600}
.btn-gold{background:var(--gold);border-color:var(--gold);color:#fff;font-weight:700}.btn-gold:hover{background:#a9861e;color:#fff}
.hero{min-height:680px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(8,6,107,.98) 0%,rgba(8,6,107,.88) 42%,rgba(8,6,107,.30) 100%),url("https://www.ethicalconveyancing.co.uk/assets/survey_rics_house.png") center/cover no-repeat}
.hero h1{font-size:clamp(2.6rem,5vw,4.6rem);font-weight:800;line-height:1.08}.hero p{font-size:1.15rem;color:#e8e9ff;max-width:700px}
.section-pad{padding:85px 0}.section-title{font-weight:800;color:var(--navy);font-size:2.35rem}.feature-strip{background:#f6f8fc}
.service-card{height:100%;border:1px solid #e4e8ef;border-radius:18px;padding:30px;background:#fff;box-shadow:0 10px 35px #14203c12;transition:.2s;overflow:hidden}.service-card:hover{transform:translateY(-5px)}
.service-card .service-img{height:190px;width:100%;object-fit:cover;border-radius:13px;margin-bottom:22px}.service-icon{width:58px;height:58px;border-radius:14px;background:#f5edcf;color:var(--navy);display:flex;align-items:center;justify-content:center;font-size:1.5rem}.service-card h3{color:var(--navy);font-weight:800;font-size:1.25rem}
.visual-section{background:#f6f8fc}.visual-img{width:100%;height:420px;object-fit:cover;border-radius:24px;box-shadow:0 18px 45px #14203c18}
.cta{background:var(--navy);color:#fff;border-radius:24px;padding:50px}.footer{background:#05043e;color:#dfe1ff;padding:50px 0 25px}.footer a{color:#fff;text-decoration:none}
.badge-gold{background:#f5edcf;color:#66500a}.stat-card{border-radius:18px;background:#fff;padding:25px;box-shadow:0 8px 28px #14203c10}
@media(max-width:768px){.navbar-brand img{height:46px}.hero{min-height:620px;background:linear-gradient(90deg,rgba(8,6,107,.96),rgba(8,6,107,.78)),url("https://www.ethicalconveyancing.co.uk/assets/survey_rics_house.png") center/cover}.section-pad{padding:60px 0}.visual-img{height:300px}}
#faqs .accordion-item {
    border: 0;
    border-bottom: 1px solid #e9ecef;
}

#faqs .accordion-button {
    padding: 1.4rem 1.5rem;
    background: #fff;
    color: #172033;
    box-shadow: none;
}

#faqs .accordion-button:not(.collapsed) {
    color: #0d0b86;
    background: #f8fbff;
}

#faqs .accordion-button::after {
    transition: transform .25s ease;
}

#faqs .accordion-body {
    padding: 0 1.5rem 1.5rem;
    line-height: 1.75;
}

#faqs .accordion-button:focus {
    box-shadow: none;
}
.bgprimary{
    background: #0d0b86;
}
.textprimary{
    color: #0d0b86;
}
.social-links {
    display: flex;
    flex-wrap: wrap;
}

.social-link {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 50%;
    color: #fff;
    text-decoration: none;
    font-size: 18px;
    transition: all .3s ease;
}

.social-link:hover {
    background: var(--gold2, #c9a227);
    border-color: var(--gold2, #c9a227);
    color: #fff;
    transform: translateY(-4px);
}
.text-gold{
    color: #c9a227;
}

/* Internal service pages */
.service-hero{min-height:510px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(8,6,107,.98) 0%,rgba(8,6,107,.90) 45%,rgba(8,6,107,.42) 100%),var(--hero-image) center/cover no-repeat}
.service-hero h1,.quote-hero h1{font-size:clamp(2.5rem,5vw,4.4rem);font-weight:800;line-height:1.08}.service-hero p{font-size:1.12rem;color:#e8e9ff;max-width:760px}.hero-kicker{color:var(--gold2);letter-spacing:2px}.info-panel{background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:32px;box-shadow:0 10px 35px #14203c12}.info-panel h4{font-weight:800;color:var(--navy);margin-bottom:20px}.check-list{list-style:none;padding:0;margin:0}.check-list li{position:relative;padding:10px 0 10px 32px;border-bottom:1px solid #eef0f4;color:#475467}.check-list li:last-child{border-bottom:0}.check-list li:before{content:'✓';position:absolute;left:0;top:8px;color:var(--gold);font-weight:900}.gold-icon{color:var(--gold)}
.quote-hero{min-height:430px;display:flex;align-items:center;color:#fff;background:linear-gradient(90deg,rgba(8,6,107,.98),rgba(8,6,107,.78)),url("https://www.ethicalconveyancing.co.uk/assets/survey_rics_house.png") center/cover no-repeat}.quote-hero p{max-width:720px;color:#e8e9ff}.quote-card{background:#fff;border:1px solid #e5e7eb;border-radius:22px;padding:35px;box-shadow:0 15px 45px #14203c12}.quote-side{background:#f6f8fc;border-radius:22px;padding:30px;position:sticky;top:100px}.address-search-box{background:#f8fbff;border:1px solid #dbe5f5;border-radius:16px;padding:20px}.manual-address-heading{display:flex;align-items:center;gap:12px;color:var(--navy);font-weight:800;margin:10px 0}.manual-address-heading:before,.manual-address-heading:after{content:'';height:1px;background:#e1e5ec;flex:1}.form-control,.form-select{border-color:#d7dce5}.form-control:focus,.form-select:focus{border-color:var(--navy2);box-shadow:0 0 0 .2rem rgba(13,11,134,.10)}
.navbar .dropdown-menu{min-width:290px}.navbar .dropdown-item{padding:.65rem 1rem}.navbar .dropdown-item:hover{background:#f5edcf;color:#08066b}.btn-gold.active,.btn-gold:focus{background:#a9861e;border-color:#a9861e;color:#fff}
@media(max-width:768px){.service-hero{min-height:560px}.quote-hero{min-height:480px}.quote-card{padding:22px}.quote-side{position:static}}


/* =========================================================
   CUSTODIAN SURVEYORS - PREMIUM WOW ANIMATION SYSTEM
   ========================================================= */
html { scroll-behavior: smooth; }
.reveal, .reveal-left, .reveal-right, .reveal-scale, .stagger-item { opacity:0; will-change:transform,opacity; }
.reveal { transform:translateY(70px); }
.reveal-left { transform:translateX(-90px); }
.reveal-right { transform:translateX(90px); }
.reveal-scale { transform:translateY(45px) scale(.88); }
.is-visible { opacity:1 !important; transform:none !important; transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1); }
.reveal-hero { position:relative; overflow:hidden; }
.reveal-hero:before { content:''; position:absolute; inset:0; background:linear-gradient(110deg,transparent 0%,rgba(255,255,255,.10) 45%,transparent 62%); transform:translateX(-120%); animation:heroSweep 1.8s cubic-bezier(.2,.8,.2,1) .15s forwards; pointer-events:none; }
.reveal-hero .container { position:relative; z-index:2; }
.hero-kicker-reveal { opacity:0; transform:translateY(24px); animation:heroUp .8s .25s cubic-bezier(.16,1,.3,1) forwards; }
.hero-title-reveal { opacity:0; transform:translateY(35px) scale(.97); animation:heroTitle 1s .38s cubic-bezier(.16,1,.3,1) forwards; }
.hero-copy-reveal { opacity:0; transform:translateY(25px); animation:heroUp .9s .55s cubic-bezier(.16,1,.3,1) forwards; }
.hero-btn-reveal { opacity:0; transform:translateY(22px) scale(.94); animation:heroButton .85s .72s cubic-bezier(.16,1,.3,1) forwards; }
@keyframes heroSweep { to{transform:translateX(120%)} }
@keyframes heroUp { to{opacity:1;transform:translateY(0)} }
@keyframes heroTitle { to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes heroButton { to{opacity:1;transform:translateY(0) scale(1)} }
.nav-reveal { animation:navDrop .8s cubic-bezier(.16,1,.3,1) both; }
@keyframes navDrop { from{opacity:0;transform:translateY(-100%)} to{opacity:1;transform:none} }
.info-panel,.stat-card,.quote-card,.quote-side { position:relative; overflow:hidden; transition:transform .45s cubic-bezier(.16,1,.3,1),box-shadow .45s ease,border-color .35s ease; }
.info-panel:before,.stat-card:before,.quote-card:before,.quote-side:before { content:''; position:absolute; inset:0; background:radial-gradient(circle at var(--mx,50%) var(--my,50%),rgba(201,162,39,.16),transparent 34%); opacity:0; transition:opacity .35s ease; pointer-events:none; }
.info-panel:hover:before,.stat-card:hover:before,.quote-card:hover:before,.quote-side:hover:before { opacity:1; }
.stat-card:hover,.info-panel:hover,.quote-side:hover { transform:translateY(-12px); box-shadow:0 25px 55px rgba(8,6,107,.16); }
.quote-card:hover { box-shadow:0 25px 60px rgba(8,6,107,.14); }
.stagger-item:nth-child(1){transition-delay:.05s}.stagger-item:nth-child(2){transition-delay:.18s}.stagger-item:nth-child(3){transition-delay:.31s}
.btn-gold { position:relative; overflow:hidden; isolation:isolate; transition:transform .3s ease,box-shadow .3s ease,background .3s ease !important; }
.btn-gold:before { content:''; position:absolute; top:-80%; left:-130%; width:70%; height:260%; background:rgba(255,255,255,.34); transform:rotate(25deg); transition:left .65s ease; z-index:-1; }
.btn-gold:hover { transform:translateY(-4px) scale(1.025); box-shadow:0 14px 30px rgba(201,162,39,.28); }
.btn-gold:hover:before { left:150%; }.btn-gold:active{transform:translateY(-1px) scale(.99)}
.gold-icon { animation:iconFloat 3.8s ease-in-out infinite; }
@keyframes iconFloat { 0%,100%{transform:translateY(0) rotate(0)} 50%{transform:translateY(-7px) rotate(2deg)} }
.cta { position:relative; overflow:hidden; }
.cta:after { content:''; position:absolute; width:260px; height:260px; border-radius:50%; right:-80px; top:-120px; background:rgba(201,162,39,.16); filter:blur(4px); animation:ctaGlow 5s ease-in-out infinite alternate; }
@keyframes ctaGlow { from{transform:scale(.8);opacity:.45} to{transform:scale(1.25);opacity:.9} }
.quote-card .form-control,.quote-card .form-select{transition:transform .2s ease,box-shadow .25s ease,border-color .25s ease}.quote-card .form-control:focus,.quote-card .form-select:focus{transform:translateY(-2px)}
.address-search-box{transition:transform .35s ease,box-shadow .35s ease}.address-search-box:focus-within{transform:translateY(-4px);box-shadow:0 15px 35px rgba(13,11,134,.10)}
.quote-action{transition:transform .3s ease,box-shadow .3s ease !important}.quote-submit{animation:submitPulse 2.8s ease-in-out infinite}
@keyframes submitPulse{0%,100%{box-shadow:0 0 0 0 rgba(201,162,39,0)}50%{box-shadow:0 0 0 8px rgba(201,162,39,.10)}}
.footer-reveal{position:relative;overflow:hidden}.footer-reveal:before{content:'';position:absolute;top:0;left:-40%;width:35%;height:2px;background:linear-gradient(90deg,transparent,var(--gold2),transparent);animation:footerLight 5s linear infinite}
@keyframes footerLight{to{left:110%}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important}.reveal,.reveal-left,.reveal-right,.reveal-scale,.stagger-item{opacity:1 !important;transform:none !important}}
