@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{--ink:#183b35;--ink2:#234b43;--cream:#fbf8f1;--paper:#fff;--orange:#ef9b62;--orange2:#f7b47f;--muted:#65756f;--line:#e6eae4;--mint:#edf4ed;--shadow:0 18px 45px rgba(24,59,53,.09);--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.65}img{max-width:100%;display:block}a{color:inherit}button,a{ -webkit-tap-highlight-color:transparent}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.topbar{background:var(--ink);color:#fff;font-size:.88rem;padding:8px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.topbar a{text-decoration:none;color:#fff}.header{position:sticky;top:0;z-index:9;background:rgba(255,255,255,.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(230,234,228,.8)}.navrow{height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0}.brandmark{width:46px;height:46px;border-radius:16px;background:var(--orange);display:grid;place-items:center;color:var(--ink);box-shadow:0 5px 12px #ef9b6233}.brandname{font-family:Manrope,sans-serif;font-size:1.16rem;font-weight:800;letter-spacing:-.04em;line-height:1.1}.brandtag{display:block;color:var(--muted);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;margin-top:4px}.navlinks{display:flex;align-items:center;gap:26px}.navlinks a{text-decoration:none;color:#405850;font-size:.94rem;font-weight:700}.navlinks a:hover,.navlinks a[aria-current=page]{color:#bd6d35}.navcta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:13px 20px;border-radius:999px;background:var(--orange);color:var(--ink);font-weight:800;text-decoration:none;border:0;transition:transform .18s,background .18s;cursor:pointer}.navcta:hover,.btn:hover{transform:translateY(-2px);background:var(--orange2)}.btn.dark{background:var(--ink);color:#fff}.btn.dark:hover{background:var(--ink2)}.btn.light{background:#fff;border:1px solid var(--line)}.menu-toggle{display:none;border:1px solid var(--line);background:white;border-radius:12px;padding:10px;color:var(--ink);font-weight:800}.hero{background:var(--cream);padding:64px 0 76px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:58px}.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.13em;color:#a65c2b}.eyebrow:before{content:'';width:26px;height:2px;background:var(--orange)}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.15;letter-spacing:-.045em;margin:0 0 18px;color:var(--ink)}h1{font-size:clamp(2.7rem,5vw,4.65rem);font-weight:800}h2{font-size:clamp(2rem,3.2vw,3rem);font-weight:800}h3{font-size:1.28rem;font-weight:800;letter-spacing:-.025em}.hero p.lead{font-size:1.14rem;color:#53665f;max-width:570px;margin:0 0 27px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-note{font-size:.88rem;color:var(--muted);margin-top:18px}.hero-visual{position:relative}.hero-photo{width:100%;height:500px;object-fit:cover;border-radius:42% 42% 24px 24px;box-shadow:var(--shadow)}.floating-note{position:absolute;bottom:26px;left:-24px;background:#fff;border:1px solid var(--line);padding:16px 20px;border-radius:18px;box-shadow:var(--shadow);max-width:230px}.floating-note strong{display:block;font-family:Manrope,sans-serif}.floating-note span{font-size:.86rem;color:var(--muted)}.section{padding:82px 0}.section.soft{background:#f7f9f5}.section-head{max-width:680px;margin-bottom:34px}.section-head p{color:var(--muted);font-size:1.05rem;margin:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card img{width:100%;height:220px;object-fit:cover}.cardbody{padding:24px}.cardbody p{color:var(--muted);margin:0 0 17px}.textlink{color:#a65c2b;font-weight:800;text-decoration:none}.textlink:hover{text-decoration:underline}.split{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.split img{width:100%;height:440px;object-fit:cover;border-radius:var(--radius)}.checklist{list-style:none;padding:0;margin:24px 0;display:grid;gap:13px}.checklist li{display:flex;gap:12px;align-items:flex-start}.check{width:25px;height:25px;flex:0 0 25px;border-radius:50%;display:grid;place-items:center;background:#dcebe0;color:var(--ink);font-weight:900;font-size:.85rem;margin-top:2px}.muted{color:var(--muted)}.banner{background:var(--ink);color:#fff;border-radius:30px;padding:38px 42px;display:flex;justify-content:space-between;align-items:center;gap:25px}.banner h2{color:#fff;font-size:clamp(1.7rem,3vw,2.5rem);margin-bottom:8px}.banner p{color:#d5e2dc;margin:0}.banner .btn{flex-shrink:0}.pagehero{background:var(--cream);padding:64px 0 56px}.pagehero .wrap{max-width:900px}.pagehero h1{font-size:clamp(2.4rem,4vw,3.8rem);margin-top:14px}.pagehero p{font-size:1.12rem;color:var(--muted);max-width:760px;margin:0}.content{padding:58px 0 80px}.content-narrow{max-width:850px;margin:auto}.content p{color:#50635c}.content h2{font-size:1.7rem;margin-top:36px;margin-bottom:12px}.content h3{margin-top:26px}.service-row{display:grid;grid-template-columns:200px 1fr;gap:28px;padding:28px 0;border-bottom:1px solid var(--line);align-items:center}.service-row img{width:200px;height:160px;object-fit:cover;border-radius:18px}.service-row p{margin:0 0 12px;color:var(--muted)}.pill{display:inline-block;background:var(--mint);color:var(--ink2);border-radius:999px;padding:5px 11px;font-size:.78rem;font-weight:800;margin:0 6px 8px 0}.faq{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:19px 0}summary{cursor:pointer;font-weight:800;color:var(--ink)}details p{margin:12px 0 0;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:start}.contact-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:28px}.contact-item{padding:17px 0;border-bottom:1px solid var(--line)}.contact-item:last-child{border:0}.contact-item strong{display:block;margin-bottom:3px}.contact-item a{color:#a65c2b;font-weight:800}.footer{background:#102f29;color:#fff;padding:55px 0 24px}.footergrid{display:grid;grid-template-columns:1.3fr .7fr .8fr;gap:44px}.footer .brandname{color:white}.footer .brandtag{color:#c3d1cb}.footer p,.footer li{color:#d2dfd9}.footer h3{color:#fff;font-size:1rem;letter-spacing:0;margin-bottom:15px}.footer ul{padding:0;list-style:none;display:grid;gap:8px;margin:0}.footer a{color:#e3ece7;text-decoration:none}.footer a:hover{text-decoration:underline}.footbottom{border-top:1px solid #ffffff22;margin-top:36px;padding-top:20px;display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;color:#c3d1cb;font-size:.86rem}.legal-note{font-size:.9rem;color:var(--muted);background:var(--mint);padding:16px 18px;border-radius:14px}.notfound{padding:60px 0}.mobile-call{display:none}
@media(max-width:900px){.navlinks{gap:16px}.hero-grid{gap:32px}.hero-photo{height:420px}.cards{grid-template-columns:repeat(2,1fr)}.footergrid{grid-template-columns:1fr 1fr}.footergrid>div:first-child{grid-column:1/-1}}
@media(max-width:700px){.wrap{width:min(100% - 30px,1160px)}.topbar .wrap{justify-content:center;text-align:center}.navrow{height:72px}.menu-toggle{display:inline-flex}.navcta{display:none}.navlinks{display:none;position:absolute;top:71px;left:0;right:0;padding:18px 22px 24px;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 18px 24px #183b3512;align-items:stretch;gap:0;flex-direction:column}.navlinks.open{display:flex}.navlinks a{padding:13px 4px;border-bottom:1px solid #eef0ec}.navlinks a:last-child{border-bottom:0}.hero{padding:45px 0 55px}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-grid{gap:32px}.hero-photo{height:350px;border-radius:30px}.floating-note{left:12px;bottom:12px}.section{padding:60px 0}.cards{grid-template-columns:1fr}.card img{height:235px}.banner{padding:28px;align-items:flex-start;flex-direction:column}.pagehero{padding:48px 0 42px}.content{padding:36px 0 58px}.service-row{grid-template-columns:1fr;gap:16px}.service-row img{width:100%;height:220px}.split img{height:320px}.footergrid{grid-template-columns:1fr;gap:30px}.footergrid>div:first-child{grid-column:auto}.footbottom{display:block}.footbottom span{display:block;margin:7px 0}.mobile-call{display:flex;position:fixed;bottom:12px;left:12px;right:12px;z-index:19;box-shadow:0 8px 24px #183b3533}.mobile-call .btn{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Responsive navigation: switch to a collapsible menu on tablets and phones. */
@media (max-width: 900px) {
  .navrow { position: relative; }
  .menu-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    padding: 0;
    font-size: 1.65rem;
    line-height: 1;
    flex: 0 0 46px;
    cursor: pointer;
  }
  .menu-toggle:focus-visible,
  .navlinks a:focus-visible { outline: 3px solid var(--orange); outline-offset: 3px; }
  .navcta { display: none; }
  .navlinks,
  .navlinks.open {
    display: none;
    position: absolute;
    top: calc(100% - 1px);
    left: 0;
    right: 0;
    z-index: 30;
    width: 100%;
    padding: 12px 20px 18px;
    background: #fff;
    border: 1px solid var(--line);
    border-top: 0;
    border-radius: 0 0 18px 18px;
    box-shadow: 0 18px 24px rgba(24, 59, 53, .13);
    align-items: stretch;
    gap: 0;
    flex-direction: column;
  }
  .navlinks.open { display: flex; }
  .navlinks a { display: block; padding: 14px 5px; border-bottom: 1px solid #eef0ec; }
  .navlinks a:last-child { border-bottom: 0; }
}
@media (max-width: 380px) {
  .wrap { width: calc(100% - 24px); }
  .brandmark { width: 40px; height: 40px; border-radius: 13px; }
  .brandname { font-size: 1.03rem; }
  .brandtag { font-size: .61rem; letter-spacing: .05em; }
  .navrow { gap: 10px; }
  .menu-toggle { width: 42px; height: 42px; flex-basis: 42px; }
}
