@font-face{font-family:"Oil Can";src:url("assets/oil-can.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
:root{--wood:#c69f66;--wood-dark:#8c673e;--navy:#153758;--navy-deep:#0b233a;--paper:#f1e7cf;--cream:#fff9eb;--ink:#211d19;--fold:#937044}
body{font-family:"Work Sans",sans-serif;line-height:1.68;background:var(--paper)}
h1,h2,h3,.trade strong,.phone,.year{font-family:"Ultra",serif!important;font-weight:400!important;letter-spacing:.02em!important;line-height:1.18!important}
.masthead{background:var(--cream);border-bottom:4px solid var(--navy)}
.masthead nav a{letter-spacing:.1em}
.hero{min-height:calc(100svh - 138px);padding-top:48px;background:linear-gradient(90deg,rgba(241,231,207,.98) 0 62%,rgba(241,231,207,.28) 84%)}
.hero:before{display:none}.hero-copy{width:min(72%,970px)}.hero .intro{max-width:700px;font-weight:600}.craftsman{right:2vw;width:min(31vw,430px)}
.ribbon-stack{--ribbon-bg:#c3a06c;--ribbon-fg:var(--navy-deep);--ribbon-outline:var(--navy-deep);--ribbon-fold:var(--fold);--ribbon-border:4px;--ribbon-notch:20px;--ribbon-inner-notch:20px;--ribbon-step:clamp(10px,1.25vw,18px);position:relative;display:flex;flex-direction:column;align-items:flex-start;width:max-content;max-width:100%;padding:12px 34px 24px 0;margin:0;isolation:isolate;font-family:"Oil Can","Arial Narrow",sans-serif;font-weight:400;letter-spacing:.07em;line-height:1.08;text-transform:uppercase}
.ribbon-line{--shift:calc(var(--ribbon-index) * var(--ribbon-step));position:relative;z-index:2;display:block;width:max-content;max-width:calc(100% - var(--shift));margin-top:6px;margin-left:var(--shift);font-family:"Oil Can","Arial Narrow",sans-serif!important;font-weight:400!important;letter-spacing:.07em!important;line-height:1.08!important;text-transform:uppercase!important}.ribbon-stack .ribbon-line{transform:none!important}
.ribbon-face{position:relative;z-index:2;display:block;width:max-content;max-width:100%}
.ribbon-panel{position:absolute;z-index:1;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.ribbon-panel polygon{fill:var(--ribbon-bg);stroke:var(--ribbon-outline);stroke-linejoin:round}
.ribbon-text{position:relative;z-index:2;display:block;width:max-content;max-width:100%;padding:calc(.2em + var(--ribbon-border)) calc(.72em + var(--ribbon-border)) calc(.25em + var(--ribbon-border));color:var(--ribbon-fg);font-family:"Oil Can","Arial Narrow",sans-serif!important;font-weight:400!important;letter-spacing:.07em!important;line-height:1.08!important;text-transform:uppercase!important}
.ribbon-line--first .ribbon-text{padding-left:calc(.72em + var(--ribbon-notch) + var(--ribbon-border))}
.ribbon-line--last .ribbon-text{padding-right:calc(1.08em + var(--ribbon-notch) + var(--ribbon-border))}
.ribbon-line--only .ribbon-text{padding-left:calc(.72em + var(--ribbon-notch) + var(--ribbon-border));padding-right:calc(1.08em + var(--ribbon-notch) + var(--ribbon-border))}
.ribbon-joins{position:absolute;z-index:1;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.ribbon-joins polygon{fill:var(--ribbon-fold);stroke:var(--ribbon-outline);stroke-linejoin:round}
.about .ribbon-stack,.field-note .ribbon-stack,.contact .ribbon-stack{--ribbon-outline:var(--cream)}
.ribbon-stack--hero{font-size:clamp(28px,3.8vw,58px);text-transform:none}
.ledger{padding-block:72px}.section-title h2{font-size:clamp(38px,4.5vw,64px)}.section-title>p:last-child{display:none}.ledger-grid{border-top:4px solid var(--ink)}.trade{grid-template-columns:64px 1fr auto;padding:16px 8px;border-bottom:4px solid var(--ink)}.trade span{grid-template-columns:40px 1fr}.trade small{display:none}.trade strong{font-size:19px}.trade i{letter-spacing:.08em}.trade-mark,.trade-arrow{display:grid;place-items:center;overflow:hidden;background:var(--wood);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--wood-dark);isolation:isolate}.trade-mark{width:60px;height:60px;transform:rotate(-1.2deg)}.trade:nth-child(even) .trade-mark{transform:rotate(1.2deg)}.trade-mark img,.trade-arrow img{width:100%;height:100%;object-fit:cover;filter:invert(1) contrast(1.2)!important;mix-blend-mode:multiply}.trade-arrow{width:42px;height:42px;transform:rotate(-2deg);transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s}.trade:hover .trade-arrow,.trade:focus-visible .trade-arrow{transform:translateX(7px) rotate(2deg);box-shadow:1px 1px 0 var(--wood-dark)}
.about{padding:72px var(--pad);display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(40px,7vw,104px);align-items:center;background:var(--navy-deep);color:var(--cream)}.about .photo-card{background:var(--wood);border:4px solid var(--cream);box-shadow:16px 16px 0 var(--wood-dark)}.about-copy p{max-width:720px}.ribbon-stack--heading{font-size:clamp(27px,3.2vw,47px);margin-bottom:16px}.source-points{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0;list-style:none;margin:24px 0}.source-points li{padding:16px;border:4px solid rgba(255,255,255,.48);font-size:12px;font-weight:700}.about .text-link{color:#fff}
.specials{padding:64px var(--pad);background:var(--paper)}.specials-intro{display:grid;grid-template-columns:minmax(260px,.75fr) 1.25fr auto;gap:18px 44px;align-items:end;margin-bottom:30px}.specials-intro .kicker{grid-column:1/-1;margin:0}.specials-intro h2{font-size:clamp(34px,4.2vw,58px)}.specials-intro>p:last-of-type{max-width:650px;margin:0}.specials-intro .text-link{align-self:end}.coupon-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.coupon{position:relative;display:flex;flex-direction:column;min-height:340px;padding:26px;background:var(--cream);border:4px solid var(--navy);box-shadow:10px 10px 0 var(--wood-dark);overflow:hidden}.coupon:before,.coupon:after{content:"";position:absolute;right:-15px;width:28px;height:28px;border:4px solid var(--navy);border-radius:50%;background:var(--paper)}.coupon:before{top:38%}.coupon:after{bottom:38%}.coupon-label{margin:0 0 16px;color:var(--wood-dark);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.coupon h3{font-size:clamp(24px,2.4vw,35px)}.coupon>p:not(.coupon-label){font-size:12px;line-height:1.55}.coupon .button{width:max-content;margin-top:auto}
.why{min-height:500px;padding:72px var(--pad);display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;align-items:center;background:var(--wood);color:var(--navy-deep);overflow:hidden}.why .year{color:transparent;-webkit-text-stroke:4px var(--navy);font-size:clamp(92px,16vw,230px)}.why h2{font-size:clamp(34px,4.3vw,60px)}.why-copy{padding:0;background:none}.why-copy>p{max-width:700px}.why .principles{border-block:4px solid var(--navy)}.why .principles b{color:var(--navy)}
.team{padding-block:72px;background:var(--wood);color:var(--navy-deep)}.team h2{font-size:clamp(34px,4.2vw,58px)}.team .photo-card{border:4px solid var(--navy);box-shadow:16px 16px 0 var(--navy)}.team-ribbon{--ribbon-bg:var(--cream);--ribbon-fold:var(--wood-dark)}
.field-note{height:380px;border-block:8px solid var(--navy-deep);background:linear-gradient(115deg,var(--navy-deep),#27577a 62%,var(--wood-dark));position:relative}.field-note:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,transparent 0 34px,rgba(255,255,255,.035) 34px 36px)}.field-note:after{background:linear-gradient(90deg,rgba(11,35,58,.52),rgba(11,35,58,.06))}.field-ribbon{position:absolute;z-index:3;left:var(--pad);top:50%;transform:translateY(-50%)}.ribbon-stack--quote{font-size:clamp(24px,3.3vw,48px)}
.reviews{padding:64px var(--pad);background:var(--cream)}.reviews-heading{display:grid;grid-template-columns:.8fr 1.2fr;gap:10px 54px;align-items:end;margin-bottom:28px}.reviews-heading .kicker{grid-column:1/-1}.reviews-heading h2{font-size:clamp(34px,4.3vw,60px)}.reviews-heading>p:last-child{max-width:640px;margin:0}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}.review-card{display:flex;flex-direction:column;min-height:280px;padding:24px;background:var(--paper);border:4px solid var(--navy);box-shadow:8px 8px 0 var(--wood)}.review-card .stars{margin:0;color:var(--wood-dark);letter-spacing:.14em}.review-card blockquote{position:static;transform:none;max-width:none;margin:20px 0;color:var(--ink);font:600 18px/1.5 "Work Sans",sans-serif}.review-card .reviewer{margin:auto 0 0;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--navy)}
.contact{padding:64px var(--pad);text-align:left;background:var(--navy-deep);color:var(--cream)}.contact .kicker{color:var(--wood)}.contact-heading{display:grid;grid-template-columns:.9fr 1.1fr;gap:12px 54px;align-items:end;margin-bottom:28px}.contact-heading>.kicker{grid-column:1/-1}.contact-heading>p:last-child{max-width:680px;margin:0}.ribbon-stack--contact{font-size:clamp(26px,3.4vw,48px)}.contact-layout{display:grid;grid-template-columns:1.08fr .92fr;gap:22px;align-items:stretch}.service-form,.location-card{background:var(--cream);color:var(--ink);border:4px solid var(--wood)}.service-form{display:grid;gap:14px;padding:24px}.service-form label{display:grid;gap:6px}.service-form label>span:first-child{font-size:10px;font-weight:700;letter-spacing:.11em;text-transform:uppercase;color:var(--navy)}.service-form input,.service-form select,.service-form textarea,.chat-panel input,.chat-panel textarea{width:100%;border:2px solid var(--navy);border-radius:0;background:#fff;padding:12px 13px;color:var(--ink);font:500 15px "Work Sans",sans-serif}.service-form textarea,.chat-panel textarea{min-height:106px;resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.service-form .consent{display:grid;grid-template-columns:20px 1fr;align-items:start}.service-form .consent input{width:18px;height:18px;margin:3px 0 0}.service-form .consent span{font-size:10px;line-height:1.5;letter-spacing:0;text-transform:none;color:#4d453d}.service-form .button{width:max-content;border:4px solid var(--navy);background:var(--navy);color:var(--cream);cursor:pointer}.form-status{min-height:1.5em;margin:0;font-size:12px;font-weight:700;color:var(--navy)}.location-card{display:flex;flex-direction:column}.location-card iframe{width:100%;min-height:390px;flex:1;border:0}.location-card>div{padding:22px}.location-card>div>p:not(.kicker){font:400 clamp(22px,2.5vw,34px)/1.25 "Ultra",serif}.phone-link{font-size:20px;font-weight:700;color:var(--navy)}.contact-cta{margin-top:28px;padding-top:28px;border-top:4px solid var(--wood);text-align:center}.contact-cta h2{font-size:clamp(38px,5vw,68px)}.contact-cta>p:not(.kicker){max-width:760px;margin:12px auto}.contact .actions{justify-content:center;gap:16px}.contact .actions .button{color:var(--cream);border:4px solid var(--cream);background:transparent;padding:12px 20px}.contact .actions .button.filled{background:var(--wood);color:var(--navy-deep);border-color:var(--wood)}
.chat-launcher{position:fixed;right:18px;bottom:18px;z-index:40;border:3px solid var(--cream);border-radius:999px;background:var(--navy);color:#fff;padding:13px 18px;font:700 14px "Work Sans",sans-serif;box-shadow:0 8px 24px rgba(0,0,0,.28);cursor:pointer;transition:transform .3s,box-shadow .3s}.chat-launcher:hover,.chat-launcher:focus-visible{transform:translateY(-5px);box-shadow:0 14px 30px rgba(0,0,0,.34)}.chat-launcher span{color:var(--wood)}.chat-panel{position:fixed;right:18px;bottom:78px;z-index:41;width:min(370px,calc(100vw - 36px));background:var(--cream);color:var(--ink);border:4px solid var(--navy);box-shadow:12px 12px 0 var(--wood-dark)}.chat-panel[hidden]{display:none}.chat-panel header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--navy);color:#fff}.chat-panel h2{font:700 20px "Work Sans",sans-serif!important}.chat-close{border:0;background:transparent;color:#fff;font-size:28px;line-height:1;cursor:pointer}.chat-body{display:grid;gap:12px;padding:18px}.chat-body label{display:grid;gap:5px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}.demo-note{margin:0;padding:8px;background:#efe2c9;border-left:4px solid var(--wood-dark);font-size:11px;font-weight:700}.chat-consent,.chat-status{margin:0;font-size:10px;line-height:1.5}.chat-demo-submit{width:max-content;border:4px solid var(--navy);background:var(--navy);color:#fff;cursor:pointer}
footer{background:#081b2d}footer .designer-credit{display:grid;flex:1;gap:8px}footer .designer-credit p{margin:0}footer .designer-credit span{display:block;margin-top:4px}footer .designer-links{display:flex;flex-wrap:wrap;gap:6px 18px;font-style:normal;font-size:10px}footer .designer-links a{overflow-wrap:anywhere}footer small{max-width:430px;font-size:9px;line-height:1.45;color:rgba(255,249,235,.72)}footer small a{color:inherit}.chapter-nav{right:12px;gap:6px}.chapter-nav a{width:auto;height:auto;padding:5px 9px;border:2px solid var(--navy);border-radius:0;background:rgba(255,249,235,.94);font-size:9px;font-weight:700;letter-spacing:.08em;text-decoration:none;text-transform:uppercase;box-shadow:3px 3px 0 rgba(11,35,58,.18);transition:transform .25s,background .25s}.chapter-nav a.active{background:var(--wood);transform:translateX(-5px)}.top-button{bottom:78px}
@media(max-width:1050px){.masthead{grid-template-columns:180px 1fr auto}.masthead nav{gap:16px}.specials-intro,.reviews-heading,.contact-heading{grid-template-columns:1fr}.specials-intro .kicker,.reviews-heading .kicker,.contact-heading>.kicker{grid-column:auto}.coupon-grid,.review-grid{grid-template-columns:1fr 1fr}.coupon:last-child,.review-card:last-child{grid-column:1/-1}.contact-layout{grid-template-columns:1fr}}
@media(max-width:820px){.hero{min-height:760px}.hero-copy{width:calc(100vw - 44px);max-width:100%;overflow:visible}.ribbon-stack{--ribbon-border:3px;--ribbon-notch:15px;--ribbon-inner-notch:15px;--ribbon-step:10px;padding-right:12px}.ribbon-stack--hero{font-size:clamp(23px,6.4vw,32px)}.ribbon-line{max-width:calc(100vw - 58px - var(--shift))}.ribbon-text{white-space:normal}.craftsman{width:210px;right:-42px;opacity:.72}.about,.why{grid-template-columns:1fr;padding:46px 22px}.specials,.reviews,.contact{padding:46px 22px}.coupon-grid,.review-grid{grid-template-columns:1fr}.coupon:last-child,.review-card:last-child{grid-column:auto}.source-points{grid-template-columns:1fr}.ribbon-stack--heading{font-size:clamp(25px,7vw,36px)}.why .year{font-size:30vw}.team{padding-block:46px}.field-note{height:330px}.field-ribbon{left:20px}.ribbon-stack--quote{font-size:clamp(23px,6.5vw,34px)}.ribbon-stack--contact{font-size:clamp(22px,6.2vw,34px)}.form-row{grid-template-columns:1fr}.location-card iframe{min-height:310px}.chat-panel{right:10px;bottom:74px;width:calc(100vw - 20px)}.chat-launcher{right:10px;bottom:10px}.top-button{bottom:70px}.chapter-nav{display:flex;left:8px;right:124px;top:auto;bottom:8px;transform:none;gap:5px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:none}.chapter-nav::-webkit-scrollbar{display:none}.chapter-nav a{flex:0 0 auto;padding:5px 7px;font-size:8px}.chapter-nav a.active{transform:translateY(-3px)}}
@media(max-width:540px){.ribbon-stack--hero{--ribbon-notch:12px;--ribbon-inner-notch:12px;--ribbon-step:6px;font-size:clamp(18px,5.8vw,25px);padding-top:6px;padding-bottom:16px}.ribbon-stack--hero .ribbon-line{margin-top:3px}.ribbon-stack--hero .ribbon-text{padding-block:.16em .2em}}
@media(prefers-reduced-motion:reduce){.ribbon-line{transition:none}}

/* Alignment corrections for the masthead and closing contact CTA. */
.contact-cta h2{max-width:none;margin-inline:auto;text-align:center}
.contact-ready-ribbon{margin:8px auto 0;font-size:clamp(38px,5vw,68px)}
.masthead .brand{justify-self:start}
.masthead nav{justify-self:center;align-self:center;align-items:center}
.masthead nav a{display:block;line-height:1}
.masthead .phone{display:grid;justify-items:end;align-content:center;justify-self:end;text-align:right;line-height:1}
.masthead .phone span{margin-bottom:4px;line-height:1.15}
@media(min-width:821px){.masthead{grid-template-columns:minmax(180px,1fr) auto minmax(230px,1fr);gap:24px}}
@media(max-width:820px){.masthead{grid-template-columns:minmax(120px,150px) 1fr;gap:12px;padding-inline:22px}.masthead .phone{justify-self:end}}

/* Keep the hero ribbon inside narrow viewports by scaling, not wrapping. */
@media(max-width:820px){.ribbon-stack--hero{font-size:clamp(19px,5.2vw,28px)}.ribbon-stack--hero .ribbon-text{width:auto;white-space:normal}}
@media(max-width:540px){.ribbon-stack--hero{font-size:clamp(15px,4.8vw,21px)}}

/* Single-polygon notched panels: one fill and one continuous border. */
.has-notched-panel{position:relative;isolation:isolate}
.notched-panel{position:absolute;z-index:-1;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;filter:drop-shadow(3px 3px 0 rgba(11,35,58,.22))}
.notched-panel polygon{fill:var(--tab-bg);stroke:var(--tab-outline);stroke-linejoin:round}
.chapter-nav a{--tab-bg:var(--cream);--tab-outline:var(--navy);--tab-border:3px;--tab-notch:12px;min-width:122px;padding:7px 14px 7px 20px;border:0;border-radius:0;background:transparent;color:var(--navy-deep);clip-path:none;box-shadow:none;text-align:left;transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.chapter-nav a::before{content:none}
.chapter-nav a.active{--tab-bg:var(--wood);background:transparent}
.edge-kicker{--tab-bg:#c3a06c;--tab-outline:var(--navy-deep);--tab-border:3px;--tab-notch:12px;display:inline-block;width:max-content;max-width:100%;justify-self:start;padding:7px 16px 7px 22px;color:var(--navy-deep)!important;line-height:1.2}
.about .edge-kicker,.contact .edge-kicker{--tab-outline:var(--cream)}
.trade{grid-template-columns:64px 1fr}
@media(min-width:821px){.chapter-nav{right:-12px;justify-items:end}.chapter-nav a{transform:translateX(var(--spy-offset,calc(100% - 28px)))}.chapter-nav a:hover,.chapter-nav a:focus-visible{transform:translateX(0)}}
@media(max-width:820px){.chapter-nav a{min-width:0;padding:5px 10px 5px 14px;transform:none}.chapter-nav a.active{transform:translateY(-3px)}}

/* Unified border widths and compact masthead alignment. */
:root{--border-structural:4px;--border-control:3px;--border-dark:var(--navy-deep);--border-light:var(--cream)}
.masthead{height:76px;padding-block:7px;align-items:stretch;border-bottom:var(--border-structural) solid var(--border-dark)}
.masthead .brand{display:flex;align-items:center;height:100%;overflow:visible}
.masthead .brand img{width:176px;max-height:none;object-fit:contain;transform:translateY(8px)}
.masthead nav{display:flex;height:100%;align-items:stretch}
.masthead nav a{display:flex;align-items:center;height:100%;padding-block:0}
.masthead .phone{display:flex;height:100%;flex-direction:column;align-items:flex-end;justify-content:center;align-self:stretch}
.masthead .phone span{margin:0 0 3px}

/* Center the intrinsic text blocks within the navbar band. */
.masthead{align-items:center}
.masthead nav{height:auto;align-self:center;align-items:center}
.masthead nav a{height:auto;padding-block:8px}
.masthead .phone{height:auto;align-self:center;justify-self:end;justify-content:center;margin:0}
.masthead nav{position:absolute;left:50%;top:50%;translate:-50% -50%;margin:0}
.masthead .phone{position:absolute;right:var(--pad);top:50%;translate:0 -50%}
.hero{align-items:flex-start}
@media(min-width:821px){.hero{padding-top:112px}}

.ribbon-stack{--ribbon-border:var(--border-structural)}
.chapter-nav a,.edge-kicker{--tab-border:2px;--tab-outline:var(--border-dark)}
.edge-kicker{padding-right:22px}
.about .edge-kicker,.contact .edge-kicker{--tab-outline:var(--border-light)}

.ledger-grid,.why .principles{border-color:var(--border-dark)}
.trade{border-color:var(--border-dark)}
.trade-mark{border:var(--border-structural) solid var(--border-dark)}
.about .photo-card,.source-points li{border-width:var(--border-structural);border-color:var(--border-light)}
.coupon,.review-card,.team .photo-card,.service-form,.location-card,.chat-panel{border-width:var(--border-structural);border-color:var(--border-dark)}
.coupon::before,.coupon::after{border-width:var(--border-structural);border-color:var(--border-dark)}
.contact-cta{border-top:var(--border-structural) solid var(--border-light)}
.button,.service-form .button,.contact .actions .button,.chat-demo-submit,.chat-launcher{border-width:var(--border-control);border-style:solid}
.button,.service-form .button,.chat-demo-submit{border-color:var(--border-dark)}
.contact .actions .button,.chat-launcher{border-color:var(--border-light)}
.top-button{border:var(--border-control) solid var(--border-light)}
.service-form input,.service-form select,.service-form textarea,.chat-panel input,.chat-panel textarea{border:var(--border-control) solid var(--border-dark)}

/* Complete FAQ treatment for the fictional anonymized concept. */
.faq{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:clamp(34px,7vw,104px);padding:64px var(--pad);background:var(--wood);color:var(--navy-deep)}
.faq-heading{align-self:start;position:sticky;top:24px}
.faq-heading h2{font-size:clamp(34px,4.3vw,60px)}
.faq-heading p{max-width:430px;font-weight:600}
.faq-list{border-top:var(--border-structural) solid var(--border-dark)}
.faq-list details{border-bottom:var(--border-structural) solid var(--border-dark)}
.faq-list summary{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center;padding:18px 8px;cursor:pointer;list-style:none;font:400 clamp(17px,1.7vw,22px)/1.25 "Ultra",serif;transition:padding-left .25s cubic-bezier(.2,.8,.2,1),background .25s}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary::after{content:"+";display:grid;place-items:center;width:30px;height:30px;border:var(--border-control) solid var(--border-dark);font:700 22px/1 "Work Sans",sans-serif}
.faq-list details[open] summary::after{content:"−"}
.faq-list summary:hover,.faq-list summary:focus-visible{padding-left:16px;background:rgba(255,249,235,.22)}
.faq-list details>p{max-width:760px;margin:0;padding:0 54px 20px 8px}
footer{padding-right:max(var(--pad),180px)}
@media(min-width:821px) and (max-width:1050px){.source-points{grid-template-columns:repeat(2,1fr)}}

@media(max-width:820px){
  .masthead{height:68px;padding:6px 18px}
  .masthead .brand img{width:140px;max-height:none;transform:translateY(6px)}
  .masthead .phone{font-size:14px}
  .masthead .phone{right:18px}
  .hero-copy{padding-top:68px}
  .ribbon-stack{--ribbon-border:var(--border-structural)}
  .faq{grid-template-columns:1fr;padding:46px 22px}
  .faq-heading{position:static}
  footer{padding-right:22px;padding-bottom:82px}
}

/* Rounded, slowly marching dashed borders for special offers. */
.coupon{--coupon-tilt:-.35deg;border:0}
.coupon:nth-child(2){--coupon-tilt:.3deg}
.coupon:nth-child(3){--coupon-tilt:-.25deg}
.coupon.reveal{transform:translateY(22px) rotate(var(--coupon-tilt))}
.coupon.reveal.seen{transform:rotate(var(--coupon-tilt))}
.coupon::before,.coupon::after{content:none}
.coupon-border{position:absolute;z-index:2;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}
.coupon-border rect{fill:none;stroke:var(--border-dark);stroke-width:var(--border-structural);stroke-dasharray:10 8;stroke-linecap:round;stroke-linejoin:round;animation:chapman-marching-border 5.4s linear infinite}
@keyframes chapman-marching-border{to{stroke-dashoffset:-36}}
@media(prefers-reduced-motion:reduce){.coupon-border rect{animation:none}}
