.gc-home-team,.gc-home-areas,.gc-home-booking{padding:80px 0}
.gc-home-team .gc-section-heading>p,.gc-home-areas .gc-section-heading>p{max-width:460px;font-size:17px;line-height:1.8;color:#71695d}
.gc-home-team .gc-section-heading>div,.gc-home-areas .gc-section-heading>div{max-width:570px}
.gc-team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.gc-team-person{min-width:0}.gc-team-portrait{overflow:hidden;border-radius:6px;background:#eae0cd;aspect-ratio:1.12}
.gc-team-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 12%;display:block}
.gc-team-person-copy{padding:23px 0 0}.gc-team-person h3{font-size:28px;font-weight:650;letter-spacing:-.7px;line-height:1.2;margin-bottom:7px}
.gc-team-person p{font-size:15px;line-height:1.7;color:#736959}.gc-team-person .gc-team-role{font-size:14px;color:#8c5315}.gc-team-person p+p{margin-top:12px}
.gc-home-areas{background:#f0ece3;border-block:1px solid #e4ddcf}
.gc-area-introduction{display:grid;grid-template-columns:1fr 1.15fr;gap:46px;align-items:stretch;margin:40px 0 50px}
.gc-same-day{padding:36px;background:#27251e;border-radius:6px;color:#fff6e6}
.gc-same-day .gc-eyebrow{color:#eeb871}.gc-same-day h3{font-size:36px;letter-spacing:-1px;font-weight:600;line-height:1.12;margin-bottom:20px}
.gc-same-day>p:not(.gc-eyebrow){font-size:16px;line-height:1.8;color:#d5cebf}
.gc-area-phone{font-size:30px;font-weight:650;display:flex;align-items:center;justify-content:flex-start;gap:10px;margin:24px 0 17px;color:#fff6e6}
.gc-same-day .gc-text-link{color:#ecc087;font-size:14px}
html:not(.gc-js) [data-show-map]{display:none}
.gc-map-panel{display:flex;flex-direction:column;min-width:0}.gc-area-map{position:relative;min-height:330px;flex:1;background:#e6dfd1;border:1px solid #d7cbbb;border-radius:6px;z-index:0}
.gc-map-placeholder{padding:35px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;min-height:330px;height:100%;background:radial-gradient(ellipse at center,#faf7ed 0,transparent 70%),repeating-linear-gradient(30deg,transparent 0 69px,#cbbf9f33 70px 71px)}
.gc-map-placeholder>span{font-size:45px;color:#977033;margin-bottom:12px}.gc-map-placeholder h3{font-size:26px;font-weight:600;letter-spacing:-.5px;margin-bottom:13px}.gc-map-placeholder p{font-size:14px;line-height:1.7;max-width:300px;color:#746956;margin-bottom:20px}.gc-map-placeholder .gc-button{font-size:14px}.gc-map-status{font-size:12px;line-height:1.6;color:#7a705f;margin:12px 0 0}
.gc-area-map.leaflet-container{background:#24231e}.gc-area-map .leaflet-tile-pane{filter:invert(1) sepia(.9) grayscale(.4)}.gc-area-map img.leaflet-tile{mix-blend-mode:normal}
.gc-area-map .leaflet-control-zoom a{color:#29251e;background:#faf3e5}.gc-area-map .leaflet-popup-content{line-height:1.8}.gc-area-map .leaflet-popup-content a{color:#8c5315;text-decoration:underline}
.gc-map-dot{display:grid;place-items:center;border:0;border-radius:50%;background:none}
.gc-map-dot::before{content:'';width:10px;height:10px;border:1.5px solid #fff2d7;border-radius:50%;background:#f7a84e;box-shadow:0 1px 4px #0008}
.gc-map-dot-priority::before{width:14px;height:14px}
.gc-map-dot:hover::before,.gc-map-dot:focus-visible::before{background:#ffdc9f}
.gc-area-map .gc-map-dot:focus-visible{outline:2px solid #fff2d7;outline-offset:0}
.gc-map-place strong,.gc-map-place a{display:block}.gc-map-place+.gc-map-place{border-top:1px solid #e4ddcf;margin-top:10px;padding-top:10px}
.gc-area-directory-heading{display:flex;gap:30px;justify-content:space-between;align-items:end;margin-bottom:25px}.gc-area-directory-heading h3{font-size:26px;font-weight:600;letter-spacing:-.6px;margin-bottom:9px}.gc-area-directory-heading p{font-size:14px;color:#665f54;line-height:1.7}
.gc-area-search{font-size:12px;font-weight:650;min-width:270px}.gc-area-search input{display:block;width:100%;margin-top:8px;border:1px solid #cfc3b1;border-radius:4px;background:#fffcf7;font:15px Urbanist,Arial,sans-serif;padding:13px;color:#29251e;height:48px}
.gc-area-groups{display:grid;grid-template-columns:1fr 1fr;gap:20px}.gc-area-group{padding:28px;border:1px solid #ddd4c4;background:#f9f6ef;border-radius:5px;min-width:0}.gc-area-priority{background:#fffdf9;border-top:3px solid #bd812f}.gc-area-group h3{font-size:23px;font-weight:650;line-height:1.25;letter-spacing:-.4px;margin-bottom:13px}.gc-area-group>p{font-size:14px;line-height:1.8;color:#756a59;margin-bottom:20px}
.gc-area-group ul{list-style:none;display:flex;flex-wrap:wrap;gap:8px;padding:0;margin:0}.gc-area-group li{margin:0}.gc-area-group a{display:inline-flex;align-items:center;min-height:38px;font-size:13px;padding:8px 12px;border:1px solid #ded4c1;background:#fffdf7;border-radius:3px;line-height:1.5;color:#675136}.gc-area-group a:hover{background:#f2e2c8;border-color:#b6874a;color:#3a2c17}
.gc-area-other,.gc-area-search-result{font-size:14px;line-height:1.8;margin-top:24px;color:#746958}.gc-area-other a{color:#905216;text-decoration:underline;text-underline-offset:4px}
.gc-booking-layout{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:80px;align-items:start}
.gc-booking-copy h2{font-size:clamp(36px,4vw,54px);line-height:1.1;font-weight:600;letter-spacing:-1.8px;margin-bottom:24px}.gc-booking-intro>p:not(.gc-eyebrow){font-size:17px;line-height:1.8;color:#665f54}
.gc-booking-steps{padding:0;list-style:none;display:grid;gap:23px;margin:34px 0}.gc-booking-steps li{display:flex;gap:18px;align-items:start}.gc-booking-steps li>span{font-size:11px;letter-spacing:1px;color:#875418;border:1px solid #ded2bd;border-radius:50%;display:grid;place-items:center;width:34px;height:34px;flex-shrink:0}.gc-booking-steps h3{font-size:17px;font-weight:650;line-height:1.5;margin:0 0 5px}.gc-booking-steps p{font-size:14px;line-height:1.7;color:#665f54}
.gc-booking-call{padding-top:25px;border-top:1px solid #ded6c7}.gc-booking-call>span{display:block;font-size:13px;color:#665f54;margin-bottom:10px}.gc-booking-call>a{display:inline-flex;align-items:center;gap:10px;font-size:29px;font-weight:650;color:#8e5110;letter-spacing:-.5px}
.gc-booking-panel{border:1px solid #e0d6c4;background:#fffdf8;border-radius:7px;padding:34px;box-shadow:0 12px 35px #57411c08;min-width:0}.gc-booking-panel h2,.gc-booking-panel h3{font-size:28px;font-weight:650;letter-spacing:-.7px;line-height:1.2;margin-bottom:10px}.gc-booking-form-intro{font-size:14px;color:#796f60;line-height:1.7;margin-bottom:25px}
.gc-booking-panel label{display:block;font-size:13px;font-weight:650;line-height:1.5;margin-top:19px;color:#4e4536}.gc-booking-panel label>span{font-size:10px;font-weight:400;color:#817665;margin-left:6px}.gc-booking-panel label>small{display:block;font-size:11px;font-weight:400;line-height:1.6;color:#837764;margin-top:7px}
.gc-booking-panel input,.gc-booking-panel textarea,.gc-booking-panel select{display:block;width:100%;min-width:0;border:1px solid #d7cdbb;border-radius:4px;background:#fff;color:#2d281f;padding:13px;font:16px Urbanist,Arial,sans-serif;line-height:1.5;margin-top:7px;box-shadow:none}.gc-booking-panel input,.gc-booking-panel select{height:49px}.gc-booking-panel textarea{resize:vertical;min-height:110px}.gc-booking-panel input::placeholder,.gc-booking-panel textarea::placeholder{color:#948a7a;font-size:14px}.gc-booking-panel input:focus,.gc-booking-panel textarea:focus,.gc-booking-panel select:focus{border-color:#ad7125;outline:2px solid #ecd3ad;outline-offset:1px}
.gc-booking-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.gc-booking-panel .gc-button{width:100%;margin-top:23px}.gc-booking-panel .gc-button:disabled{opacity:.6;cursor:wait}.gc-booking-note{font-size:12px;line-height:1.7;color:#817564;margin-top:13px}.gc-booking-note a{text-decoration:underline}.gc-booking-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.gc-booking-success{padding:36px 0}.gc-booking-success>span{font-size:33px;display:grid;place-items:center;width:60px;height:60px;border:1px solid #ccd9c5;color:#506e39;border-radius:50%;margin-bottom:25px}.gc-booking-success>p:not(.gc-eyebrow){font-size:16px;line-height:1.8;color:#776b59;margin-top:18px}.gc-booking-success:focus{outline:none}
.gc-booking-summary{margin:24px 0;display:grid;gap:6px;overflow-wrap:anywhere}.gc-booking-summary dt{font-size:12px;font-weight:700;color:#d4ccbd}.gc-booking-summary dd{margin:0 0 12px;font-size:16px;line-height:1.55;color:#fff8eb}
.gc-booking-panel [data-booking-error],.gc-booking-preview{padding:14px;border:1px solid #d7a88c;border-radius:4px;color:#8a3e20;background:#fff3e9;font-size:14px;line-height:1.6;margin-top:16px}
.gc-home-team [hidden],.gc-home-areas [hidden],.gc-home-booking [hidden]{display:none!important}
@media(max-width:1000px){.gc-booking-layout{gap:35px}.gc-booking-panel{padding:26px}.gc-area-introduction{gap:25px}.gc-same-day{padding:28px}.gc-team-grid{gap:20px}.gc-team-portrait{aspect-ratio:.95}.gc-booking-pair{grid-template-columns:1fr;gap:0}}
@media(max-width:700px){.gc-home-team,.gc-home-areas,.gc-home-booking{padding:45px 0}.gc-home-team .gc-section-heading>p,.gc-home-areas .gc-section-heading>p{font-size:16px}.gc-team-grid{grid-template-columns:1fr;gap:25px}.gc-team-person{display:grid;grid-template-columns:128px minmax(0,1fr);gap:22px;align-items:center}.gc-team-portrait{aspect-ratio:.88}.gc-team-person-copy{padding:0}.gc-team-person h3{font-size:25px}.gc-team-person p{font-size:13px}.gc-area-introduction,.gc-area-groups,.gc-booking-layout{grid-template-columns:1fr}.gc-area-introduction{gap:25px;margin:30px 0}.gc-same-day h3{font-size:32px}.gc-same-day>p:not(.gc-eyebrow){font-size:15px}.gc-area-map,.gc-map-placeholder{min-height:280px}.gc-area-directory-heading{align-items:stretch;flex-direction:column;gap:20px}.gc-area-search{min-width:0}.gc-area-group{padding:23px}.gc-area-group h3{font-size:22px}.gc-area-group a{font-size:12px;min-height:40px}.gc-booking-copy h2{font-size:42px}.gc-booking-intro>p:not(.gc-eyebrow){font-size:16px}.gc-booking-panel{padding:25px 20px}.gc-booking-panel h3{font-size:26px}.gc-booking-success{padding:15px 0}.gc-team-person:only-child{max-width:500px}}
@media(max-width:360px){.gc-team-person{grid-template-columns:105px minmax(0,1fr);gap:15px}.gc-team-person h3{font-size:22px}.gc-area-phone{font-size:26px}.gc-booking-copy h2{font-size:37px}}
.gc-area-group:last-child:nth-child(odd){grid-column:1/-1}.gc-area-group:last-child:nth-child(odd)>p{max-width:850px}
@media(max-width:700px){.gc-booking-layout{display:flex;flex-direction:column;gap:27px}.gc-booking-copy{display:contents}.gc-booking-intro{order:0}.gc-booking-panel{order:1;width:100%}.gc-booking-details{order:2;width:100%}.gc-booking-steps{margin-top:0}}
.gc-local-note{border-top:1px solid #dfd5c2;margin-top:20px;padding-top:15px}.gc-local-note summary{font-size:14px;font-weight:650;line-height:1.6;color:#80531c;cursor:pointer;padding-block:5px}.gc-local-note p{font-size:14px;line-height:1.8;color:#756a59;margin-top:13px;overflow-wrap:anywhere}

.gc-booking-commercial{border:1px solid #e2d5c0;border-radius:6px;padding:16px;margin:22px 0;min-width:0}.gc-booking-commercial legend{font-size:14px;font-weight:650;padding:0 7px}.gc-booking-commercial>p{font-size:13px;color:#786e60;line-height:1.6;margin:0}
.gc-booking-progress{list-style:none;display:flex;gap:25px;margin:0 0 7px;padding:0 0 22px;border-bottom:1px solid #e5dccd}
.gc-booking-panel{scroll-margin-top:110px}
.gc-booking-progress li{display:flex;align-items:center;gap:9px;font-size:13px;color:#8b8070;line-height:1.5}.gc-booking-progress li>span{display:grid;place-items:center;flex-shrink:0;width:27px;height:27px;border:1px solid #dacfbf;border-radius:50%;font-size:12px}
.gc-booking-progress [aria-current=step]{color:#784716;font-weight:650}.gc-booking-progress [aria-current=step]>span{background:#a95800;border-color:#a95800;color:#fff}
.gc-booking-actions{display:flex;align-items:center;gap:20px;margin-top:23px}.gc-booking-actions .gc-button{margin-top:0;flex:1}.gc-booking-back{flex-shrink:0;background:transparent;border:0;border-radius:3px;padding:14px 4px;font:600 14px Urbanist,Arial,sans-serif;color:#7c531f;cursor:pointer}.gc-booking-back:hover{text-decoration:underline}.gc-booking-back:focus-visible{outline:2px solid #ad7125;outline-offset:3px}
.gc-booking-address{position:relative}.gc-address-help{font-size:12px;line-height:1.6;color:#817564;margin:8px 0 0}.gc-address-suggestions{position:absolute;top:77px;left:0;right:0;z-index:20;background:#fffdf8;border:1px solid #c4a16f;border-radius:4px;box-shadow:0 10px 25px #37271026;overflow:hidden}
.gc-address-suggestions ul{list-style:none;margin:0;padding:4px;max-height:235px;overflow-y:auto;overscroll-behavior:contain}.gc-address-suggestions [role=option]{padding:12px 10px;margin:0;font-size:14px;line-height:1.5;color:#403529;cursor:pointer;border-radius:2px;overflow-wrap:anywhere}.gc-address-suggestions [role=option]+[role=option]{border-top:1px solid #f0e9dc}.gc-address-suggestions [role=option]:hover,.gc-address-suggestions [aria-selected=true]{background:#f3e5cf;color:#703e0a}.gc-address-suggestions>p{margin:0;padding:7px 12px;border-top:1px solid #e5dccd;font-size:10px;text-align:right;color:#817564}.gc-address-suggestions a{text-decoration:underline}
@media(max-width:360px){.gc-booking-progress{gap:15px}.gc-booking-progress li{font-size:12px;gap:7px}.gc-booking-actions{gap:12px}.gc-booking-actions .gc-button{font-size:14px;padding-inline:12px}}
@media(max-width:700px){.gc-booking-panel{scroll-margin-top:90px}}

/* A clear destination for every appointment link, including incoming URL fragments. */
.gc-public #booking-block{scroll-margin-top:144px;outline:none}
.gc-home-booking{background:#f0ece3}
.gc-booking-panel{background:#27251e;color:#fff8eb;border:1px solid #514532;border-top:4px solid #efb75f;box-shadow:0 14px 40px #28201418}
.gc-booking-panel h2,.gc-booking-panel h3{color:#fff8eb}
.gc-booking-panel label{color:#fff1d8}
.gc-booking-panel label>span,.gc-booking-panel label>small,
.gc-booking-form-intro,.gc-booking-note,.gc-address-help,
.gc-booking-commercial>p,.gc-booking-success>p:not(.gc-eyebrow){color:#d4ccbd}
.gc-booking-panel input,.gc-booking-panel textarea,.gc-booking-panel select{background:#fffdf8;border-color:#d7c5a8;color:#29251e}
.gc-booking-panel input::placeholder,.gc-booking-panel textarea::placeholder{color:#70685c}
.gc-booking-panel input:focus,.gc-booking-panel textarea:focus,.gc-booking-panel select:focus{border-color:#efb75f;outline-color:#efb75f}
.gc-booking-panel .gc-button{font-size:16px}
.gc-booking-progress{border-color:#635744}
.gc-booking-progress li{color:#c9bfaf}
.gc-booking-progress li>span{border-color:#8e7b5e}
.gc-booking-progress [aria-current=step]{color:#f7cf94}
.gc-booking-progress [aria-current=step]>span{background:#f3b75f;border-color:#f3b75f;color:#292218}
.gc-booking-back,.gc-booking-panel .gc-eyebrow{color:#f3c98b}
.gc-booking-commercial{border-color:#776348}
.gc-booking-success>span{color:#d4e5bf;border-color:#8a9b76}

.gc-mobile-disclosure{min-width:0}
.gc-mobile-disclosure>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;font-size:16px;font-weight:650;line-height:1.5;padding:20px 0;color:#44351f;border-block:1px solid #d9cdb8}
.gc-mobile-disclosure>summary::-webkit-details-marker{display:none}
.gc-mobile-disclosure>summary>span{font-size:23px;font-weight:400;color:#90602c;line-height:1;flex-shrink:0}
.gc-mobile-disclosure[open]>summary>span{transform:rotate(45deg)}
.gc-disclosure-body{padding-top:24px}
.gc-more-home-prices{margin-top:18px}
@media(min-width:701px){
  .gc-js .gc-mobile-disclosure>summary{display:none}
  .gc-js .gc-disclosure-body{padding-top:0}
  .gc-more-home-prices{margin-top:0}
  .gc-more-home-prices .gc-price-list{margin-top:16px}
}
@media(max-width:700px){
  .gc-public #booking-block{scroll-margin-top:118px}
  .gc-booking-panel{padding:25px 20px}
  .gc-booking-panel h2,.gc-booking-panel h3{font-size:26px}
  .gc-booking-form-intro{margin-bottom:20px}
  .gc-booking-details .gc-booking-steps{margin-top:0}
  .gc-booking-details>summary{border-top:0}
}
