:root{--ink:#203b31;--forest:#204c3b;--muted:#58685e;--paper:#fafbf7;--yellow:#fff344;--line:#dce4da}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.75 Arial,Helvetica,sans-serif}a{color:inherit;text-underline-offset:5px}a:focus-visible{outline:3px solid #ca8b17;outline-offset:5px}.wrap{width:min(1200px,90%);margin:auto}.skip{position:absolute;top:-100px}.skip:focus{top:0;z-index:9;background:white}.topline{background:var(--forest);color:white;font-size:12px;letter-spacing:.04em;padding:7px 0}.topline .wrap{display:flex;justify-content:space-between}.topline a{text-decoration:none}.brandbar{display:flex;justify-content:space-between;align-items:center;padding:17px 0;gap:20px}.brand{display:flex;gap:16px;align-items:center;text-decoration:none;font:bold 26px Georgia,serif}.brand img{object-fit:contain}.brand small{display:block;font:11px Arial,sans-serif;letter-spacing:.24em;margin-top:8px}.header-actions{display:flex;gap:26px;align-items:center}.phone{font-weight:bold;text-decoration:none}.button{display:inline-flex;gap:22px;align-items:center;justify-content:center;background:var(--forest);color:#fff;padding:13px 23px;border-radius:5px;font-size:14px;font-weight:bold;text-decoration:none;line-height:1.5}.button:hover{background:#31634d}nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:white}.navlinks{display:flex;gap:23px;flex-wrap:wrap;padding:12px 0;font-size:12px;font-weight:bold}.navlinks a{text-decoration:none}.navlinks a:hover,.navlinks a[aria-current]{text-decoration:underline;text-decoration-color:#b69b1d;text-decoration-thickness:3px}.banner{background:#b2d2db}.banner img{display:block;width:100%;height:auto}.intro{display:grid;grid-template-columns:1.65fr 1fr;gap:80px;padding-top:68px;padding-bottom:75px;align-items:center}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:bold;margin:0 0 18px;color:#637563}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;line-height:1.12;font-weight:normal;margin:0 0 24px}h1{font-size:54px;letter-spacing:-1.6px}h1 em{color:#577351;font-style:normal}h2{font-size:37px;letter-spacing:-.7px}h3{font-size:27px}.lead{font-size:19px;line-height:1.6}p{margin:0 0 20px}.intro p:not(.eyebrow):not(.lead),.servicecopy p,.area p:not(.eyebrow){color:var(--muted)}.actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-top:28px}.textlink{font-size:14px;font-weight:bold}.anytime{background:#edf1e6;border:1px solid #dae3ce;border-radius:8px;padding:35px;position:relative}.anytime:before{content:'';display:block;width:45px;height:4px;background:#b8a134;margin-bottom:25px}.label{font-size:10px;letter-spacing:.16em;font-weight:bold}.anytime h2{font-size:31px;margin-top:18px}.anytime a{font-size:14px;font-weight:bold}.services{background:#f0f3ed;border-block:1px solid var(--line);padding:65px 0}.sectionhead{display:grid;grid-template-columns:1.4fr 1fr;gap:80px;align-items:end;border-bottom:1px solid #cfd9cd;padding-bottom:22px}.sectionhead h2{max-width:560px}.sectionhead>p{color:var(--muted);font-size:16px}.servicebody{display:grid;grid-template-columns:1fr 1.2fr;gap:75px;padding-top:38px}.servicelist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 25px;align-content:start;font-size:14px}.servicelist li{padding:10px 0;border-bottom:1px solid #d7dfd3;position:relative;padding-left:20px}.servicelist li:before{content:'✓';position:absolute;left:0;color:#66825a}.maintenance{border-top:1px solid #cfd9cd;margin-top:37px;padding-top:27px;display:flex;gap:35px;align-items:center}.maintenance>div{flex:1}.maintenance strong,.maintenance span{display:block}.maintenance span{font-size:13px;color:var(--muted)}.area{display:grid;grid-template-columns:1fr 1.4fr;gap:85px;padding-top:70px;padding-bottom:70px}.towns{border-left:1px solid var(--line);padding-left:45px;align-self:center;font-size:15px;line-height:2.1}.contactband{background:var(--forest);color:white;padding:46px 0}.contactband .wrap{display:flex;justify-content:space-between;align-items:center;gap:30px}.contactband h2{margin-bottom:12px}.contactband p{margin-bottom:0}.contactband .eyebrow{color:#d2debf;margin-bottom:15px}.contactband .actions{margin:0;flex-direction:column;gap:12px}.yellow{background:var(--yellow);color:var(--ink)}.yellow:hover{background:#ecdf3b}footer{padding-top:35px;padding-bottom:35px;display:flex;justify-content:space-between;gap:25px;font-size:13px}footer p{font-size:12px;color:var(--muted);margin:5px 0}footer>div:last-child{display:flex;gap:24px;flex-wrap:wrap;align-items:center}@media(min-width:1600px){.banner{max-height:530px;overflow:hidden}.banner img{margin-top:calc((530px - 33.3vw)/2)}}@media(max-width:850px){.intro{gap:35px;grid-template-columns:1.3fr 1fr}h1{font-size:43px}.anytime{padding:25px}.navlinks{gap:12px 22px}.sectionhead,.servicebody{gap:35px}.area{gap:35px}.phone{display:none}}@media(max-width:620px){body{font-size:15px}.wrap{width:90%}.topline .wrap{justify-content:center}.topline span{display:none}.brandbar{padding:12px 0}.brand{font-size:20px;gap:9px}.brand img{width:62px;height:60px}.brand small{font-size:9px}.header-actions .button{padding:11px 12px;font-size:11px;gap:5px}.navlinks{font-size:11px;gap:8px 17px;padding:12px 0}.intro,.sectionhead,.servicebody,.area{grid-template-columns:1fr;gap:30px}.intro{padding-block:38px}.eyebrow{font-size:9px}h1{font-size:40px}h2{font-size:31px}.lead{font-size:17px}.actions{gap:18px}.anytime h2{font-size:28px}.services{padding:38px 0}.sectionhead{gap:0}.servicebody{padding-top:28px}.servicelist{font-size:12px;gap:0 16px}.maintenance{flex-direction:column;align-items:flex-start;gap:18px}.area{padding-block:38px}.towns{padding-left:20px}.contactband .wrap{align-items:flex-start;flex-direction:column}.contactband .actions{align-items:flex-start}footer{flex-direction:column}footer>div:last-child{gap:18px}}

/* Soft, raised edges for the panoramic banner. */
.banner{position:relative;margin:16px 12px 0;border-radius:14px;overflow:hidden;box-shadow:0 3px 5px rgba(22,49,35,.13),0 12px 24px -10px rgba(22,49,35,.36);isolation:isolate}
.banner::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 2px 4px rgba(255,255,255,.8),inset 0 -3px 6px rgba(16,35,24,.25),inset 2px 0 5px rgba(255,255,255,.32),inset -2px 0 5px rgba(255,255,255,.32)}
@media(max-width:620px){.banner{margin:10px 7px 0;border-radius:9px;box-shadow:0 2px 4px rgba(22,49,35,.12),0 8px 16px -7px rgba(22,49,35,.35)}}

