/* part 3: services, deal, process, pricing, coverage, cta, footer */
.sec-title{font-size:clamp(2.2rem,5vw,4.2rem);margin:18px 0 34px;letter-spacing:-.02em}
.svc-list{border-top:1px solid rgba(13,14,16,.16)}
.svc-row{display:grid;grid-template-columns:110px 1fr 60px;gap:24px;align-items:center;padding:34px 10px;border-bottom:1px solid rgba(13,14,16,.16);transition:background .35s,padding .35s;position:relative}
.svc-num{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#7E8287;transition:color .35s}
.svc-main h3{font-size:clamp(1.5rem,3vw,2.3rem);margin-bottom:10px;transition:transform .35s}
.svc-main p{max-width:62ch;color:#3F4247;font-size:15px}
.svc-arrow{font-size:26px;justify-self:end;transition:transform .35s,color .35s;color:#7E8287}
.svc-row:hover{background:var(--ink);padding-left:26px;padding-right:26px;border-radius:8px}
.svc-row:hover h3,.svc-row:hover p{color:var(--paper)}
.svc-row:hover p strong{color:var(--acc2)}
.svc-row:hover .svc-num{color:var(--acc2)}
.svc-row:hover .svc-arrow{color:var(--acc2);transform:rotate(-45deg) scale(1.15)}
@media(max-width:720px){.svc-row{grid-template-columns:1fr 40px;gap:10px}.svc-num{grid-column:1/-1}}
.deal{background:var(--ink);color:var(--paper);padding:clamp(90px,11vw,160px) 0;position:relative;overflow:hidden}
.deal .label,.cover .label,.cta .label{color:var(--acc2)}
.deal-title{font-size:clamp(2.6rem,6.5vw,5.6rem);letter-spacing:-.03em;margin:16px 0 44px}
.deal-title .acc{color:var(--acc2)}
.deal-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:56px;align-items:center}
.deal-lede{font-family:var(--serif);font-size:clamp(1.25rem,2.2vw,1.7rem);line-height:1.4;color:#C9CDD1;margin-bottom:34px}
.checks{list-style:none;display:flex;flex-direction:column;gap:16px;margin-bottom:36px}
.checks li{display:flex;gap:14px;align-items:baseline;font-size:16px;color:#C9CDD1}
.checks i{font-style:normal;color:var(--acc2);font-size:18px}
.checks strong{color:var(--paper)}
.sig{font-family:var(--serif);font-style:italic;font-size:clamp(1.3rem,2.4vw,1.8rem);line-height:1.35}
.sig .acc{color:var(--acc2)}
.deal-fig{aspect-ratio:7/9;border-radius:8px;overflow:hidden;margin:0}
.deal-fig img{width:100%;height:100%;object-fit:cover;transform:scale(1.12)}
@media(max-width:920px){.deal-grid{grid-template-columns:1fr}.deal-fig{max-width:420px}}
.steps{position:relative;padding-left:34px;display:flex;flex-direction:column;gap:44px;margin-left:8px}
.rail{position:absolute;left:0;top:6px;bottom:6px;width:2px;background:rgba(13,14,16,.14);border-radius:2px}
.rail i{position:absolute;left:0;top:0;width:100%;height:0;background:var(--acc);border-radius:2px;transition:height .2s linear}
.step{display:grid;grid-template-columns:100px 1fr;gap:20px;align-items:baseline}
.step-when{font-family:var(--serif);font-style:italic;font-size:clamp(1.2rem,2vw,1.6rem);color:var(--acc)}
.step-main h3{font-size:clamp(1.4rem,2.6vw,2rem);margin-bottom:8px}
.step-main p{max-width:58ch;color:#3F4247}
.after{margin-top:44px;border-top:1px solid rgba(13,14,16,.14);padding-top:24px;font-size:15px;color:#3F4247;max-width:70ch}
.after strong{color:var(--ink)}
@media(max-width:720px){.step{grid-template-columns:1fr;gap:4px}}
.price-grid{display:grid;grid-template-columns:1fr 1fr .85fr;gap:26px;align-items:stretch}
.price-card{border:1px solid rgba(13,14,16,.16);border-radius:12px;padding:34px 30px;display:flex;flex-direction:column;gap:22px;background:#FAFAF9;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .4s}
.price-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px -18px rgba(13,14,16,.25)}
.price-card.hot{border:1.5px solid var(--acc);position:relative}
.price-card.hot:before{content:"Best for most";position:absolute;top:-13px;left:26px;background:var(--acc);color:#fff;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;border-radius:100px;padding:5px 14px}
.pc-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
.pc-top h3{font-size:1.6rem}
.price{font-family:var(--serif);font-size:clamp(1.6rem,2.6vw,2.2rem);font-weight:600;color:var(--acc);white-space:nowrap}
.feat{list-style:none;display:flex;flex-direction:column;gap:10px;font-size:14.5px;color:#3F4247;flex:1}
.price-card .btn{justify-content:center}
.price-fig{margin:0;aspect-ratio:3/4;border-radius:12px;overflow:hidden}
.price-fig img{width:100%;height:100%;object-fit:cover;transform:scale(1.12)}
@media(max-width:1020px){.price-grid{grid-template-columns:1fr 1fr}.price-fig{grid-column:1/-1;aspect-ratio:21/9}}
@media(max-width:680px){.price-grid{grid-template-columns:1fr}}
.cover{position:relative;min-height:88vh;display:flex;flex-direction:column;justify-content:center;padding:120px 0;color:var(--paper);overflow:hidden}
.cover-bg{position:absolute;inset:-12% 0;z-index:0}
.cover-bg img{width:100%;height:100%;object-fit:cover;transform:scale(1.05)}
.cover:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,14,16,.55),rgba(13,14,16,.25) 50%,rgba(13,14,16,.75));z-index:1}
.cover-inner,.towns-wrap{position:relative;z-index:2}
.cover-inner{width:min(1280px,92vw);margin-inline:auto;padding-bottom:40px}
.cover-title{font-size:clamp(2.4rem,6vw,5rem);letter-spacing:-.03em;line-height:1.04}
.towns-wrap{width:min(1280px,92vw);margin-inline:auto;display:flex;flex-direction:column;gap:26px}
.towns{font-family:var(--serif);font-size:clamp(1.4rem,3.4vw,2.6rem);line-height:1.5;letter-spacing:-.01em;max-width:62ch}
.town{margin-right:.35em;transition:color .3s}
.town:hover{color:var(--acc2)}
.town.home{color:var(--acc2);font-style:italic;font-weight:600}
.town-ghost{opacity:.55;font-style:italic}
.cover-note{max-width:70ch;font-size:15.5px;color:#C9CDD1;line-height:1.65}
.cta{position:relative;padding:clamp(110px,14vw,200px) 0;text-align:center;color:var(--paper);overflow:hidden}
.cta-bg{position:absolute;inset:0;z-index:0}
.cta-bg img{width:100%;height:100%;object-fit:cover;opacity:.35}
.cta:before{content:"";position:absolute;inset:0;background:var(--ink);z-index:0}
.cta-inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;gap:0}
.cta-title{font-size:clamp(2.8rem,7vw,6.4rem);letter-spacing:-.03em;line-height:1.02;margin:18px 0 22px}
.cover-title .acc,.cta-title .acc{color:var(--acc2)}
.cta-sub{max-width:56ch;font-size:clamp(16px,1.8vw,19px);color:#C9CDD1;margin-bottom:44px}
.cta-num{font-family:var(--serif);font-weight:600;font-size:clamp(2.2rem,7.5vw,6rem);letter-spacing:-.02em;color:var(--paper);position:relative;padding:6px 10px;transition:transform .45s cubic-bezier(.22,1,.36,1),color .4s}
.cta-num:after{content:"";position:absolute;left:8px;right:8px;bottom:6px;height:3px;background:var(--acc2);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.22,1,.36,1)}
.cta-num:hover{color:var(--acc2)}
.cta-num:hover:after{transform:scaleX(1)}
.cta-note{margin-top:36px;font-size:14px;color:#8E9296;line-height:1.6}
footer{background:var(--ink);color:#8E9296;padding:56px 0 34px;border-top:1px solid rgba(244,244,242,.08)}
.foot-top{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;padding-bottom:30px;border-bottom:1px solid rgba(244,244,242,.08)}
.foot-logo{font-size:30px;color:var(--paper)}
.foot-links{display:flex;gap:22px;font-size:13px;font-weight:600;letter-spacing:.04em}
.foot-links a{transition:color .3s}
.foot-links a:hover{color:var(--acc2)}
.to-top{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:color .3s}
.to-top:hover{color:var(--acc2)}
.foot-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;padding-top:26px;font-size:13px}
.foot-tag em{color:var(--acc2)}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.hi{transform:none}.reveal{opacity:1;transform:none}}
.foot-logo span{color:#8E9296}
.cta-note a{color:var(--paper);border-bottom:1px solid var(--acc2)}
.foot-bottom a:hover{color:var(--acc2)}
.e404{min-height:100vh;display:flex;align-items:center}
.e404-code{font-family:var(--serif);font-style:italic;font-size:clamp(4rem,14vw,9rem);color:var(--acc);line-height:1}
.e404-title{font-size:clamp(2.2rem,6vw,4rem);margin:12px 0 18px}
.e404-body{max-width:52ch;color:#3F4247;margin-bottom:34px}
.e404-actions{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.foot-logo i{color:var(--acc2)}
.foot-links{flex-wrap:wrap;row-gap:10px}
.foot-links a{white-space:nowrap}
