@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@1,600&family=Montserrat:wght@400;500;600;700&display=swap');
:root{--blue:#0877cf;--pale:#edf7fc;--ink:#101010;--muted:#58656e;--line:#c4d0d7;--display:"Cormorant Garamond",Georgia,serif;--sans:"Montserrat",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;color:var(--ink);font-family:var(--sans);line-height:1.6;overflow-x:hidden}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.shell{width:min(1720px,calc(100% - 10rem));margin:auto}.section-pad{padding:clamp(6rem,9vw,10rem) 0}.skip-link{position:fixed;z-index:999;top:-5rem;left:1rem;background:#111;color:#fff;padding:.7rem 1rem}.skip-link:focus{top:1rem}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}
.site-header{height:112px;border-bottom:1px solid #d9e1e5;background:#fff;display:flex;align-items:center;position:relative;z-index:20}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:block;width:110px;height:96px;overflow:hidden}.brand img{width:100%;height:100%;object-fit:contain}.site-nav{display:flex;align-items:center;gap:2.5rem;font-size:.9rem;font-weight:600}.site-nav>a:not(.nav-email):hover{color:var(--blue)}.language-toggle{border:0;background:none;color:var(--blue);font-weight:700}.language-toggle span[aria-hidden],.language-toggle span:not(.active){display:none}.nav-email{padding:.85rem 1.55rem;border-radius:999px;background:#111;color:#fff}.menu-toggle{display:none;border:0;background:none;padding:.5rem}.menu-toggle span:not(.sr-only){display:block;width:1.5rem;height:2px;background:#111;margin:.3rem}
.hero{min-height:820px;padding-top:88px}.hero-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:7vw;align-items:center}.eyebrow{margin:0 0 2rem;color:var(--blue);font-size:.74rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase}.eyebrow:before{display:none}.hero h1,.section-heading h2,.why h2,.hours h2,.estimate h2{margin:0;font-family:var(--display);font-style:italic;font-weight:600;line-height:.92;letter-spacing:-.045em}.hero h1{max-width:8ch;font-size:clamp(5rem,7.1vw,8rem)}.hero-lede{max-width:39rem;margin:2.5rem 0 0;color:var(--muted);font-size:1.06rem}.button-row{display:flex;align-items:center;gap:2.2rem;margin-top:2.2rem}.button{display:inline-flex;min-height:3.5rem;align-items:center;justify-content:center;padding:.8rem 1.55rem;border:1px solid transparent;font-size:.84rem;font-weight:700;transition:.2s}.button-dark{border-radius:999px;background:#111;color:#fff}.button-dark:hover{background:var(--blue);transform:translateY(-2px)}.text-link{padding:.4rem 0;border-bottom:1px solid;font-size:.86rem;font-weight:700}.hero-image{position:relative;margin:0}.hero-image img{width:100%;height:700px;object-fit:cover;border-radius:4px;filter:saturate(.62) brightness(1.08)}.hero-image figcaption{position:absolute;right:0;bottom:2rem;display:flex;gap:2rem;background:#fff;padding:1rem 1.35rem;font-size:.65rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}
.trust{padding:2.4rem 0;background:var(--blue);color:#fff}.trust .shell{display:grid;grid-template-columns:1.1fr 2fr;align-items:center;gap:4rem}.trust-title{margin:0;font:600 italic 1.8rem/1.1 var(--display)}.trust-items{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;font-size:.66rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.trust-items span{padding-left:1.2rem;border-left:1px solid #ffffff70}.trust-items span:before{display:none}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:end;margin-bottom:5rem}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:.4rem}.section-heading h2,.why h2,.hours h2,.estimate h2{font-size:clamp(4.3rem,6vw,7rem)}.section-heading>p:last-child{max-width:35rem;margin:0;color:var(--muted)}.service-list{border-top:1px solid var(--line)}.service-card{display:grid;grid-template-columns:5rem 1fr auto;gap:1rem;align-items:center;padding:2.3rem 0;border-bottom:1px solid var(--line);transition:.2s}.service-card:hover{padding-left:1rem;background:var(--pale)}.number{color:var(--blue);font-size:.7rem;font-weight:700;letter-spacing:.15em}.service-card h3{margin:0;font:600 italic clamp(2.1rem,3vw,3.4rem)/1 var(--display)}.service-card p{max-width:48rem;margin:.5rem 0 0;color:var(--muted);font-size:.88rem}.service-icon{display:grid;width:3.5rem;height:3.5rem;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--blue);font-size:1.5rem}.title-line{display:flex;align-items:center;gap:1.2rem;flex-wrap:wrap}.pill{padding:.3rem .8rem;border-radius:999px;background:var(--blue);color:#fff;font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.why{background:var(--pale)}.why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:9vw;align-items:center}.why-art{min-height:590px;display:flex;align-items:flex-end;justify-content:center}.arch{position:relative;width:min(440px,90%);height:570px;overflow:hidden;border-radius:15rem 15rem 0 0;background:#fff}.arch:after{content:"";position:absolute;bottom:0;width:100%;height:14px;background:#8bc3e6}.bottle{position:absolute;bottom:14px;left:43%;width:115px;height:195px;border-radius:18px 18px 8px 8px;background:var(--blue);transform:translateX(-50%)}.bottle:before{content:"";position:absolute;top:-45px;left:36px;width:44px;height:50px;border-radius:7px 7px 0 0;background:#111}.plant{position:absolute;right:35px;bottom:-15px;color:#086dbb;font:185px var(--display);transform:rotate(-15deg)}.spark{position:absolute;color:#57a5da;font-size:2.2rem}.spark-one{top:100px;left:55px}.spark-two{top:190px;right:60px}.why-copy>p:not(.eyebrow){max-width:40rem;margin:2.5rem 0;color:var(--muted);font-size:1.04rem}.label-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:4rem;padding-top:1.5rem;border-top:1px solid var(--line)}.label-grid span{font-size:.63rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.hours-grid{display:grid;grid-template-columns:1fr 1fr;gap:11vw}.hours .section-heading{display:block;margin:0}.hours .section-heading h2{max-width:8ch}.hours .section-heading>p:not(.eyebrow){max-width:29rem;margin:2.5rem 0;color:var(--muted)}.hours .text-link{color:var(--blue)}.hours-list{margin:0;border-top:1px solid var(--line)}.hours-list div{display:flex;justify-content:space-between;padding:1.2rem 0;border-bottom:1px solid var(--line)}.hours-list dt{font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.hours-list dd{margin:0;color:var(--muted)}
.estimate{padding:4.5rem 0 0;background:var(--pale)}.estimate .shell{width:min(1800px,calc(100% - 8rem))}.estimate-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:6rem;align-items:start}.estimate-intro{padding:0 1.5rem 5rem}.estimate-intro h2{max-width:7ch}.estimate-intro>p:not(.eyebrow){max-width:36rem;margin:2.5rem 0;color:var(--muted)}.estimate-intro address{display:flex;flex-direction:column;gap:.3rem;font-style:normal;font-size:.84rem;font-weight:700}.estimate-intro address a:last-child{color:var(--blue)}.estimate-form{padding:4.5rem 4.2rem;background:#fff;box-shadow:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem 1.5rem}.field{display:flex;flex-direction:column;min-width:0}.field.full{grid-column:1/-1}.field label,.field legend{margin-bottom:.5rem;font-size:.68rem;font-weight:700;letter-spacing:.1em;line-height:1.3;text-transform:uppercase}.field b{color:var(--blue)}.field input,.field select,.field textarea{width:100%;min-height:42px;padding:.5rem .2rem;border:0;border-bottom:1px solid #aebcc5;border-radius:0;background:#fff;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--blue);box-shadow:0 2px 0 var(--blue)}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:#a23224}.error{min-height:1em;color:#a23224;font-size:.66rem}.split{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.split>div{display:flex;flex-direction:column}fieldset.field{margin:0;padding:0;border:0}.field legend{padding:0}.radio-row{display:flex;gap:.5rem;flex-wrap:wrap}.radio-row label{margin:0;font-weight:400;letter-spacing:0;text-transform:none}.radio-row input{position:absolute;opacity:0}.radio-row span{display:block;padding:.5rem .7rem;border:1px solid var(--line)}.radio-row input:checked+span{border-color:var(--blue);background:var(--blue);color:#fff}.checks{gap:1rem}.checks label{display:flex;align-items:center;gap:.8rem;margin:0;font-size:.7rem}.checks input{width:20px;height:20px;min-height:auto;accent-color:var(--blue)}.submit-row{display:flex;align-items:center;gap:1.5rem;margin-top:2.5rem}.form-note{margin:0;color:var(--muted);font-size:.68rem;line-height:1.4}.form-status{display:none;margin-top:1rem;padding:1rem;border-left:3px solid var(--blue);background:var(--pale);font-size:.84rem}.form-status.show{display:block}.form-status.error-status{border-color:#a23224;background:#fff0ed}
.site-footer{padding:4.5rem 0 1.5rem;background:#101010;color:#fff}.footer-top{display:grid;grid-template-columns:1.5fr .7fr 1fr;gap:4rem}.footer-brand{width:125px;height:105px;background:#fff}.footer-top>div>p{font:600 italic 1.8rem var(--display)}.footer-top nav,.footer-contact{display:flex;flex-direction:column;align-items:flex-start;gap:.8rem;font-size:.8rem}.button-light{border:1px solid #fff;border-radius:999px}.button-light:hover{background:#fff;color:#111}.footer-bottom{display:flex;justify-content:space-between;gap:2rem;margin-top:3.5rem;padding-top:1.4rem;border-top:1px solid #3c3c3c;color:#aaa;font-size:.63rem;letter-spacing:.1em;text-transform:uppercase}.reveal{opacity:0;transform:translateY(14px);transition:.65s}.reveal.visible{opacity:1;transform:none}:focus-visible{outline:3px solid #0877cf70;outline-offset:4px}
@media(max-width:1100px){.shell{width:min(100% - 4rem,1720px)}.site-nav{gap:1.4rem}.hero-grid{gap:4rem}.hero-image img{height:600px}.estimate .shell{width:min(100% - 4rem,1800px)}.estimate-grid{gap:3rem}.estimate-form{padding:3rem}}
@media(max-width:850px){.site-header{height:95px}.brand{width:95px;height:82px}.menu-toggle{display:block;z-index:2}.site-nav{position:absolute;top:0;left:0;width:100%;padding:7rem 2rem 2.5rem;background:#fff;flex-direction:column;align-items:flex-start;transform:translateY(-110%);transition:.3s;box-shadow:0 15px 30px #00000014}.site-nav.open{transform:none}.menu-toggle[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.menu-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero-grid,.why-grid,.hours-grid,.estimate-grid{grid-template-columns:1fr}.hero{padding-top:5rem}.hero-image img{height:520px}.trust .shell{grid-template-columns:1fr}.trust-items{grid-template-columns:1fr 1fr}.estimate-intro{padding-inline:0}}
@media(max-width:600px){.shell,.estimate .shell{width:min(100% - 2rem,1720px)}.section-pad{padding:5rem 0}.hero h1{font-size:4.1rem}.hero-image img{height:390px}.button-row{align-items:flex-start;flex-direction:column;gap:1rem}.trust-items{grid-template-columns:1fr}.section-heading{grid-template-columns:1fr;margin-bottom:3rem}.section-heading .eyebrow{grid-column:auto}.section-heading h2,.why h2,.hours h2,.estimate h2{font-size:4rem}.service-card{grid-template-columns:2.5rem 1fr}.service-icon{display:none}.why-art{min-height:0}.arch{height:430px}.label-grid{grid-template-columns:1fr 1fr}.estimate-form{padding:2.2rem 1.3rem}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.submit-row{flex-direction:column;align-items:stretch}.footer-top{grid-template-columns:1fr 1fr}.footer-top>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column}}
@media(max-width:400px){.hero h1,.section-heading h2,.why h2,.hours h2,.estimate h2{font-size:3.3rem}.split{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr}.footer-top>div:first-child{grid-column:auto}.radio-row{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*{transition-duration:.01ms!important}}
