:root{--navy:#17344d;--gold:#d6a43a;--cream:#f7f5ef;--blue:#dfe8ed;--ink:#273c48}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:18px;line-height:1.65;background:#fff}a{color:inherit}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{touch-action:manipulation}button{cursor:pointer}a,button{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b78518;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--navy)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-1.8px}h1{font-size:clamp(52px,5.1vw,80px);margin-bottom:25px}h2{font-size:clamp(38px,3.5vw,54px);margin-bottom:25px}h3{font-size:23px;line-height:1.35;font-weight:500;margin-bottom:18px}p{margin-bottom:20px}.topline{background:var(--navy);color:white;padding:9px 5%;font-size:11px;letter-spacing:1.8px;display:flex;justify-content:space-between}header{display:flex;justify-content:space-between;align-items:center;padding:21px 5%;background:#fff;position:sticky;top:0;z-index:5;border-bottom:1px solid #e6e9eb}.brand{display:flex;align-items:center;text-decoration:none;color:var(--navy);font-family:Georgia,serif;font-weight:bold;font-size:34px;line-height:1}.brand svg{width:57px;margin-right:12px;stroke:var(--gold);stroke-width:2.5;fill:none;stroke-linecap:round}.brand small{font:10px Arial,sans-serif;letter-spacing:3px;display:block;margin-top:8px}nav{display:flex;gap:30px;align-items:center;font-size:15px}nav>a{text-decoration:none}nav>a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--navy);color:white;border:1px solid var(--navy);padding:16px 23px;font-size:16px;text-decoration:none;line-height:1.5;transition:background .2s}.button:hover{background:#28516c}.button.small{padding:12px 18px}.menu{display:none}.hero{display:grid;grid-template-columns:46% 54%;background:var(--cream);min-height:620px}.hero-copy{padding:80px 9% 65px 11%}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:bold;margin-bottom:23px}.lead{font-size:18px;max-width:460px;line-height:1.7}h1 em{font-weight:400;color:#9b7426}.quiet{font-size:13px;margin-top:15px}.hero-photo{position:relative;min-height:540px;overflow:hidden}.hero-photo>img{width:100%;height:100%;object-fit:cover;object-position:53% center;position:absolute}.photo-note{position:absolute;bottom:30px;left:30px;background:var(--cream);padding:19px 26px;color:var(--navy);font-size:20px;font-family:Georgia,serif;box-shadow:0 6px 24px #17344d12}.photo-note small{display:block;font:12px Arial,sans-serif;margin:8px 0 0 25px}.gold{color:#9b7426;margin-right:5px}.values{display:flex;justify-content:center;gap:9%;padding:23px 5%;border-bottom:1px solid #d9e0e4;font-size:14px}.values span:before{content:'✓';color:#9b7426;padding-right:12px}.section{padding:90px max(5%,calc((100% - 1260px)/2));}.section-head{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:end;margin-bottom:45px}.section-head p:last-child{max-width:470px}.section-head h2{margin-bottom:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.service-grid article{border-top:2px solid var(--gold);padding-top:25px}.number{font-size:11px;letter-spacing:1.5px;color:#617582;display:block;margin-bottom:25px}.service-grid ul{font-size:16px;padding-left:20px;line-height:1.8}.service-grid li{padding-left:5px;margin-bottom:8px}.scope{font-size:13px;color:#596c77;margin-top:30px;max-width:950px}.how{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:var(--blue)}.how>div>p:last-child{max-width:430px}.how ol{padding:0;margin:0;list-style:none}.how li{display:flex;gap:22px;border-bottom:1px solid #b8c9d3;padding:0 0 22px;margin-bottom:25px}.how li:last-child{border:0;margin-bottom:0;padding-bottom:0}.how li>span{font-family:Georgia,serif;font-size:32px;color:#738d9e}.how li h3{margin-bottom:7px}.how li p{font-size:16px;margin:0}.story{display:grid;grid-template-columns:.85fr 1.15fr;gap:9%;align-items:center}.portrait img{width:100%;display:block;max-height:640px;object-fit:cover;object-position:center}.portrait>div{font-size:13px;letter-spacing:1px;border-bottom:1px solid #d9e0e4;padding:20px 0}.portrait span{float:right;color:#657884;font-size:11px}.story-copy p{font-size:16px}.signature{font-family:Georgia,serif;font-size:24px;color:var(--navy);padding-top:10px}.signature span{font:11px Arial,sans-serif;text-transform:uppercase;letter-spacing:2px;display:block;margin-top:10px}.pricing{background:var(--cream)}.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.price-grid article{padding:38px 40px;border:1px solid #cdd6d9;background:#fff}.price-grid article.intro{background:var(--navy);color:#fff;border-color:var(--navy)}.intro h3,.intro .price{color:#fff}.intro .eyebrow{color:#ecc66f}.intro .button{background:#e6bd62;color:var(--navy);border-color:#e6bd62}.price{font-family:Georgia,serif;font-size:56px;line-height:1.2;color:var(--navy);margin:24px 0}.price small{font:16px Arial,sans-serif}.price-grid ul{padding-left:20px;font-size:15px;min-height:103px}.price-grid li{margin-bottom:9px}.price-grid p:not(.eyebrow){font-size:17px}.price-grid .button{width:100%}fieldset{padding:0;border:0;margin:0 0 20px}legend{font-size:13px;margin-bottom:9px}.hours{display:flex;gap:8px}.hours label{flex:1;cursor:pointer;position:relative}.hours input{position:absolute;opacity:0}.hours span{display:block;padding:8px 5px;border:1px solid #b9c7d0;text-align:center;font-size:15px}.hours input:checked+span{background:var(--navy);color:#fff;border-color:var(--navy)}.hours input:focus-visible+span{outline:3px solid var(--gold);outline-offset:2px}.occasional{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #cdd6d9;padding:33px 0 20px}.occasional h3{margin-bottom:8px}.occasional p{font-size:16px}.text-button{border:0;background:none;color:var(--navy);padding:12px;font-size:16px;text-decoration:underline;text-underline-offset:6px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:8%}details{border-bottom:1px solid #d9e0e4;padding:21px 0}details:first-child{padding-top:0}summary{font-size:19px;cursor:pointer;color:var(--navy);padding-right:20px}details p{font-size:16px;margin:18px 0 0}.start{text-align:center;background:var(--navy);color:white;padding-top:75px;padding-bottom:65px}.start h2{color:white;font-size:clamp(40px,4vw,60px)}.start .eyebrow{color:#e6bd62}.start .button{background:#e6bd62;color:var(--navy)}.preview-note{font-size:12px;color:#c8d5dc;margin:20px 0 0}footer{display:flex;justify-content:space-between;gap:30px;padding:40px 5%;font-size:13px}footer strong{font-family:Georgia,serif;font-size:22px}footer p{margin:8px 0 0}dialog{border:0;padding:42px;max-width:580px;width:calc(100% - 32px);max-height:90vh;overflow:auto;color:var(--ink)}dialog::backdrop{background:#102d43b8}dialog h2{font-size:36px}dialog>p{font-size:15px}.close{position:absolute;right:15px;top:8px;background:none;border:0;font-size:30px;color:var(--navy)}form label{display:block;font-size:14px;margin:20px 0}form select,form textarea{display:block;width:100%;padding:11px;margin-top:7px;border:1px solid #a8bac5;background:white;color:var(--ink);font-size:16px}#saved{font-size:14px;margin:15px 0 0}.skip{position:fixed;top:-100px;left:20px;z-index:20;background:white;padding:10px}.skip:focus{top:10px}@media(min-width:1600px){.hero-copy{padding-left:calc((100vw - 1260px)/2)}}@media(max-width:1050px){nav{gap:18px}nav .small{display:none}.hero-copy{padding:65px 8% 50px 11%}.hero{grid-template-columns:48% 52%;min-height:570px}.hero-photo{min-height:500px}.service-grid{gap:22px}.section{padding:65px 5%}.section-head{gap:6%}.price-grid article{padding:30px}.story{gap:6%}.values{gap:5%;font-size:12px}}@media(max-width:700px){body{font-size:17px}.topline{font-size:8px;letter-spacing:1px;padding:9px 5%}header{padding:15px 5%}.brand{font-size:28px}.brand svg{width:43px}.brand small{font-size:8px}.menu{display:block;border:1px solid #ccd5dc;background:white;padding:7px 14px;font-size:14px;color:var(--navy)}nav{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;border-bottom:1px solid #d9e0e4;padding:20px 5%;flex-direction:column;align-items:flex-start;gap:15px}nav.open{display:flex}nav .small{display:flex}.hero{display:flex;flex-direction:column}.hero-copy{padding:48px 6% 35px}h1{font-size:59px}.hero-photo{min-height:350px}.hero-photo>img{object-position:center 45%}.photo-note{bottom:20px;left:20px;padding:14px 20px;font-size:18px}.values{justify-content:space-around;gap:12px;align-items:center;font-size:10px;text-align:center;padding:20px 4%;line-height:1.5}.values span:before{display:block;padding:0;font-size:16px}.section{padding:55px 6%}.section-head,.how,.story,.faq{grid-template-columns:1fr;gap:25px}.section-head{margin-bottom:30px}.section-head p:last-child{margin:0}.service-grid{grid-template-columns:1fr;gap:25px}.service-grid article{padding-top:20px}.service-grid h3 br{display:none}.number{margin-bottom:15px}.service-grid ul{margin-bottom:0}.how{gap:30px}.portrait{max-width:380px}.portrait img{max-height:440px}.story{gap:35px}.price-grid{grid-template-columns:1fr}.price-grid article{padding:28px}.price-grid ul{min-height:0;margin-bottom:25px}.occasional{align-items:flex-start;flex-direction:column;gap:0}.occasional p{margin-bottom:0}.text-button{padding-left:0}.faq{gap:20px}.start p br{display:none}footer{flex-direction:column;gap:18px;padding:30px 6%}dialog{padding:32px 24px}.eyebrow{font-size:10px;letter-spacing:1.6px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Direct visit requests use the established New Day palette and typography. */
header{gap:22px}.brand{flex-shrink:0}.header-phone{color:var(--navy);font-size:16px;font-weight:700;text-decoration:none;white-space:nowrap;margin-left:auto}#navigation{gap:24px}#navigation .small{white-space:nowrap}.header-phone:hover,.contact-phone:hover{text-decoration:underline}.start{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;text-align:left;align-items:start}.start h2{font-size:clamp(38px,3.6vw,56px)}.contact-intro{padding-top:18px}.contact-intro>p{font-size:17px}.contact-intro .eyebrow{font-size:11px}.contact-intro .preview-note{font-size:13px;max-width:370px;line-height:1.7}.contact-phone{font-family:Georgia,serif;font-size:30px;text-decoration:none;color:#e6bd62}.contact-email{font-size:16px!important}.response-time{border-top:1px solid #587183;padding-top:24px;margin-top:30px}.request-card{background:var(--cream);color:var(--ink);padding:32px;border-top:4px solid #e6bd62}.request-card .eyebrow{color:#7c5b16;margin-bottom:12px}.request-card h3{font-family:Georgia,serif;font-size:32px;line-height:1.2;letter-spacing:-.5px;margin-bottom:12px}.form-intro{font-size:15px;line-height:1.6}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}form label{font-size:14px;margin:0 0 18px;font-weight:600}form input,form select,form textarea{width:100%;display:block;border:1px solid #91a4b0;border-radius:0;background:white;color:var(--ink);padding:11px 12px;margin-top:7px;font-size:16px;font-weight:400;line-height:1.5}form textarea{resize:vertical;min-height:110px}form input::placeholder,form textarea::placeholder{color:#65747d;opacity:1}.field-help{font-size:11px;font-weight:400;display:block;margin-top:5px;line-height:1.5}.privacy-note{font-size:12px;margin:0 0 18px;line-height:1.65}.start .request-card .button{width:100%;background:var(--navy);color:#fff;border-color:var(--navy);font-weight:600}.start .request-card .button:hover{background:#28516c}.button:disabled{cursor:default;opacity:.75}.request-card fieldset{margin:0}.form-footnote{font-size:12px;line-height:1.6;margin:12px 0 0}.request-card .text-button{font-size:13px;padding:15px 0 0;text-align:left}#saved{font-size:12px}.request-status{background:#e2eee6;border:1px solid #82aa8c;padding:18px;color:#173f2b;font-size:15px;margin:20px 0;line-height:1.6}.request-status strong{display:block;font-size:18px}.request-status p{margin:8px 0 0}.request-status.is-error{background:#fff2df;border-color:#bd842e;color:#613d0e}.request-status.is-error p{margin-bottom:10px}.request-status[hidden]{display:none}.sr-only,.form-trap{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.footer-contact>a:first-child{font-size:20px;font-weight:600}.footer-contact p{font-size:12px}.mobile-contact{display:none}#start{scroll-margin-top:0}@media(max-width:1200px){#navigation{gap:15px}.header-phone{font-size:14px}header{gap:18px}.start{gap:5%;grid-template-columns:.8fr 1.2fr}.request-card{padding:26px}.form-row{grid-template-columns:1fr;gap:0}}@media(max-width:850px){.start{grid-template-columns:1fr;gap:30px}.contact-intro{padding-top:0}.contact-intro .preview-note{max-width:none}.form-row{grid-template-columns:1fr 1fr;gap:18px}.response-time{max-width:450px}}@media(max-width:700px){html{scroll-padding-top:145px}body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}header{display:grid;grid-template-columns:1fr auto;gap:8px 16px}.brand{grid-column:1;grid-row:1}.menu{grid-column:2;grid-row:1}.header-phone{grid-column:1 / -1;grid-row:2;margin:0;font-size:16px;line-height:1.6;width:max-content}.start{padding-top:45px;padding-bottom:45px}.contact-intro>p{font-size:16px}.request-card{padding:25px 20px}.form-row{grid-template-columns:1fr;gap:0}.request-card h3{font-size:29px}.contact-phone{font-size:29px}.mobile-contact{display:grid;grid-template-columns:1fr 1.55fr;position:fixed;inset:auto 0 0;top:auto;z-index:10;gap:10px;padding:10px 5% calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #cdd6dc;box-shadow:0 -3px 14px #17344d0f}.mobile-contact a{display:flex;justify-content:center;align-items:center;gap:16px;text-decoration:none;font-size:16px;font-weight:600;min-height:48px;border:1px solid var(--navy);color:var(--navy)}.mobile-contact a:last-child{background:var(--navy);color:#fff}.mobile-contact a:hover{background:#dfe8ed}.mobile-contact a:last-child:hover{background:#28516c}footer{padding-bottom:35px}form input,form select,form textarea{font-size:16px}}

.contact-intro p br{display:initial}#request{scroll-margin-top:0}

/* Readable supporting copy and resilient responsive line breaks. */
.topline{font-size:12px;letter-spacing:1.1px;gap:12px;flex-wrap:wrap}
.eyebrow,.contact-intro .eyebrow{font-size:12px;line-height:1.6;letter-spacing:1.6px}
.number{font-size:13px;line-height:1.6;color:#526875}
.quiet,.scope,.preview-note,.contact-intro .preview-note,legend,.field-help,.privacy-note,.form-footnote,.footer-contact p,.request-card .text-button,#saved{font-size:14px;line-height:1.65}
.values{font-size:14px;line-height:1.6}
.photo-note small{font-size:14px;line-height:1.5}
.portrait>div,.portrait span,.signature span{font-size:13px;line-height:1.6}
footer{font-size:14px;line-height:1.7}
.form-intro{font-size:16px}
.hero-services{max-width:440px;font-size:13px;letter-spacing:1.3px;line-height:1.6}
.hero-location{display:inline-block;white-space:nowrap}
.hero-actions{display:flex;flex-direction:column;align-items:flex-start;gap:14px}
.hero-secondary{font-size:16px;line-height:1.5;text-underline-offset:5px;padding:3px 0}
.hero-secondary span{margin-left:8px}
@media(max-width:700px){
  .topline{font-size:11px;letter-spacing:.6px;gap:4px 12px}
  .eyebrow,.contact-intro .eyebrow{font-size:12px;letter-spacing:1.3px}
  .hero-copy{padding:30px 6% 30px}
  .hero-services{font-size:12px;letter-spacing:1px;margin-bottom:16px}
  .hero h1{font-size:clamp(40px,12vw,52px);margin-bottom:20px}
  .hero .lead{font-size:17px;line-height:1.6;margin-bottom:20px}
  .hero-actions{gap:12px}
  .hero-actions .button{width:100%;gap:16px}
  .hero .quiet{margin:16px 0 0}
  .values{font-size:14px;gap:14px;padding:20px 5%}
  .service-grid h3 br,.how h2 br,.story h2 br,.contact-intro h2 br{display:none}
  .contact-intro p br{display:none}
  .contact-phone{display:block;margin-top:4px}
  .contact-intro .preview-note{font-size:14px}
  .photo-note{left:16px;right:16px;padding:14px 18px}
  .photo-note small{margin-left:0;font-size:14px}
  .request-card .eyebrow{font-size:12px}
}

/* Contemporary surfaces, consistent actions and a direct price comparison. */
:root{--line:#d9dfdf;--muted:#596c77;--radius:14px}
.button{border-radius:6px;min-height:52px;font-weight:600;gap:20px;padding:14px 22px}
.button.small{min-height:48px}.hero-actions .button{min-width:190px}
.hero-photo{border-radius:0 0 0 36px}.photo-note{border-radius:10px;box-shadow:none;border:1px solid #ebe7dd}
.section{padding-top:76px;padding-bottom:76px}
.section-head{gap:7%;margin-bottom:34px}.section-head>p{font-size:17px;line-height:1.65}
.service-grid{gap:24px}.service-grid article{border:1px solid var(--line);border-radius:var(--radius);padding:26px 24px;background:#fff}
.service-grid .number{color:var(--muted);margin-bottom:18px;letter-spacing:1px}
.service-grid h3{font-family:Georgia,serif;font-size:25px;letter-spacing:-.3px;line-height:1.3}
.service-grid ul{margin-bottom:0;padding-left:18px;line-height:1.65}
.service-grid li{margin-bottom:8px;padding-left:1px}
.service-more{border:0;padding:12px 0 0}.service-more summary{font-size:14px;text-underline-offset:4px;text-decoration:underline}
.service-more ul{margin-top:14px}
.comparison-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch}
.comparison-grid .price-card{min-width:0;border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;border-color:var(--line)}
.comparison-grid h3{font-family:Georgia,serif;font-size:27px;margin-bottom:20px;line-height:1.25;letter-spacing:-.4px}
.comparison-grid .eyebrow{font-size:12px;letter-spacing:1.2px;margin-bottom:10px}
.comparison-grid .offer{margin:0 0 16px}
.comparison-grid .price{font-size:44px;letter-spacing:-1.6px;margin:0 0 4px;line-height:1.2;white-space:nowrap}
.comparison-grid .price small{font-size:15px;letter-spacing:0}
.comparison-grid .price small[hidden]{display:none}
.comparison-grid .included{font-size:18px;font-weight:600;margin:0;line-height:1.5}
.comparison-grid p.rate{font-size:14px;line-height:1.6;color:var(--muted);margin:0 0 22px;min-height:45px}
.comparison-grid .intro p.rate{color:#d8e2e8}.comparison-grid .intro .eyebrow{color:#d8e2e8}
.comparison-grid ul{min-height:0;font-size:15px;line-height:1.6;margin:0 0 24px;padding-left:18px}
.comparison-grid fieldset{margin:0 0 20px}.comparison-grid legend{margin-bottom:8px}
.comparison-grid .hours span{font-size:14px;border-radius:6px;padding:9px 3px}
.comparison-grid .button{margin-top:auto}.comparison-grid .intro .button{background:var(--cream);border-color:var(--cream);color:var(--navy)}
.comparison-grid .intro .button:hover{background:#e5eced}
.pricing-terms{max-width:none;margin:24px 0 0;font-size:14px}
.intro-explainer{display:grid;grid-template-columns:.9fr 1.1fr;gap:7%;border-top:1px solid #cbd4d7;margin-top:34px;padding-top:30px}
.intro-explainer .eyebrow{margin-bottom:8px}.intro-explainer h3{font:32px/1.2 Georgia,serif;letter-spacing:-.5px;margin-bottom:12px}
.intro-explainer p{font-size:16px;line-height:1.65;margin-bottom:0}.intro-explainer ol{list-style:none;padding:0;margin:0;display:grid;gap:18px}
.intro-explainer li{display:flex;gap:18px}.intro-explainer li>span{font:24px/1.4 Georgia,serif;color:#637a88}
.intro-explainer h4{font-size:17px;color:var(--navy);margin:0 0 4px}
.visit-examples{background:#fff}.task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.task-grid article{background:var(--cream);border:1px solid #e3e2dc;border-radius:var(--radius);padding:26px}
.task-grid svg{width:54px;height:54px;fill:none;stroke:var(--navy);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-bottom:20px}
.task-grid .eyebrow{font-size:12px;letter-spacing:1px;margin-bottom:10px}.task-grid h3{font:27px/1.2 Georgia,serif;letter-spacing:-.4px;margin-bottom:14px}
.task-grid p:last-child{font-size:16px;line-height:1.65;margin-bottom:0}.visit-examples .scope{margin-bottom:0;max-width:1000px}
.how{background:#e9eff0}.how h2{font-size:clamp(36px,3.2vw,48px)}.how>div>p:last-child{font-size:17px;margin-bottom:0}
.portrait{max-width:420px}.portrait img{aspect-ratio:4/5;max-height:500px;border-radius:var(--radius);object-position:center 38%}
.story{grid-template-columns:.8fr 1.2fr;gap:8%}.story-copy>p:not(.eyebrow){font-size:17px;line-height:1.7}
.story-more{padding:12px 0 18px}.story-more summary{font-size:16px}.story-more p{font-size:16px;line-height:1.7}
.signature{font-size:23px;padding-top:24px}.faq{background:var(--cream)}
.request-card{border-radius:var(--radius);border-top:1px solid #dfe5e5}.request-card .eyebrow{color:var(--muted)}
.start .eyebrow{color:#d1dfe6}.contact-phone{color:#fff}.response-time{border-color:#587183}
.mobile-contact a{border-radius:6px;min-height:48px}.hours label{min-width:0}
@media(max-width:1150px) and (min-width:701px){
 .comparison-grid{gap:14px}.comparison-grid .price-card{padding:22px 18px}.comparison-grid h3{font-size:23px}
 .comparison-grid .price{font-size:36px}.comparison-grid .price small{font-size:13px}.comparison-grid .included{font-size:16px}
 .service-grid{gap:16px}.service-grid article{padding:22px 18px}.service-grid h3{font-size:23px}
 .task-grid{gap:16px}.task-grid article{padding:22px 18px}.task-grid h3{font-size:24px}
}
@media(max-width:850px){
 .comparison-grid{grid-template-columns:1fr}.comparison-grid .price-card{padding:28px}.comparison-grid .price{font-size:44px}
 .comparison-grid .price small{font-size:15px}.comparison-grid h3{font-size:27px}.comparison-grid .included{font-size:18px}
 .comparison-grid p.rate{min-height:0}.intro-explainer{grid-template-columns:1fr;gap:24px}
 .task-grid{grid-template-columns:1fr}.task-grid article{display:grid;grid-template-columns:60px 1fr;column-gap:20px;padding:24px}
 .task-grid svg{grid-column:1;grid-row:1 / 4;margin:0;width:48px;height:48px}.task-grid article>*:not(svg){grid-column:2}
}
@media(max-width:700px){
 .section{padding-top:48px;padding-bottom:48px}.section-head{margin-bottom:26px;gap:18px}.section-head>p{font-size:16px}
 .hero-photo{border-radius:0 0 24px 0;min-height:320px}.photo-note{bottom:16px}.hero-actions .button{min-width:0}
 .service-grid{gap:16px}.service-grid article{padding:24px}.service-grid h3{font-size:26px;margin-bottom:16px}
 .service-grid .number{margin-bottom:12px}.service-grid ul{font-size:16px}.service-more{padding-top:14px}
 .comparison-grid{gap:18px}.comparison-grid .price-card{padding:24px}.comparison-grid h3{margin-bottom:16px;font-size:27px}
 .comparison-grid .price{font-size:42px}.comparison-grid .included{font-size:18px}.comparison-grid .button{min-height:52px}
 .comparison-grid ul{font-size:15px;margin-bottom:22px}.pricing-terms{line-height:1.65}
 .intro-explainer{gap:24px;margin-top:28px;padding-top:26px}.intro-explainer h3{font-size:30px}
 .task-grid{gap:14px}.task-grid article{padding:20px;grid-template-columns:40px 1fr;column-gap:14px}
 .task-grid svg{grid-row:1;grid-column:1;margin:0;width:36px;height:36px;align-self:center}
 .task-grid article>*:not(svg){grid-column:2}.task-grid h3{font-size:24px;margin-bottom:0;align-self:center}.task-grid .eyebrow{display:none}
 .task-grid article>p:last-child{grid-column:1 / -1;margin-top:14px}
 .how{gap:24px}.how h2{font-size:38px}.story{grid-template-columns:1fr;gap:26px}
 .portrait{width:100%;max-width:380px}.portrait img{aspect-ratio:1;max-height:350px;object-position:center 30%}
 .story-copy>p:not(.eyebrow){font-size:16px}.story-more summary{font-size:16px}.signature{padding-top:18px}
 .contact-intro>p{font-size:16px}.contact-intro .preview-note{font-size:14px}.contact-intro .eyebrow{font-size:12px}
}

/* The consultation is a separate, free first step before paid service visits. */
#pricing .section-head{display:block;margin-bottom:22px}
.consult-note{display:flex;align-items:baseline;gap:12px 24px;flex-wrap:wrap;margin:0 0 28px;padding:18px 22px;border:1px solid #d9dfdf;border-radius:10px;background:#fff;font-size:16px;line-height:1.6}
.consult-note strong{color:var(--navy);white-space:nowrap}.consult-note span{flex:1;min-width:240px}
@media(max-width:700px){.consult-note{display:block;padding:18px;margin-bottom:22px;font-size:16px}.consult-note strong{display:block;white-space:normal;margin-bottom:5px}.consult-note span{min-width:0}}

/* Project photos from the business profile, with owner-confirmed captions. */
.background-note{margin:0;padding:16px 6%;background:var(--cream);color:var(--navy);font-size:16px;line-height:1.6;text-align:center;border-bottom:1px solid var(--line)}
.project-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.project-card{margin:0;background:var(--cream);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;min-width:0}
.project-image{display:block;position:relative;overflow:hidden;background:#e9eff0}
.project-image:focus-visible{outline-offset:-4px}
.project-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.project-image>span{position:absolute;right:10px;bottom:10px;padding:5px 9px;border-radius:4px;background:#17344de8;color:#fff;font-size:13px;line-height:1.5}
.project-image:hover>span{background:#17344d}
.project-card figcaption{padding:23px 21px}
.project-card h3{font:25px/1.25 Georgia,serif;letter-spacing:-.3px;margin:0 0 12px}
.project-card p{font-size:16px;line-height:1.65;margin:0}
@media(max-width:1100px){.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project-card h3{font-size:27px}}
@media(max-width:600px){.background-note{padding:16px 6%;font-size:15px}.project-gallery{grid-template-columns:1fr;gap:20px}.project-card figcaption{padding:22px}.project-card h3{font-size:26px}}

/* Align services introduction with its neighboring headline. */
#services .section-head > p { margin: 0; }

/* Keep the form label readable and avoid competing mobile actions. */
.start .request-card > .eyebrow { color: var(--navy); }
.mobile-contact.is-form-visible { display: none; }

/* Place the gallery introduction below its heading. */
#visit-examples .section-head { display: block; }
#visit-examples .section-head > p { max-width: 960px; margin: 18px 0 0; font-size: 18px; line-height: 1.65; }
@media (max-width: 700px) { #visit-examples .section-head > p { font-size: 17px; margin-top: 16px; } }