/* Keep the navigation comfortably beneath the raised banner. */
body > nav{margin-top:22px}
@media(max-width:620px){body > nav{margin-top:16px}}

/* Banner-first header with service requests in the green strip. */
.topline .wrap{align-items:center;gap:18px}.top-actions{display:flex;align-items:center;gap:24px}.topline .button{background:var(--yellow);color:var(--ink);padding:8px 16px;font-size:12px;gap:16px}.topline .button:hover{background:#ece33d}.topline .button span{display:inline}
.banner{margin-top:0}.intro-side{display:flex;flex-direction:column;align-items:center;gap:24px}.standalone-logo{display:block;line-height:0}.standalone-logo img{width:150px;height:auto}
@media(max-width:620px){.topline .wrap{justify-content:space-between;flex-wrap:wrap;gap:7px}.topline .wrap>span{display:block;font-size:10px;letter-spacing:0}.top-actions{gap:12px;flex-wrap:wrap}.topline .top-phone{font-size:10px}.topline .button{font-size:10px;padding:7px 10px;gap:7px}.banner{margin-top:0}.standalone-logo img{width:125px}}

/* Business logo accompanies the bottom green contact banner. */
.contactband .standalone-logo{flex:0 0 auto}.contactband .standalone-logo img{width:140px;height:auto;border-radius:7px}.contactband .wrap>div:not(.actions){flex:1}
@media(max-width:620px){.contactband .standalone-logo img{width:115px}.contactband .wrap{gap:24px}}

.contactband .standalone-logo img{border-radius:0}

/* Prominent, easy-to-tap phone link beside the service request. */
.intro .intro-call{font-size:22px;line-height:1.4;font-weight:700;display:inline-flex;align-items:center;min-height:48px}

.repair-intro{padding-block:62px;max-width:1200px}.repair-intro>p:not(.eyebrow){max-width:760px}.repair-list{list-style:none;padding:0;margin:35px 0 0;display:grid;grid-template-columns:repeat(3,1fr);gap:0 38px}.repair-list li{border-top:1px solid #cfd9cd;padding:24px 0 10px}.repair-list h3{font-size:22px;margin-bottom:12px}.repair-list p{font-size:15px;color:var(--muted)}.repair-details{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-block:65px;align-items:start}.repair-details p{color:var(--muted)}.repair-anytime{padding-bottom:60px}.repair-anytime p{max-width:800px}.repair-intro .intro-call{font-size:22px;min-height:48px;display:inline-flex;align-items:center}
@media(max-width:850px){.repair-list{grid-template-columns:repeat(2,1fr)}.repair-details{gap:30px}}@media(max-width:620px){.repair-intro{padding-block:36px}.repair-list{grid-template-columns:1fr}.repair-details{grid-template-columns:1fr;padding-block:38px}.repair-anytime{padding-bottom:38px}}

/* Shared certification badge on every refreshed page. */
.certification{display:flex;justify-content:center;align-items:center;padding-top:26px;padding-bottom:34px;border-top:1px solid var(--line)}.certification img{display:block;width:160px;height:auto;max-width:100%}

/* Certification belongs beside the contact action inside the green banner. */
.contactband .contact-tools{display:flex;align-items:center;justify-content:flex-end;gap:24px;flex:0 0 auto}.contactband .certified-badge{display:block;width:160px;height:auto;flex:0 0 auto}.contactband .wrap>.contact-tools{flex:0 0 auto}
@media(max-width:850px){.contactband .wrap{flex-wrap:wrap}.contactband .contact-tools{justify-content:flex-start}}@media(max-width:620px){.contactband .contact-tools{gap:20px;flex-wrap:wrap}.contactband .certified-badge{width:140px}}

/* Original manufacturer artwork, in one row with responsive wrapping. */
.manufacturer-strip{padding-bottom:48px}.manufacturer-strip h2{font-size:26px;margin-bottom:24px}.manufacturer-row{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:22px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:25px}.brand-logo{display:flex;align-items:center;justify-content:center;min-width:0;height:64px}.brand-logo img{display:block;max-width:100%;width:145px;height:52px;object-fit:contain}.brand-logo.norcold{position:relative;overflow:hidden}.brand-logo.norcold img{position:absolute;width:150px;max-width:none;height:auto;top:-24px}
@media(max-width:850px){.manufacturer-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}}@media(max-width:450px){.manufacturer-row{grid-template-columns:repeat(2,minmax(0,1fr));padding:18px;gap:15px}.manufacturer-strip{padding-bottom:36px}}

/* Manufacturer row blends into the page without a white panel. */
.manufacturer-row{background:transparent;border-color:transparent}.manufacturer-row img{mix-blend-mode:multiply}

.manufacturer-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:18px}.brand-logo.norcold img{width:140px;top:-20px}
@media(max-width:850px){.manufacturer-row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:450px){.manufacturer-row{grid-template-columns:repeat(2,minmax(0,1fr))}}

