@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root {--navy: #30377F;--teal: #0788C8;--mint: #EAF6FC;--ink: #263548;--muted: #64748B;--line: #DCEAF2;}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"DM Sans",sans-serif;color:var(--ink);line-height:1.65}h1,h2,h3,h4{font-family:Manrope,sans-serif;line-height:1.15;color:var(--navy);margin:0 0 16px}h1{font-size:clamp(2.5rem,5vw,4.5rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.03em}h3{font-size:1.25rem}p{color:var(--muted);margin:0 0 18px}a{color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}.topbar{background:var(--navy);color:#dcebf0;font-size:.86rem;padding:8px 0}.topbar .container{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.topbar a{color:white;text-decoration:none}.navwrap{background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #edf1f2}.nav{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--navy);font-family:Manrope,sans-serif;font-weight:800;font-size:1.05rem;line-height:1.1}.brand small{display:block;font:500 .72rem "DM Sans",sans-serif;color:var(--muted);margin-top:5px}.tooth{width:43px;height:43px;border-radius:14px;background:var(--teal);color:white;display:grid;place-items:center;font-size:1.4rem}.navlinks{display:flex;align-items:center;gap:22px}.navlinks a{text-decoration:none;font-weight:600;font-size:.92rem;color:var(--navy)}.navlinks a:hover,.navlinks a.active{color:var(--teal)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 21px;border-radius:9px;text-decoration:none;font-weight:700;border:0;cursor:pointer;font-family:inherit}.btn-primary{background:var(--teal);color:white;box-shadow:0 8px 20px #1da7a126}.btn-primary:hover{background:#168c87}.menu-toggle{display:none;background:#fff;border:1px solid var(--line);border-radius:8px;padding:9px;font-size:1.2rem}.page-hero{padding:74px 0;background:radial-gradient(circle at 85% 20%,#d9f5f1,transparent 32%),linear-gradient(120deg,#f5fbfb,#fff 60%)}.page-hero .container{max-width:950px}.eyebrow{display:inline-block;color:#168e89;background:#e4f7f4;padding:7px 13px;border-radius:100px;font-weight:700;font-size:.82rem;margin-bottom:18px}.page-hero p{font-size:1.08rem;max-width:700px}.section{padding:78px 0}.section-head{text-align:center;max-width:690px;margin:0 auto 40px}.section-head p{max-width:570px;margin:auto}.hero-grid,.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}.hero-photo,.feature-photo{overflow:hidden;border-radius:24px;background:#e5f4f1;min-height:390px}.hero-photo img,.feature-photo img{width:100%;height:100%;min-height:390px;object-fit:cover;display:block}.hero-copy{font-size:1.08rem;margin:20px 0 25px}.stats{padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.stat{text-align:center;border-right:1px solid var(--line)}.stat:last-child{border:0}.stat strong{display:block;color:var(--teal);font:800 1.7rem Manrope}.stat span{font-size:.9rem;color:var(--muted)}.soft{background:#f6fbfb}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid #e7eff0;border-radius:17px;padding:26px;background:#fff;transition:.2s}.card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #183b5010}.icon{height:55px;width:55px;display:grid;place-items:center;border-radius:15px;background:var(--mint);font-size:1.65rem;margin-bottom:18px}.card p{font-size:.95rem}.text-link{color:var(--teal);text-decoration:none;font-weight:700}.checks{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.checks li:before{content:"✓";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e2f6f2;color:#138b85;margin-right:8px}.cta{background:var(--navy);color:#fff;border-radius:22px;padding:38px 42px;display:flex;justify-content:space-between;align-items:center;gap:24px}.cta h2{color:white;font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:8px}.cta p{color:#c7d7df;margin:0}.team-card{border:1px solid var(--line);border-radius:17px;overflow:hidden}.team-card img{width:100%;height:270px;object-fit:cover;display:block;background:#eaf5f4}.team-card div{padding:20px}.team-card p{margin:0;font-size:.92rem}.quote{max-width:780px;margin:auto;padding:38px;background:#fff;border:1px solid var(--line);border-radius:20px;text-align:center}.quote blockquote{font:600 1.2rem Manrope;color:var(--navy);margin:12px 0 20px}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:45px}.contact-items{display:grid;gap:16px;margin-top:24px}.contact-item{display:flex;gap:12px}.contact-item b{display:block;color:var(--navy)}.contact-item span{color:var(--muted);font-size:.93rem}.form-box{padding:28px;border:1px solid var(--line);border-radius:18px;box-shadow:0 15px 40px #183b5008}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.field{display:flex;flex-direction:column;gap:6px}.field.full{grid-column:1/-1}.field label{font-size:.88rem;font-weight:700;color:var(--navy)}.field input,.field select,.field textarea{font:inherit;padding:12px 13px;border:1px solid #dce6e9;border-radius:8px;width:100%}.field textarea{min-height:110px}.message{display:none;color:#138b85;font-size:.9rem;margin-top:10px}.footer{background:#102f40;color:#d3e1e7;padding:52px 0 22px;margin-top:0}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1fr;gap:30px}.footer h3{color:#fff;font-size:1.05rem}.footer p,.footer a{color:#c0d0d7;font-size:.91rem}.footer a{display:block;text-decoration:none;margin:8px 0}.footer-bottom{border-top:1px solid #ffffff20;margin-top:32px;padding-top:17px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#9fb5c0;font-size:.84rem}.mobile-cta{display:none}
@media(max-width:900px){.navlinks{gap:12px}.navlinks a{font-size:.85rem}.cards{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.hero-grid,.two-col,.form-layout{gap:28px}}
@media(max-width:680px){.container{width:calc(100% - 30px)}.topbar .container{justify-content:center;text-align:center}.topbar .hide-mobile{display:none}.nav{min-height:70px}.menu-toggle{display:block}.navlinks{display:none;position:absolute;top:70px;left:0;right:0;background:#fff;padding:18px 22px 24px;border-bottom:1px solid var(--line);align-items:stretch;flex-direction:column;gap:15px}.navlinks.open{display:flex}.navlinks .btn{width:100%}.nav>.btn{display:none}.page-hero{padding:50px 0}.section{padding:58px 0}.hero-grid,.two-col,.form-layout{grid-template-columns:1fr}.hero-photo,.feature-photo,.hero-photo img,.feature-photo img{min-height:300px}.stat-grid{grid-template-columns:1fr 1fr;row-gap:20px}.stat:nth-child(2){border:0}.cards{grid-template-columns:1fr}.checks{grid-template-columns:1fr}.cta{padding:28px 23px;align-items:flex-start;flex-direction:column}.team-card img{height:320px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-box{padding:21px}.footer-grid{grid-template-columns:1fr;gap:20px}.mobile-cta{display:flex;position:fixed;bottom:10px;left:10px;right:10px;z-index:25;gap:9px}.mobile-cta a{flex:1;padding:11px 8px;box-shadow:0 8px 25px #102f4030}.footer{padding-bottom:85px}}
/* Shining Pearls - Logo Color Overrides */

/* Buttons */
.btn-primary {
    background: #0788C8;
    color: #FFFFFF;
    box-shadow: 0 8px 20px #0788C826;
}

.btn-primary:hover {
    background: #30377F;
}

/* Hero background */
.page-hero {
    background:
        radial-gradient(circle at 85% 20%, #DDF2FC, transparent 32%),
        linear-gradient(120deg, #F0F8FD, #FFFFFF 60%);
}

/* Eyebrow labels */
.eyebrow {
    color: #0788C8;
    background: #EAF6FC;
}

/* Section backgrounds */
.soft {
    background: #F2F9FD;
}

/* Photos and cards */
.hero-photo,
.feature-photo {
    background: #EAF6FC;
}

.card {
    border-color: #DCEAF2;
}

/* Check marks */
.checks li:before {
    background: #DDF2FC;
    color: #0788C8;
}

/* Footer */
.footer {
    background: #252B68;
}

/* Contact form message */
.message {
    color: #0788C8;
}

/* Team photos */
.team-card img {
    background: #EAF6FC;
}