:root{--ink:#293731;--muted:#59645e;--sage:#ccd9c5;--line:#d9ded6;--pale:#f6f9f1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 system-ui,-apple-system,"Segoe UI",sans-serif}a{color:inherit;text-decoration:none}img{display:block;max-width:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3,.brand strong{font-family:Georgia,"Times New Roman",serif;line-height:1.12}h1{font-size:clamp(3rem,5.3vw,5.5rem);letter-spacing:-.035em;margin:1.4rem 0 1.7rem}h2{font-size:clamp(2.25rem,3.6vw,3.85rem);letter-spacing:-.025em;margin:1.2rem 0 2rem}h3{font-size:1.55rem}.wrap{width:min(1280px,calc(100% - 6.5vw));margin-inline:auto}.site-header{border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.header-inner{min-height:78px;display:flex;align-items:center;gap:3rem}.brand{display:inline-flex;flex-direction:column;line-height:1.1;white-space:nowrap}.brand strong{font-size:2rem;letter-spacing:-.025em}.brand span{font-size:.62rem;font-weight:750;letter-spacing:.27em;margin-top:.45rem}.header-inner nav{display:flex;gap:2rem;margin-left:auto;font-size:.94rem;font-weight:600}.header-inner nav a:hover,.footer-grid a:hover{text-decoration:underline}.phone-top,.filled{background:var(--sage)}.phone-top{padding:.55rem 1.5rem;border-radius:3rem;font-weight:700;white-space:nowrap}.menu-toggle{display:none}.hero{min-height:690px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:6%;padding-top:4rem;padding-bottom:3.5rem}.hero-copy{max-width:630px}.eyebrow{font-size:.77rem;font-weight:800;letter-spacing:.26em;line-height:1.55;margin-bottom:1.5rem}.eyebrow:before{content:"";display:inline-block;width:38px;height:1px;background:#7f9b80;vertical-align:middle;margin-right:13px}.lead{font-size:1.25rem;line-height:1.65;color:var(--muted);max-width:650px}.badge,.pill{background:#e9eee6;border-radius:3rem;padding:.35rem .9rem;display:inline-block;font-size:.78rem;font-weight:750;letter-spacing:.06em}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.button{border:0;border-radius:3rem;display:inline-flex;align-items:center;justify-content:center;padding:.68rem 1.35rem;cursor:pointer;font:700 .93rem/1.4 system-ui,sans-serif;min-height:45px}.button:hover,.phone-top:hover{filter:brightness(.94)}.outline{border:1px solid var(--line);background:#fff}.hero-photo{width:100%;height:610px;border-radius:49% 49% 9px 9px;box-shadow:0 16px 40px #40584419}.section{padding-block:8rem}.split{display:grid;grid-template-columns: .9fr 1.1fr;gap:10%;align-items:center}.about-photo{width:100%;height:570px;border-radius:49% 49% 10px 10px}.about p:not(.eyebrow),.section-heading p,.features p,.contact p{color:var(--muted)}.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2rem}.about-cards>div,.features>div{border:1px solid var(--line);border-radius:25px;padding:1.4rem}.about-cards b{font-family:Georgia,serif;color:#67816c;font-size:1.4rem}.about-cards p{margin:.8rem 0 0;font-size:.94rem}.section-heading{display:flex;gap:6%;align-items:end;justify-content:space-between}.section-heading h2{max-width:730px}.section-heading p{max-width:440px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:2rem}.service-card{border:1px solid var(--line);border-radius:34px;padding:2rem;display:flex;flex-direction:column;align-items:flex-start;box-shadow:0 15px 28px #2945340b}.service-card img{width:100%;height:240px;border-radius:16px;margin-bottom:1.3rem}.service-card h3{margin:2rem 0 1rem}.service-card p{color:var(--muted);flex:1}.service-card .button{margin-top:1rem}.advantages{background:var(--pale);padding-block:8rem}.advantages .split{grid-template-columns:1.1fr .9fr;gap:6%}.features{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem}.features h3{font:700 1.05rem/1.3 system-ui,sans-serif;margin:0 0 .7rem}.features h3:before{content:"●";color:#6b9a75;padding-right:.7rem}.features p{margin:0 0 0 1.4rem;font-size:.94rem}.feature-photo{width:100%;height:600px;border-radius:13px 48% 48% 13px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center}.contact-link a{font-weight:700;text-decoration:underline}.contact-form{border:1px solid var(--line);border-radius:32px;padding:2.3rem;box-shadow:0 20px 35px #2945340b}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form label{display:block;font-size:.76rem;font-weight:800;letter-spacing:.15em;margin-bottom:1rem}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:20px;padding:.85rem 1rem;margin-top:.55rem;font:1rem/1.45 inherit;color:var(--ink);background:#fff}.contact-form textarea{resize:vertical}.submit{width:100%}.contact-form small{display:block;color:var(--muted);margin-top:1rem;font-size:.8rem;line-height:1.5}.hidden{position:absolute;left:-9999px}.map-link{display:flex;border:1px solid var(--line);border-radius:22px;min-height:150px;margin-top:4rem;align-items:center;justify-content:center;background:var(--pale);font-weight:700}.map-link:hover{text-decoration:underline}footer{background:#f0f5e9;padding:4rem 0 1.5rem}.footer-grid{border-top:1px solid #ced7c9;padding-top:2.5rem;display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:4rem}.footer-grid>div:nth-child(2){display:flex;flex-direction:column;gap:.4rem}.footer-grid b{font-size:.75rem;letter-spacing:.23em}.footer-grid p{color:var(--muted);max-width:360px;margin-top:1rem}.copyright{border-top:1px solid #ced7c9;margin-top:3rem;padding-top:1rem;font-size:.8rem;color:var(--muted)}@media(max-width:900px){.header-inner{gap:1rem}.header-inner nav{gap:1rem}.phone-top{display:none}.hero{min-height:0}.hero-photo{height:480px}.split{gap:5%}.section{padding-block:5rem}.advantages{padding-block:5rem}.service-card{padding:1.2rem}.service-card img{height:160px}.features{gap:.7rem}.features>div{padding:1rem}}@media(max-width:690px){.wrap{width:calc(100% - 2.5rem)}.site-header{position:sticky}.header-inner{min-height:70px}.brand strong{font-size:1.65rem}.brand span{font-size:.5rem}.menu-toggle{display:block;margin-left:auto;background:transparent;border:0;font-size:1.45rem;color:var(--ink)}.header-inner nav{display:none;position:absolute;top:70px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:1rem 1.25rem;flex-direction:column;gap:.7rem}.header-inner nav.open{display:flex}.hero,.split,.advantages .split,.contact-grid{grid-template-columns:1fr}.hero{padding-top:3.2rem;gap:3rem}.hero-photo{height:390px;border-radius:46% 46% 8px 8px}.hero-copy{max-width:100%}h1{font-size:clamp(2.7rem,11vw,4.1rem)}.lead{font-size:1.08rem}.about-photo{height:380px;order:2}.about-cards,.features,.service-grid,.form-row{grid-template-columns:1fr}.section-heading{display:block}.section-heading h2{margin-bottom:1rem}.service-card img{height:230px}.feature-photo{height:400px;border-radius:10px 40% 40% 10px}.contact-form{padding:1.25rem}.footer-grid{grid-template-columns:1fr;gap:1.5rem}.map-link{margin-top:2rem}.section,.advantages{padding-block:4rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}section[id]{scroll-margin-top:90px}

.location-map{margin-top:3rem}
.location-map iframe{display:block;width:100%;height:380px;border:1px solid var(--line);border-radius:22px;background:var(--pale)}
.location-map .map-link{min-height:0;margin-top:1rem;padding:1rem;border-radius:16px}
@media(max-width:690px){.location-map{margin-top:2rem}.location-map iframe{height:300px}}

/* Keep the entire supplied magazine cover visible on every screen. */
.hero-photo{height:auto;aspect-ratio:1180 / 1600;object-fit:contain;border-radius:16px;box-shadow:0 16px 40px #40584419}

/* Burgundy, warm gold and ivory palette from the Inteldent cover. */
:root{--ink:#3d191d;--muted:#715558;--sage:#e4bf73;--line:#e2cfc0;--pale:#fbf1df;--wine:#641b29;--deep-wine:#381017;--gold:#e4bf73;--cream:#fffaf2}
body{background:var(--cream)}
.site-header{background:#fffaf2f5;border-bottom-color:#dbc5a6}
h1,h2,h3,.brand strong{color:var(--wine)}
.header-inner nav a:hover{color:#8a2938}
.eyebrow{color:#7b2936}.eyebrow:before{background:#a87c35}
.phone-top,.filled{background:var(--gold);color:var(--deep-wine)}
.button,.phone-top{transition:background-color .2s,color .2s,box-shadow .2s}
.button:hover,.phone-top:hover{filter:none;background:#d6aa52;box-shadow:0 5px 16px #641b2917}
.outline{border-color:#ad7c44;background:transparent;color:var(--wine)}
.outline:hover{background:var(--wine);color:var(--cream)}
.badge,.pill{background:#f2dfb6;color:#5b2527}
.hero-photo,.contact-form,.service-card{box-shadow:0 16px 40px #641b2910}
.about-cards>div,.service-card,.contact-form{background:#fffdf8}
.about-cards b{color:#95631e}
.advantages{background:var(--wine);color:var(--cream)}
.advantages h2,.advantages h3{color:var(--cream)}
.advantages .eyebrow{color:var(--gold)}
.advantages .eyebrow:before{background:var(--gold)}
.advantages .features>div{border-color:#ad775e;background:#ffffff06}
.advantages .features p{color:#f3e3d6}
.features h3:before{color:var(--gold)}
.contact-link a{color:var(--wine)}
.contact-form input,.contact-form textarea{background:var(--cream);border-color:#d7bdad;color:var(--ink)}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#80656a;opacity:1}
.location-map iframe,.map-link{background:var(--pale);border-color:#d7bdad}
.map-link{color:var(--wine)}
footer{background:var(--deep-wine);color:var(--cream)}
footer .brand strong{color:var(--cream)}
footer .brand span,.footer-grid b{color:var(--gold)}
.footer-grid,.copyright{border-color:#815146}
.footer-grid p,.copyright{color:#eed9c8}
.footer-grid a:hover{color:var(--gold)}
:where(a,button,input,textarea):focus-visible{outline:3px solid #a36c16;outline-offset:4px}
footer :where(a,button):focus-visible,.advantages :where(a,button):focus-visible{outline-color:var(--gold)}
@media(max-width:690px){.header-inner nav{background:var(--cream);border-color:var(--line)}}
@media(prefers-reduced-motion:reduce){.button,.phone-top{transition:none}}

.reviews-panel{padding:3rem;border:1px solid var(--line);border-radius:32px;background:var(--pale)}
.reviews-copy{max-width:800px;margin-bottom:2rem}.reviews-copy h2{font-size:clamp(2.1rem,3.3vw,3.4rem);margin-bottom:1.4rem}.reviews-copy>p:not(.eyebrow){color:var(--muted)}
.reviews-widget{min-width:0;width:100%}.reviews-google-link{margin:1.5rem 0 0;text-align:center;font-size:.95rem}.reviews-google-link a{color:var(--wine);text-decoration:underline;text-underline-offset:4px}
@media(max-width:690px){.reviews-panel{padding:1.25rem;border-radius:24px}.reviews-google-link{font-size:.85rem}}