.service-page-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 35px;margin-top:28px}.service-article{max-width:960px}.service-article p,.service-inspection p{color:var(--muted)}.service-quote{font-family:Georgia,serif;font-size:25px;border-left:3px solid #aa9e4b;padding-left:22px;margin-block:28px}.service-inspection{padding-block:65px;max-width:960px}@media(max-width:850px){.service-page-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.service-page-list{grid-template-columns:1fr}.service-inspection{padding-block:38px}}

.factory-tagline{font-size:18px;font-weight:700;color:var(--forest);letter-spacing:.03em;margin:0 0 12px}

.repair-list .repair-certification{border-top:0;display:flex;align-items:center;justify-content:center;padding:22px 0}.repair-certification img{display:block;width:220px;max-width:90%;height:auto}

.maintenance-narratives{display:grid;grid-template-columns:1fr 1fr;gap:70px}.maintenance-narratives p:not(.eyebrow){color:var(--muted)}.inspection-intro{padding-top:60px;max-width:1000px}.inspection-note{border-left:3px solid #aa9e4b;padding:18px 22px;background:#f0f3ed}.inspection-checklists{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;padding-top:30px;padding-bottom:60px}.inspection-system{border-top:2px solid #b5c5ae;padding-top:22px}.inspection-system h2{font-size:26px}.inspection-system ul{padding-left:20px;color:var(--muted);font-size:14px;line-height:1.8}.inspection-system li{padding-bottom:5px}@media(max-width:850px){.inspection-checklists{grid-template-columns:repeat(2,minmax(0,1fr))}.maintenance-narratives{gap:30px}}@media(max-width:620px){.maintenance-narratives,.inspection-checklists{grid-template-columns:1fr}.maintenance-narratives{gap:35px}.inspection-intro{padding-top:38px}.inspection-checklists{gap:20px;padding-bottom:38px}}

.annual-maintenance{grid-column:1/-1;border-top:1px solid #b5c5ae;padding-top:36px}.annual-maintenance-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 40px;padding-left:20px;color:var(--muted)}.annual-maintenance-list strong{color:var(--green)}@media(max-width:620px){.annual-maintenance-list{grid-template-columns:1fr}}

/* Compact spacing for the maintenance introduction and inspection checklist. */
.maintenance-page .repair-intro{padding-bottom:28px}
.maintenance-page .inspection-intro{padding-top:18px}
.maintenance-page .inspection-intro .eyebrow{margin-bottom:10px}
.maintenance-page .inspection-intro h2{margin-bottom:16px}
.maintenance-page .inspection-intro p:not(.eyebrow){margin-bottom:12px}
.maintenance-page .inspection-note{padding:12px 18px}
.maintenance-page .inspection-checklists{padding-top:18px;padding-bottom:36px;gap:22px 30px}
.maintenance-page .inspection-system{padding-top:16px}
.maintenance-page .inspection-system h2{margin-bottom:12px}
.maintenance-page .inspection-system ul{margin-block:0;line-height:1.65}
.maintenance-page .inspection-system li{padding-bottom:2px}
@media(max-width:620px){.maintenance-page .repair-intro{padding-bottom:20px}.maintenance-page .inspection-intro{padding-top:12px}.maintenance-page .inspection-checklists{gap:20px;padding-bottom:28px}}

/* Pair long checklists; stack the two shortest beside the remaining list. */
.inspection-short-group{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 30px;align-items:start}
.inspection-short-group>.inspection-system:first-child{grid-row:span 2}
@media(max-width:620px){.inspection-short-group{grid-template-columns:1fr;gap:20px}.inspection-short-group>.inspection-system:first-child{grid-row:auto}}

/* Service package overview with compact, balanced rows. */
.packages-page .repair-intro{padding-bottom:36px}
.package-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 48px}
.package-card{border-top:2px solid #b5c5ae;padding-top:22px;display:flex;flex-direction:column;align-items:start}
.package-card h2{font-size:30px;margin-bottom:16px}
.package-card p,.package-card ul,.package-scope p{color:var(--muted)}
.package-card ul{padding-left:20px;margin:0 0 20px}
.package-card .textlink{margin-top:auto}
.package-scope{padding-top:36px;padding-bottom:20px;max-width:1000px}
.packages-page .repair-anytime{padding-top:16px}
#pre-departure,#winterizing,#annual-maintenance{scroll-margin-top:24px}
@media(max-width:620px){.package-grid{grid-template-columns:1fr;gap:28px}.package-card h2{font-size:28px}.package-scope{padding-top:28px}.packages-page .repair-intro{padding-bottom:26px}}

/* Service area: readable community list and concise visit information. */
.area-page .repair-intro{padding-bottom:36px}
.area-page .services{padding-block:38px}
.area-list-intro{max-width:800px;color:var(--muted)}
.service-towns{list-style:none;margin:26px 0 0;padding:0;columns:4;column-gap:36px}
.service-towns li{break-inside:avoid;border-bottom:1px solid #d7dfd3;padding:7px 0;font-size:15px}
.area-visit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;padding-top:38px;padding-bottom:20px}
.area-visit h2{font-size:30px;margin-bottom:16px}
.area-visit p{color:var(--muted)}
.area-page .repair-anytime{padding-top:12px}
@media(max-width:850px){.service-towns{columns:3}}
@media(max-width:620px){.service-towns{columns:2;column-gap:24px}.area-visit{grid-template-columns:1fr;gap:14px;padding-top:28px}.area-visit h2{font-size:28px}.area-page .repair-intro{padding-bottom:26px}}

.service-area-map{margin:0 auto 30px;max-width:493px}.service-area-map img{display:block;width:100%;height:auto;border-radius:6px;border:1px solid var(--line)}@media(max-width:620px){.service-area-map{margin-bottom:24px}}

/* Our Promise: compact rows keep each commitment with its explanation. */
.promise-page .repair-intro{padding-bottom:36px}
.promise-page .services{padding-block:14px}
.promise-item{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.8fr);gap:42px;padding-block:28px;border-bottom:1px solid #cfd9cd}
.promise-item:last-child{border-bottom:0}
.promise-item h2{font-size:27px;margin-bottom:0}
.promise-item p{color:var(--muted);margin-bottom:14px}
.promise-item p:last-child{margin-bottom:0}
.promise-page .repair-anytime{padding-top:36px}
@media(max-width:620px){.promise-item{grid-template-columns:1fr;gap:14px;padding-block:24px}.promise-item h2{font-size:25px}.promise-page .repair-intro{padding-bottom:26px}.promise-page .repair-anytime{padding-top:28px}}

/* Resource directory: compact, clearly linked topic cards. */
.resources-page .repair-intro{padding-bottom:30px}
.resources-page .services{padding-block:36px}
.resource-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 42px}
.resource-card{display:block;text-decoration:none;border-top:1px solid #cfd9cd;padding:20px 0}
.resource-card h3{font-size:24px;margin-bottom:9px;display:flex;justify-content:space-between;gap:12px}
.resource-card p{color:var(--muted);margin:0;font-size:15px}
.resource-card:hover h3{text-decoration:underline}
.resource-submit{margin:12px 0 0}
.resource-help{padding-top:34px;padding-bottom:16px;max-width:1000px}
.resource-help p{color:var(--muted)}
.resources-page .repair-anytime{padding-top:12px}
@media(max-width:620px){.resource-grid{grid-template-columns:1fr}.resource-card{padding-block:17px}.resource-card h3{font-size:23px}.resource-help{padding-top:28px}.resources-page .repair-intro{padding-bottom:24px}}

/* Resources for travel and everyday RV living. */
.resource-jumps{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:22px;font-size:13px;font-weight:700}
.resource-topic{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:44px;padding-block:28px;border-top:1px solid #cfd9cd;scroll-margin-top:24px}
.resource-topic:first-child{padding-top:0;border-top:0}
.resource-topic h2{font-size:30px;margin-bottom:14px}
.resource-topic p{color:var(--muted);margin-bottom:0}
.resource-topic ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 30px;align-content:start}
.resource-topic li a{font-weight:700;font-size:15px}
.resource-topic li p{font-size:14px;line-height:1.6;margin-top:6px}
.contact-page .repair-intro{padding-bottom:36px}
.contact-page .services{padding-block:36px}
.contact-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}
.contact-options h2{font-size:29px;margin-bottom:16px}
.contact-options p,.contact-details p,.contact-details ul{color:var(--muted)}
.contact-number{display:inline-block;font-size:24px;font-weight:700;margin-bottom:16px;min-height:44px}
.contact-email{display:inline-block;overflow-wrap:anywhere;font-size:16px;font-weight:700;margin-bottom:16px;min-height:44px}
.contact-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;padding-block:36px}
.contact-details h2{font-size:30px;margin-bottom:16px}
.contact-details ul{padding-left:20px;margin:0}
.contact-signoff{font:24px/1.35 Georgia,serif;margin-top:30px}
@media(max-width:850px){.resource-topic{gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr)}.resource-topic ul{grid-template-columns:1fr;gap:18px}.contact-options{grid-template-columns:1fr;gap:24px}.contact-options article{border-top:1px solid #cfd9cd;padding-top:20px}.contact-options article:first-child{border-top:0;padding-top:0}}
@media(max-width:620px){.resource-topic{grid-template-columns:1fr;gap:20px;padding-block:24px}.resource-topic h2{font-size:28px}.resource-jumps{font-size:12px;gap:8px 16px}.contact-details{grid-template-columns:1fr;gap:28px;padding-block:28px}.contact-page .repair-intro{padding-bottom:26px}.contact-details h2{font-size:28px}}

/* Contact form preview; activate only after an email endpoint is verified. */
.contact-page .contact-options{grid-template-columns:repeat(2,minmax(0,1fr))}
.contact-form-section{padding-block:36px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.65fr);gap:48px;scroll-margin-top:24px}
.contact-form-heading p:not(.eyebrow){color:var(--muted)}
.contact-form fieldset{margin:0;padding:0;border:0;min-width:0}
.contact-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px}
.contact-field-wide{grid-column:1/-1}
.contact-form label{display:block;font-size:14px;font-weight:700;margin-bottom:6px}
.contact-form label span{font-size:12px;font-weight:400;color:var(--muted)}
.contact-form input:not([type=hidden]),.contact-form textarea{width:100%;font:inherit;color:var(--ink);background:#fff;border:1px solid #a8b8a5;border-radius:5px;padding:10px 12px;min-height:46px;opacity:1;-webkit-text-fill-color:var(--ink)}
.contact-form textarea{resize:vertical}
.contact-form .button{margin-top:22px;border:0;font-family:inherit;min-height:48px}
.contact-form .button:disabled{background:#66786c;cursor:not-allowed}
.contact-form input:focus,.contact-form textarea:focus{outline:3px solid #ca8b17;outline-offset:2px}
.contact-delivery-status{font-size:13px;color:var(--muted);margin-top:16px}
.contact-honey{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-width:850px){.contact-form-section{grid-template-columns:1fr;gap:12px}.contact-page .contact-options{grid-template-columns:1fr}}
@media(max-width:620px){.contact-form-section{padding-block:28px}.contact-field-grid{grid-template-columns:1fr;gap:16px}.contact-field-wide{grid-column:auto}}

/* Informational articles retain the established page addresses. */
.owner-article{max-width:900px;padding-block:42px}
.owner-article header>.textlink{display:inline-block;margin-bottom:24px}
.owner-article h1{font-size:46px;max-width:850px}
.owner-article header{margin-bottom:28px}
.owner-article section{margin-bottom:28px}
.owner-article section h2{font-size:29px;margin-bottom:14px}
.owner-article section p,.owner-article section li{color:var(--muted)}
.owner-article section p{margin-bottom:14px}
.owner-article ul{padding-left:22px}
.owner-article li{margin-bottom:7px}
.article-sources{border-top:1px solid var(--line);padding-top:24px;font-size:14px}
.article-sources h2{font-size:23px!important}
.article-return{margin-bottom:0}
.owner-reading{padding-top:34px}
.owner-reading h2{font-size:30px}
@media(max-width:620px){.owner-article{padding-block:28px}.owner-article h1{font-size:36px;letter-spacing:-.8px}.owner-article section h2{font-size:26px}.owner-reading h2{font-size:27px}}

/* Raised forest-green header with larger gold lettering. */
.topline{position:relative;z-index:1;background:linear-gradient(180deg,#52704a 0%,#355d3d 18%,#234b33 48%,#193d2a 82%,#2d5136 100%);color:#ffe296;padding:10px 0;border-top:1px solid #9eac76;border-bottom:2px solid #132f21;box-shadow:inset 0 2px 2px #ffffff30,inset 0 -3px 4px #061d2266,0 3px 7px #142e2b33;font-size:16px;font-weight:700;letter-spacing:.015em;text-shadow:0 1px 1px #091e15,0 -1px 0 #fff0b31a}
.topline .wrap{flex-wrap:wrap;gap:10px 22px}
.topline .top-phone{font-size:16px;color:#ffe296;white-space:nowrap}
.topline .button{font-size:14px;padding:9px 18px;text-shadow:none;box-shadow:inset 0 1px 1px #fffbd6cc,0 2px 3px #071d2266;border:1px solid #e6b52c}
/* Road colors dissolve into a warm dimensional lower banner stripe. */
.banner{max-height:none}
.banner img{margin-top:0}
.banner-tagline{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;min-height:61px;padding:12px 20px 13px;text-align:center;background:linear-gradient(90deg,#d67517 0%,#eea72c 20%,#ffe15a 38%,#fff080 50%,#ffe15a 62%,#eea72c 80%,#d67517 100%);border-bottom:6px double #ad570d;box-shadow:inset 0 2px 5px #fff5b766,inset 0 -3px 5px #a54b1540;color:#18452f}
.banner-tagline::before{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:100%;height:34px;background:linear-gradient(90deg,#d67517 0%,#eea72c 20%,#ffe15a 38%,#fff080 50%,#ffe15a 62%,#eea72c 80%,#d67517 100%);-webkit-mask-image:linear-gradient(to top,#000,transparent);mask-image:linear-gradient(to top,#000,transparent);pointer-events:none}
.banner-tagline span{font:700 clamp(19px,2vw,29px)/1.25 Georgia,'Times New Roman',serif;text-shadow:0 1px 0 #fff8bdcc;position:relative}
@media(max-width:850px){.topline{font-size:14px}.topline .top-phone{font-size:14px}.top-actions{gap:18px}.banner-tagline{min-height:56px}}
@media(max-width:620px){.topline{padding-block:9px}.topline .wrap{gap:7px}.topline .wrap>span{font-size:13px;line-height:1.4}.topline .top-phone{font-size:13px}.top-actions{gap:10px;justify-content:space-between;width:100%}.topline .button{font-size:12px;padding:8px 12px}.banner-tagline{padding:11px 16px 12px;min-height:56px}.banner-tagline::before{height:23px}.banner-tagline span{font-size:19px}}

/* Shorter photo crop: retain image width so the embedded title keeps its size. */
.banner>img{width:100%;height:calc((100vw - 24px) / 3.79);object-fit:cover;object-position:50% 60%;margin-top:0}
@media(max-width:620px){.banner>img{height:calc((100vw - 14px) / 3.79)}}

/* Feather the raised green strip into the photograph below. */
.topline{border-bottom:0;box-shadow:inset 0 2px 2px #ffffff30,inset 0 -2px 3px #163b2526}
.topline::after{content:"";position:absolute;top:100%;left:12px;right:12px;height:28px;background:linear-gradient(180deg,#2d5136 0%,#2d5136d9 18%,#2d513666 57%,#2d513600 100%);pointer-events:none}
.banner{border-top-left-radius:0;border-top-right-radius:0}
.banner::after{box-shadow:inset 0 -3px 6px #10231840,inset 2px 0 5px #ffffff32,inset -2px 0 5px #ffffff32}
@media(max-width:620px){.topline::after{left:7px;right:7px;height:20px}}

/* Homepage signature line: flowing, dimensional gold lettering. */
.home-signature{text-align:center;padding-top:26px;padding-bottom:4px}
.home-signature p{margin:0 auto;max-width:1160px;font-family:'Snell Roundhand','Segoe Script','Apple Chancery','URW Chancery L',Georgia,serif;font-size:clamp(27px,3.1vw,42px);font-style:italic;font-weight:600;line-height:1.45;color:#99650d;text-wrap:balance;text-shadow:0 1px 0 #fff4cb,0 2px 3px #8b610e30}
@supports (background-clip:text){.home-signature p{background:linear-gradient(180deg,#83520a 8%,#b27a12 37%,#d8a62b 49%,#a56e10 65%,#80500a 91%);background-clip:text;-webkit-background-clip:text;color:transparent;-webkit-text-stroke:.2px #92630d;text-shadow:none;filter:drop-shadow(0 1px 0 #fff3c7) drop-shadow(0 2px 2px #855f1029)}}
.home-signature+main>.intro{padding-top:28px}
@media(max-width:620px){.home-signature{padding-top:20px;padding-bottom:0}.home-signature p{font-size:27px;line-height:1.4}.home-signature+main>.intro{padding-top:24px}}

/* Compact signature, slightly larger than the navigation links. */
.home-signature{padding-top:14px;padding-bottom:0}
.home-signature p{font-size:16px;line-height:1.5;white-space:nowrap;text-wrap:nowrap;max-width:none}
.home-signature+main>.intro{padding-top:24px}
@media(max-width:620px){.home-signature{padding-top:12px}.home-signature p{font-size:13px;line-height:1.5}.home-signature+main>.intro{padding-top:22px}}

/* Regal gold signature at a balanced, wider single-line size. */
.home-signature{padding-top:18px;padding-bottom:2px}
.home-signature p{font-family:'Palatino Linotype','Book Antiqua',Palatino,Georgia,'Times New Roman',serif;font-size:clamp(24px,2.5vw,32px);font-style:italic;font-weight:500;letter-spacing:.025em;line-height:1.45;white-space:nowrap;text-wrap:nowrap}
@media(max-width:620px){.home-signature{padding-top:16px}.home-signature p{font-size:24px;letter-spacing:.015em}}

/* A restrained charcoal halo lifts the gold signature off the light page. */
.home-signature p{text-shadow:none;filter:drop-shadow(0 -1px 0 #fff1c48c) drop-shadow(0 2px 2px #25282152) drop-shadow(0 4px 5px #2528212e)}

/* Place the homepage signature across the road, above the gold lower strip. */
.banner-photo{position:relative}
.banner-photo>img{display:block;width:100%;height:calc((100vw - 24px) / 3.79);object-fit:cover;object-position:50% 60%;margin-top:0}
.banner-photo::after{content:"";position:absolute;left:0;right:0;bottom:0;height:70px;background:linear-gradient(180deg,#17251d00,#17251d52);pointer-events:none}
.banner-photo .home-signature{position:absolute;left:5%;right:5%;bottom:13px;width:auto;z-index:2;padding:0;pointer-events:none}
.banner-photo .home-signature p{background:none;color:#ffed65;-webkit-text-stroke:.25px #574119;filter:none;text-shadow:0 1px 1px #14251cf2,0 2px 4px #13231de0,0 0 8px #14251c80;line-height:1.3}
@media(max-width:620px){.banner-photo>img{height:calc((100vw - 14px) / 3.79)}.banner-photo .home-signature{bottom:9px}.banner-photo::after{height:40px}}

/* Rich hunter-green halo keeps the yellow road lettering legible. */
.banner-photo .home-signature p{-webkit-text-stroke:.4px #123e27;text-shadow:-1px 0 1px #103c24,1px 0 1px #103c24,0 -1px 1px #103c24,0 2px 2px #0b321f,0 0 5px #123e27,0 2px 9px #123e27e6,0 3px 14px #123e2799}

/* Stronger contrast follows the letters only, with broader yellow strokes. */
.banner-photo::after{background:none}
.banner-photo .home-signature p{color:#fff06a;font-weight:700;-webkit-text-stroke:.45px #fff06a;text-shadow:-1.5px -1.5px 1px #000,1.5px -1.5px 1px #000,-1.5px 1.5px 1px #000,1.5px 1.5px 1px #000,0 2px 3px #000,0 0 6px #000e,0 3px 10px #000b}

/* Privacy controls are available on every page; optional measurement defaults off. */
.privacy-controls{display:flex;gap:16px;align-items:center;flex-wrap:wrap;font-size:12px}
.privacy-controls button,.privacy-text-button{font:inherit;background:none;border:0;padding:0;color:inherit;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
.measurement-banner[hidden]{display:none}
.measurement-banner{position:fixed;z-index:50;bottom:16px;left:5%;right:5%;max-width:900px;margin:auto;padding:22px;background:#fafbf7;color:var(--ink);border:1px solid #81947e;border-radius:8px;box-shadow:0 5px 30px #18342940;font-size:14px}
.measurement-banner p{margin-bottom:14px}.measurement-banner>a{display:inline-block;margin-top:12px}
.consent-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.consent-option{font-family:inherit;border:1px solid var(--forest);cursor:pointer;min-height:44px;padding:10px 16px}
.measurement-dialog{border:1px solid #81947e;border-radius:9px;background:var(--paper);color:var(--ink);width:min(600px,90vw);max-height:90vh;padding:28px;overflow:auto}
.measurement-dialog::backdrop{background:#10271dc0}
.measurement-dialog h2{font-size:28px}.measurement-dialog p{font-size:14px}
.consent-toggle{display:block;margin-block:20px;font-weight:700;font-size:15px}
.consent-toggle input{margin-right:8px;min-width:18px;min-height:18px;vertical-align:middle}
.consent-toggle span{display:block;font-size:13px;font-weight:400;margin:6px 0 0 29px;color:var(--muted)}
.measurement-dialog>p:last-child{margin:18px 0 0}
@media(max-width:620px){.measurement-banner{bottom:8px;padding:18px}.consent-actions{gap:8px}.consent-option{font-size:12px;padding:9px 12px}.measurement-dialog{padding:22px}}

/* Match the green header's outer corners and edges to the lower banner. */
.topline{margin-inline:12px;border-radius:14px 14px 0 0}
.topline::after{left:0;right:0}
@media(max-width:620px){.topline{margin-inline:7px;border-radius:9px 9px 0 0}}

/* Keep the header lettering attached to the banner's proportions on narrow screens.
   Text remains selectable and the phone/service links remain real links. */
@media(max-width:1100px){
 .topline{font-size:1.28vw;line-height:1.75;padding-block:.8vw}
 .topline .wrap{width:90%;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:1.76vw}
 .topline .wrap>span{display:block;white-space:nowrap;font-size:inherit;line-height:inherit;letter-spacing:.015em}
 .topline .top-actions{width:auto;display:flex;align-items:center;flex-wrap:nowrap;gap:1.92vw;flex-shrink:0}
 .topline .top-phone{font-size:inherit;white-space:nowrap}
 .topline .button{font-size:1.12vw;line-height:1.5;padding:.72vw 1.44vw;gap:1.28vw;white-space:nowrap;border-radius:.4vw}
 .topline .button span{display:inline;font-size:inherit}
 .topline::after{height:2.24vw}
 .banner-tagline{min-height:0;padding:.96vw 1.6vw 1.04vw;border-bottom-width:max(3px,.48vw)}
 .banner-tagline span{font-size:2vw;white-space:nowrap;line-height:1.25}
 .banner-tagline::before{height:2.72vw}
 .banner-photo .home-signature{bottom:1.04vw}
}

/* Signature belongs beneath the content service actions, outside the banner. */
#main p.service-signature{margin:18px 0 0;color:#99650d;font-family:'Palatino Linotype','Book Antiqua',Palatino,Georgia,serif;font-size:clamp(21px,2.2vw,29px);font-style:italic;font-weight:500;line-height:1.45;letter-spacing:.015em;text-wrap:balance;max-width:100%}

/* Larger, evenly distributed navigation within the original 45px bar. */
nav .navlinks{justify-content:space-between;align-items:center;flex-wrap:nowrap;gap:12px;font-size:clamp(13px,1.15vw,16px);line-height:21px;padding-block:12px;color:#234b33}
nav .navlinks a{flex:none;white-space:nowrap;color:#234b33}
@media(max-width:900px){nav .navlinks{font-size:14px;justify-content:flex-start;gap:22px;overflow-x:auto;scrollbar-width:none}nav .navlinks::-webkit-scrollbar{display:none}}

/* One clear social link in the footer. */
footer .footer-social{display:flex;align-items:center}
footer .facebook-link{display:inline-flex;align-items:center;gap:12px;color:#234b33;font-size:15px;font-weight:700;text-decoration:none;padding-block:6px}
footer .facebook-link:hover span{text-decoration:underline}
footer .facebook-icon{flex:none;display:block}
