@font-face{font-family:"Mona Sans";src:url(../fonts/mona-sans.woff2) format("woff2");font-weight:200 900;font-stretch:100%;font-display:swap}
@font-face{font-family:"Mona Sans";src:url(../fonts/mona-sans-italic.woff2) format("woff2");font-weight:200 900;font-style:italic;font-stretch:100%;font-display:swap}
@font-face{font-family:"Playball";src:url(../fonts/playball.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Sansation";src:url(../fonts/sansation-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"General Sans";src:url(../fonts/general-sans-400.woff2) format("woff2");font-weight:400;font-display:swap}

:root{
	--primary:#101b2c;
	--subtle:#5f6c7a;
	--light:#fafafa;
	--red:#ec0d1c;
	--red-2:#ed0c1d;
	--dark:#2d3230;
	--input:#f7f7f7;
	--card-grad:linear-gradient(-16.25deg,rgba(255,247,216,.67) 7.735%,rgba(255,214,214,.55) 92.265%);
	--m:clamp(8px,2.083vw,40px);
	--g:clamp(16px,5.21vw,100px);
	--sec:120px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:#fff;color:var(--primary);font-family:"Mona Sans",system-ui,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
p,h1,h2,h3,ul,figure{margin:0}
ul{padding:0;list-style:none}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--red);outline-offset:2px}
.site{padding-top:var(--m);overflow-x:clip}

/* ---------- shared type ---------- */
.eyebrow{display:flex;align-items:center;gap:16px;width:553px;max-width:100%}
.eyebrow p{font-weight:700;font-size:14px;line-height:1.5;letter-spacing:1.54px;text-transform:uppercase;color:var(--red-2);white-space:nowrap}
.eyebrow img{flex:1 1 0;min-width:1px;height:1px;width:auto}
.eyebrow--hero,.eyebrow--502,.eyebrow--center{width:502px}
.eyebrow--440{width:440px}
.eyebrow--604{width:604px}
.eyebrow--fixed{width:auto}
.eyebrow--fixed img{flex:0 0 130px;width:130px}
.eyebrow--medium p{font-weight:500}
.h2{font-weight:700;font-size:48px;line-height:1.15;letter-spacing:-1.44px;color:var(--primary)}
.h2--semibold{font-weight:600;line-height:1.2}
.h2--52{font-size:52px;letter-spacing:-1.56px}
.h4{font-weight:600;font-size:28px;line-height:1.35;letter-spacing:-.56px;color:var(--primary)}
.lead{font-size:16px;line-height:1.5;letter-spacing:-.32px;color:var(--subtle)}
.tag{font-weight:600;font-size:14px;line-height:1.5;letter-spacing:.14px;text-transform:uppercase;color:var(--red)}
.stack-16{display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:100%}
.link-arrow{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}
.link-arrow span{font-weight:600;font-size:16px;line-height:1.5;letter-spacing:.16px;text-transform:uppercase;text-decoration:underline;text-decoration-thickness:10%;text-underline-position:from-font;white-space:nowrap}
.link-arrow img{width:24px;height:24px;transition:transform .2s}
.link-arrow:hover img{transform:translate(2px,-2px)}

.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9.304px;height:52px;padding:10px 16px;border-radius:8px;font-weight:600;font-size:14px;line-height:1.5;letter-spacing:.14px;text-transform:uppercase;white-space:nowrap;transition:filter .2s,background-color .2s}
.btn--red{background:var(--red);color:var(--light);filter:drop-shadow(0 3.722px 11.165px rgba(255,255,255,.6));box-shadow:inset 0 2px 1px rgba(0,0,0,.1),inset 0 -4px 2.5px rgba(0,0,0,.1)}
.btn--red:hover{background:#d40a18}
.btn--white{background:#fff;color:var(--primary);backdrop-filter:blur(6.15px)}
.btn--white:hover{background:#fff8f0}
.btn__arrow{width:14px;height:20px;margin:-4px 2px;transform:rotate(90deg)}

.badge{display:flex;align-items:center;justify-content:center;width:68px;height:68px;flex-shrink:0;border-radius:8px;background:linear-gradient(180deg,#ffe9b0 0%,#fff 100%)}
.badge span{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:33px;background:var(--red);font-weight:700;font-size:16px;line-height:1.5;letter-spacing:-.32px;color:var(--light)}
.icon-box{display:flex;align-items:center;justify-content:center;width:56px;height:56px;flex-shrink:0;border-radius:8px;background:linear-gradient(180.275deg,#ff7b84 29.618%,#ffe7e2 71.956%)}
.icon-box img{width:32px;height:32px}
.card{display:flex;flex-direction:column;align-items:flex-start;gap:12px}

/* ---------- hero ---------- */
.hero{position:relative;margin:0 var(--m);padding:40px clamp(16px,3.125vw,60px) 80px;border-radius:40px;background:var(--card-grad)}
.hero--inner{padding-bottom:40px}
.nav{position:relative;z-index:5;display:flex;align-items:center;justify-content:space-between;height:80px;padding:12px 1px;border-radius:8px;backdrop-filter:blur(21.5px)}
.nav__logo img{width:233px;height:60px;object-fit:cover}
.nav__menu{display:flex;align-items:center;gap:16px;height:40px}
.nav__link{display:flex;align-items:center;height:100%;padding:10px;font-weight:500;font-size:16px;line-height:1.5;letter-spacing:.16px;text-transform:uppercase;opacity:.8;border-bottom:2px solid transparent;transition:opacity .2s,border-color .2s}
.nav__link:hover{opacity:1}
.nav__link.is-active{font-weight:600;opacity:1;border-bottom-color:var(--primary)}
.nav__end{width:auto;min-width:233px;display:flex;justify-content:flex-end;flex-shrink:0}
.nav__cta{display:flex;align-items:center;justify-content:center;height:44px;padding:12px 24px 10px;border-radius:8px;background:#fad400;font-weight:500;font-size:14px;line-height:1.5;letter-spacing:.14px;text-transform:uppercase;white-space:nowrap;transition:background-color .2s}
.nav__cta:hover{background:#ffe033}
.nav__cta--mobile,.nav__toggle{display:none}

.hero__stage{margin-top:28px}
.hero__row{display:flex;align-items:center;justify-content:space-between}
.hero__copy{flex:0 1 629px;display:flex;flex-direction:column;gap:32px;min-width:0}
.hero__art-wrap{flex:1 1 0;min-width:0;display:flex;justify-content:flex-end}
.hero__art{position:relative;width:1023px;height:701px;flex-shrink:0}
.hero__text{display:flex;flex-direction:column;gap:16px}
.hero__title{font-weight:700;font-size:72px;line-height:1.15;letter-spacing:-2.16px}
.hero__lead{width:629px;max-width:100%}
.hero__actions{display:flex;gap:16px;flex-wrap:wrap}
.hero__visual{position:absolute;right:0;top:0;width:707px;height:701px}
.hero__visual>*{position:absolute}
.hero__quote{position:absolute;left:10px;top:295px;width:340px;max-width:340px;font-family:"Playball",cursive;font-size:20px;line-height:1.35;color:#6e1600;white-space:normal;z-index:2}
.hero__quote-l1,.hero__quote-l2,.hero__quote-l3,.hero__quote-l4{display:block;white-space:nowrap;margin:2px 0}
.hero__curve{position:absolute;left:173.5px;top:475.66px;width:295.484px;height:115.84px;max-width:none;transform:rotate(5deg);z-index:2}
.hero__waves-red{left:0;top:431px;width:270px;height:270px}
.hero__waves-yellow{left:471px;top:0;width:160px;height:160px}
.hero__frame{left:101px;top:53px;width:472px;height:569px;overflow:hidden;background:#fff6e9;border:8.346px solid #fff;border-radius:0 60.701px 0 60.701px}
.hero__mark{position:absolute;left:165.65px;top:-90.35px;width:343px;height:367px;overflow:hidden;opacity:.1}
.hero__mark img{position:absolute;left:0;top:-.06%;width:416.07%;height:100.12%;max-width:none}
.hero__photo{position:absolute;left:calc(50% + .5px);top:-8.35px;width:407px;height:569px;transform:translateX(-50%);overflow:hidden}
.hero__photo img,.founder__photo>img{position:absolute;left:-.73%;top:3.14%;width:101.46%;height:96.86%;max-width:none}
.hero__exp{left:16px;top:90px;width:auto;min-width:210px;max-width:250px;padding:14px 20px;border-top:4px solid var(--red);border-radius:16px;background:#fff;filter:drop-shadow(0 6px 20px rgba(16,27,44,.08));z-index:3;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;text-align:center}
.hero__exp-line1,.hero__exp-line3{display:block;margin:0 !important;padding:0 !important;font-size:12.5px !important;font-weight:500 !important;line-height:1.2 !important;letter-spacing:-.2px !important;color:var(--subtle) !important;text-align:center !important}
.hero__exp-line2{display:block;margin:0 !important;padding:0 !important;font-size:16px !important;font-weight:700 !important;line-height:1.2 !important;letter-spacing:-.3px !important;color:var(--primary) !important;text-transform:uppercase !important;text-align:center !important;white-space:nowrap !important}
.hero__card{left:315px;top:440px;width:392px;height:130px}
.hero__card-back{position:absolute;left:10px;top:10px;width:382px;height:120px;border-radius:12px;background:#fff;box-shadow:0 3px 21.9px rgba(0,0,0,.05)}
.hero__card-front{position:absolute;left:0;top:-4px;display:flex;flex-direction:column;gap:10px;padding:16px;border-top:4px solid var(--red);border-radius:12px;background:#fff;filter:drop-shadow(-4px 28px 17.75px rgba(0,0,0,.1))}
.hero__card-tag{font-weight:500;font-size:12px;line-height:1.5;letter-spacing:1.32px;text-transform:uppercase;color:var(--red-2)}
.hero__person{display:flex;align-items:center;gap:12px;width:350px}
.hero__person img{width:60px;height:60px;border-radius:50%}
.hero__person>div{display:flex;flex-direction:column;gap:4px;line-height:1.5;white-space:nowrap}
.hero__person-name{font-weight:600;font-size:18px;letter-spacing:-.36px}
.hero__person-role{font-size:16px;letter-spacing:-.32px;color:var(--subtle)}

/* ---------- sections ---------- */
.main{display:flex;flex-direction:column;align-items:center}
.main>*+*{margin-top:var(--sec)}
.wrap{width:min(1720px,calc(100% - 2 * var(--g)))}

.form-card{position:relative;z-index:2;display:flex;flex-direction:column;gap:28px;padding:40px 32px 24px;border:1px solid #ded9d9;border-radius:16px;background:#fff;filter:drop-shadow(0 1px 4px rgba(0,0,0,.05))}
.form-card--center{width:min(1200px,calc(100% - 2 * var(--g)));margin-top:-60px}
.form-card--center .form-card__head{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}
.form-card__title{font-weight:700;font-size:32px;line-height:1.15;letter-spacing:-.96px}
.form-card--left{width:933px;flex:0 1 933px;min-width:0}
.form-card--left .form-card__head{display:flex;flex-direction:column;gap:8px}
.form-card__title--sm{font-weight:600;font-size:24px;line-height:1.4;letter-spacing:-.48px}
.eyebrow--center{justify-content:center}

.claim-form{display:flex;flex-direction:column;gap:28px}
.claim-form__fields{display:flex;flex-direction:column;gap:20px}
.field-row{display:flex;gap:16px}
.field{display:flex;flex:1 1 0;flex-direction:column;gap:8px;min-width:0}
.field__label{font-size:14px;line-height:1.5;color:var(--primary)}
.field__label--subtle{color:var(--subtle)}
.field__input{display:block;width:100%;height:48px;padding:10px 16px;border:0;border-radius:8px;background:var(--input);font-family:"General Sans","Mona Sans",sans-serif;font-size:16px;line-height:1.5;color:var(--primary);appearance:none;-webkit-appearance:none}
.field__input::placeholder{color:var(--primary);opacity:1}
.field__input--area{height:124px;padding:16px;resize:none}
.field__input--area::placeholder{color:#a9a9a9}
.field__input:focus{outline:2px solid rgba(236,13,28,.35);outline-offset:0}
.select{position:relative;display:block}
.select .field__input{padding-right:52px;cursor:pointer}
.select::after{content:"";position:absolute;right:16px;top:12px;width:24px;height:24px;background:url(../img/chevron.svg) center/7.75px 14px no-repeat;transform:rotate(90deg);pointer-events:none}
.upload{display:flex;flex-direction:column;align-items:center;gap:16px;padding:24px;border-radius:8px;background:#f9fafb}
.upload__icon{width:24px;height:24px;padding:2.25px 1.25px}
.upload__text{display:flex;flex-direction:column;gap:4px;width:100%;text-align:center;line-height:1.5}
.upload__title{font-weight:500;font-size:16px;letter-spacing:-.32px}
.upload__hint{font-size:12px;color:var(--subtle);word-break:break-word}
.upload__btn{position:relative;display:flex;align-items:center;height:32px;padding:8px 12px;border-radius:8px;background:#d7e2e9;font-weight:500;font-size:14px;line-height:1.5;letter-spacing:.14px;text-transform:uppercase;cursor:pointer;transition:background-color .2s}
.upload__btn:hover{background:#c8d6df}
.upload__btn input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.upload__btn:focus-within{outline:2px solid var(--red);outline-offset:2px}
.btn-submit{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:48px;padding:0 10px 0 12px;border:0;border-radius:8px;background:var(--red);font-weight:500;font-size:16px;line-height:1.5;letter-spacing:.16px;text-transform:uppercase;color:#fff;cursor:pointer;transition:background-color .2s}
.btn-submit:hover{background:#d40a18}
.btn-submit img{width:9.5px;height:13.5px;margin:-2.75px 1.25px;transform:rotate(-90deg)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.form-notice{padding:12px 16px;border-radius:8px;font-size:14px}
.form-notice--ok{background:#e9f8ee;color:#14532d}
.form-notice--err{background:#fdecec;color:#8a1010}

.split{display:flex;align-items:center;gap:100px}
.split__img{flex:0 1 791px;width:791px;min-width:0;aspect-ratio:791/593;border-radius:40px;object-fit:cover}
.split__copy{flex:0 1 769px;display:flex;flex-direction:column;align-items:flex-start;gap:32px}

.block{display:flex;flex-direction:column;gap:60px}
.block__head{display:flex;align-items:flex-end;justify-content:space-between;gap:40px}
.block__intro--871{max-width:871px}
.block__left-711,.block__left--full{width:100% !important;max-width:100% !important;flex:1 1 100% !important}
.block__left--full .h2{font-size:clamp(30px,3vw,43px) !important;line-height:1.2 !important;letter-spacing:-1px !important;width:100% !important;max-width:100% !important}
.block__left--full .lead{width:100% !important;max-width:100% !important}
.cards-3{display:flex;gap:48px}
.cards-3>.card{flex:1 1 0;min-width:0}
.cards-3 .h4,.steps .h4{white-space:normal;word-break:normal}
.cards-3 .lead{max-width:100%;word-break:normal}
.cards-3--roofers>.card:nth-child(1) .lead{max-width:100%}
.cards-3>.card:nth-child(2) .lead{max-width:100%}
.services{display:grid;grid-template-columns:repeat(3,401px);justify-content:space-between;align-items:center;row-gap:40px}
.service{display:flex;flex-direction:column;align-items:flex-start;gap:12px}
.service:first-child{gap:16px}
.steps{display:flex;justify-content:space-between;gap:24px}
.step:nth-child(1) .lead{max-width:375px}
.step:nth-child(2){width:394px}
.step:nth-child(3){width:345px}
.step:nth-child(3) .lead{width:370px;max-width:none}
.step:nth-child(4){width:369px}

.evidence{display:flex;gap:24px}
.evidence__item{position:relative;flex:1 1 0;min-width:0;aspect-ratio:557/415;overflow:hidden;border-radius:40px}
.evidence__item img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.evidence__item::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 49.888%,rgba(0,0,0,.8) 98.57%)}
.evidence__item--3::after{background:linear-gradient(179.96deg,rgba(0,0,0,0) 22.312%,rgba(0,0,0,.6) 86.837%)}
.evidence__item figcaption{position:absolute;z-index:1;left:28px;right:32px;bottom:28px;font-weight:600;font-size:28px;line-height:1.35;letter-spacing:-.56px;color:var(--light)}
.evidence__item--3 figcaption{bottom:34px}

.founder{display:flex;align-items:center;justify-content:space-between;gap:clamp(40px,4vw,80px);width:min(1720px,calc(100% - 2 * var(--g)));box-sizing:border-box}
.founder__visual-wrap{flex:0 1 720px;min-width:0}
.founder__visual{position:relative;width:720px;height:920px;flex-shrink:0}
.founder__bg{position:absolute;left:-170px;top:32px;width:1057px;height:1057px;max-width:none}
.founder__photo{position:absolute;left:74px;top:0;width:571px;height:800px}
.founder__photo::after{content:"";position:absolute;inset:0;background:linear-gradient(180.13deg,rgba(239,230,174,0) 72.9%,#efe6ae 84.396%)}
.founder__photo>img{clip-path:inset(0)}
.founder__quote{position:absolute;z-index:2;left:0;right:0;width:100%;max-width:100%;padding:0 24px;margin:0 auto;box-sizing:border-box;text-align:center;top:660px;font-family:"Playball",cursive;font-size:35px;line-height:1.25;letter-spacing:-.5px;color:#6e1600;text-transform:capitalize;white-space:normal}
.founder__quote span{display:block}
.founder__copy{flex:1 1 560px;max-width:820px;display:flex;flex-direction:column;align-items:flex-start;gap:24px}

.faq{display:flex;align-items:center;justify-content:space-between;gap:40px;width:min(1600px,calc(100% - 2 * var(--g)))}
.faq__intro{flex:0 1 646px;display:flex;flex-direction:column;gap:12px}
.faq__list{flex:0 1 719px;display:flex;flex-direction:column;gap:32px;min-width:0}
.faq__item{padding:0 24px;border-radius:16px;transition:background-color .2s}
.faq__item summary{display:flex;align-items:center;gap:16px;list-style:none;cursor:pointer;font-weight:500;font-size:16px;line-height:1.5;letter-spacing:-.32px;color:var(--primary)}
.faq__item summary::-webkit-details-marker{display:none}
.faq__item summary img{order:-1;flex-shrink:0;width:24px;height:24px;padding:5px 8.125px;transition:transform .2s}
.faq__item p{margin-top:16px;font-size:16px;line-height:1.5;letter-spacing:-.32px;color:#5a6886}
.faq__item[open]{padding:20px 24px;box-shadow:inset 0 0 0 1px #fff;background:#f9fafb}
.faq__item[open] summary{justify-content:space-between}
.faq__item[open] summary img{order:1;transform:rotate(90deg)}

.contact{display:flex;align-items:center;justify-content:space-between;gap:48px}
.contact__copy{flex:0 1 629px;display:flex;flex-direction:column;gap:24px;padding-bottom:84px}
.contact__text{width:629px;max-width:100%}
.contact__text p+p{margin-top:24px}
.contact__list{display:flex;flex-direction:column;gap:20px}
.contact__list li{display:flex;align-items:center;gap:8px;font-weight:500;font-size:16px;line-height:1.5;letter-spacing:-.32px}
.contact__list img{width:20px;height:20px}
.contact__list a:hover{color:var(--red)}

/* ---------- footer ---------- */
.footer{display:flex;flex-direction:column;align-items:center;gap:24px;margin:var(--sec) var(--m) var(--m);padding:60px 48px 40px;border-radius:20px;background:linear-gradient(-13.106deg,rgba(255,247,216,.67) 7.735%,rgba(255,214,214,.55) 92.265%);box-shadow:0 1px 8px rgba(0,0,0,.05);color:var(--dark)}
.footer__top{display:flex;align-items:flex-start;justify-content:space-between;gap:40px;width:100%;padding:0 60px 0 80px;margin-bottom:9px}
.footer__brand{display:flex;flex-direction:column;gap:16px}
.footer__brand>img{width:233px;height:60px;object-fit:cover}
.footer__text{width:327px;max-width:100%;font-weight:500;font-size:18px;line-height:1.5;letter-spacing:-.36px}
.footer__text p+p{margin-top:0}
.footer__cols{display:flex;justify-content:space-between;gap:32px;width:865px}
.footer__col{display:flex;flex-direction:column;gap:0 !important}
.footer__col--hq{width:303px}
.footer__col--hq .footer__text{width:auto}
.footer__head{font-weight:500;font-size:28px;line-height:1.35;letter-spacing:-.56px;text-transform:uppercase}
.footer__links{display:flex;flex-direction:column;gap:8px !important;font-weight:500;font-size:18px;line-height:1.5;letter-spacing:-.36px;white-space:nowrap}
.footer__links a:hover{color:var(--red)}
.footer__links .footer__text{width:auto}
.footer__ext{display:inline-flex;align-items:center;gap:8px;color:var(--primary);text-decoration:underline;text-decoration-color:#29384e;text-decoration-thickness:10%;text-underline-position:from-font}
.footer__ext img{width:24px;height:24px}
.footer__big{font-weight:700;font-size:clamp(26px,5.365vw,103px);line-height:1.5;letter-spacing:-.02em;text-align:center;white-space:nowrap;background:linear-gradient(-3.056deg,rgba(255,222,93,.67) 7.735%,rgba(255,56,56,.55) 81.292%);-webkit-background-clip:text;background-clip:text;color:transparent}
.footer__line{width:100%;height:2px}
.footer__bottom{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:16px;font-weight:500;font-size:16px;line-height:1.5;letter-spacing:-.32px}
.footer__copy{display:flex;align-items:center;gap:8px}
.footer__copy img{width:16px;height:16px}
.footer__bottom img[width="6"]{width:6px;height:6px}
.footer__bottom a:hover{color:var(--red)}

.page-content{display:block;margin-inline:auto;padding:72px 0 0}
.page-content>*+*{margin-top:24px}
.page-content__body{max-width:760px}

/* ---------- responsive ---------- */
@media (max-width:1599px){
	.footer__top{padding:0}
	.footer__cols{width:auto;flex:0 1 865px}
}
@media (max-width:1679px){
	.steps .h4,.cards-3 .h4{white-space:normal}
	.cards-3{gap:40px}
	.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px}
	.step:nth-child(n){width:auto}
	.step:nth-child(n) .lead{width:auto;max-width:none}
}
@media (max-width:1439px){
	:root{--sec:100px}
	.split{gap:60px}
	.services{grid-template-columns:repeat(3,minmax(0,401px));column-gap:40px}
	.cards-3{gap:40px}
	.contact .h2--52{font-size:44px}
}
@media (max-width:1279px){
	:root{--sec:88px}
	.hero__stage{margin-top:32px}
	.hero__row{flex-direction:column;align-items:stretch;gap:48px;height:auto}
	.hero__copy{flex:none}
	.hero__art-wrap{flex:none;justify-content:center}
	.hero__art{width:707px}
	.hero__quote,.hero__curve{display:none}
	.split,.founder,.faq,.contact{flex-direction:column;align-items:stretch}
	.split__img{width:100%;flex:none}
	.split__copy,.founder__copy,.faq__intro,.faq__list,.contact__copy{flex:none;width:100%}
	.founder__visual-wrap{flex:none;display:flex;justify-content:center;overflow:hidden;width:100%}
	.contact__copy{padding-bottom:0}
	.form-card--left{width:100%;flex:none}
	.block__head{flex-wrap:wrap;align-items:flex-start}
	.services{grid-template-columns:repeat(2,minmax(0,1fr))}
	.steps{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:48px}
	.evidence figcaption{font-size:22px;left:24px;right:24px;bottom:24px}
	.footer__top{flex-direction:column;gap:48px}
	.footer__cols{flex:none;width:100%}
}
@media (max-width:1199px){
	.nav.is-open .nav__toggle .i-menu,.nav__toggle .i-close{display:none}
	.nav.is-open .nav__toggle .i-close{display:block}
	.nav__toggle{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:0;border-radius:8px;background:#fff;cursor:pointer}
	.nav__end{display:none}
	.nav__menu{position:absolute;top:calc(100% + 8px);left:0;right:0;display:none;flex-direction:column;align-items:stretch;gap:4px;height:auto;padding:12px;border-radius:16px;background:#fff;box-shadow:0 12px 32px rgba(16,27,44,.12)}
	.nav.is-open .nav__menu{display:flex}
	.nav__link{height:auto;border-bottom:0;border-radius:8px}
	.nav__link.is-active{background:#fff6e9}
	.nav__cta--mobile{display:flex;margin-top:8px}
}
@media (max-width:1023px){
	.cards-3{flex-direction:column}
	.evidence{flex-direction:column}
	.evidence__item{flex:none}
}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
@media (max-width:767px){
	.services .lead br{display:none}
	:root{--sec:72px}
	.hero{padding:20px 16px 48px;border-radius:24px}
	.nav{height:auto;padding:0}
	.nav__logo img{width:186px;height:48px}
	.hero__title{font-size:44px;letter-spacing:-1.32px}
	.hero__actions .btn{flex:1 1 100%}
	.h2,.h2--52,.contact .h2--52{font-size:34px;letter-spacing:-1px}
	.h2 br{display:none}
	.h4{font-size:22px}
	.lead br{display:none}
	.eyebrow p{white-space:normal}
	.form-card{padding:28px 16px 20px}
	.form-card--center{margin-top:-32px}
	.form-card__title{font-size:28px}
	.field-row{flex-direction:column;gap:20px}
	.split__img{border-radius:24px}
	.services,.steps{grid-template-columns:1fr}
	.evidence__item{border-radius:24px}
	.founder__quote{font-size:40px}
	.faq__item{padding:0 8px}
	.faq__item[open]{padding:16px}
	.footer{padding:48px 20px 32px;border-radius:20px}
	.footer__cols{flex-direction:column;gap:40px}
	.footer__head{font-size:24px}
	.footer__links{white-space:normal}
	.link-arrow span{white-space:normal}
	.footer__big{font-size:10vw;line-height:1.1;white-space:normal}
}

/* ---------- inner pages ---------- */
.eyebrow--710{width:710px}
.hero--page{height:724px;padding-bottom:0;overflow:hidden;background:linear-gradient(-12.8deg,rgba(255,247,216,.67) 7.735%,rgba(255,214,214,.55) 92.265%)}
.page-hero__mark{position:absolute;right:-114px;top:10.53px;width:825px;height:884px;overflow:hidden;opacity:.1;pointer-events:none}
.page-hero__mark img{position:absolute;left:0;top:-.06%;width:416.07%;height:100.12%;max-width:none}
.page-hero__content{position:absolute;z-index:1;left:clamp(16px,3.125vw,60px);top:calc(50% + 30px);transform:translateY(-50%);width:850px;max-width:calc(100% - 32px);display:flex;flex-direction:column;align-items:flex-start;gap:32px}
.page-hero__title{font-weight:700;font-size:52px;line-height:1.15;letter-spacing:-1.56px}
.page-hero__lead{max-width:629px}
.page-hero__spacer{height:52px}
.page-panel{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;margin:calc(-1 * var(--overlap,80px)) var(--m) 0;padding-top:60px;border-radius:120px 120px 0 0;background:#fff}
.page-panel--deep{--overlap:170px}
.page-panel .wrap{width:min(1720px,calc(100% - 2 * (var(--g) - var(--m))))}
.page-panel .founder{width:min(1720px,calc(100% - 2 * (var(--g) - var(--m))))}
.page-panel>:first-child{padding-bottom:24px}
.page-panel>*+*{margin-top:var(--sec)}

.founder--about .founder__photo::after{background:linear-gradient(180deg,rgba(239,230,174,0) 68.37%,#efe6ae 83.379%)}
.founder__caption{position:absolute;z-index:1;left:50%;top:690px;width:393px;transform:translateX(-50%);display:flex;flex-direction:column;gap:8px;color:#6e1600}
.founder__name{font-weight:700;font-size:30px;line-height:1.37;letter-spacing:-1.2px;text-transform:none}
.founder__role{display:flex;align-items:center;gap:8px;font-size:20px;line-height:1.37;letter-spacing:-.8px}
.founder__mark{position:relative;flex-shrink:0;width:33.825px;height:36px;overflow:hidden}
.founder__mark img{position:absolute;left:0;top:-.06%;width:413.3%;height:100.12%;max-width:none}
.founder__title{line-height:1.3}
.founder__text p+p{margin-top:24px}

.split2{display:flex;align-items:center;gap:80px}
.split2--reverse{flex-direction:row-reverse}
.split2__img{flex:0 1 800px;width:800px;min-width:0;aspect-ratio:800/597.656;border-radius:40px;object-fit:cover}
.split2__img--care{aspect-ratio:800/577.042;object-position:50% 93.5%}
.split2__img--600{aspect-ratio:800/600}
.split2__copy{flex:0 1 629px;display:flex;flex-direction:column;align-items:flex-start;gap:24px;min-width:0}
.split2__body{max-width:624px}
.split2__body p+p{margin-top:24px}
.split2__body .split2__quote{margin-top:16px;max-width:629px;font-style:italic;font-weight:500;font-size:20px;line-height:1.5;letter-spacing:-.4px;color:#57241b}
.intro-block{display:flex;flex-direction:column;gap:60px}
.intro-block .split2{width:100%}
.intro-block .split2__body{max-width:629px}

.svc-all{display:flex;flex-direction:column;align-items:center;gap:60px}
.svc-all__title{font-weight:700;font-size:52px;line-height:1.15;letter-spacing:-1.56px;text-align:center}
.svc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;row-gap:60px;width:100%}
.svc-card{display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:32px;padding:40px 28px;border-radius:24px;background:#fafafa}
.svc-card__body{display:flex;flex-direction:column;gap:12px;width:100%}
.svc-card .lead{min-height:96px}
.svc-card__top{display:flex;align-items:center;justify-content:space-between}
.svc-card__top img{width:32px;height:32px;margin:4px}

.block__btn{margin-top:8px}
.collab{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:67px;row-gap:40px}
.collab__item{gap:16px}

@media (max-width:1679px){
	.split2{gap:60px}
	.collab{column-gap:40px}
}
@media (max-width:1279px){
	.hero--page{height:auto;padding-bottom:140px}
	.page-hero__content{position:static;transform:none;width:auto;max-width:100%;margin-top:72px}
	.page-hero__spacer{display:none}
	.split2,.split2--reverse{flex-direction:column;align-items:stretch}
	.split2__img{width:100%;flex:none}
	.split2__copy{flex:none;width:100%}
	.collab{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1023px){
	.svc-grid{grid-template-columns:1fr;row-gap:28px}
}
@media (max-width:767px){
	.hero--page{padding-bottom:80px}
	.page-hero__content{margin-top:40px}
	.page-hero__title{font-size:36px;letter-spacing:-1px}
	.page-hero__title br{display:none}
	.page-panel{--overlap:40px;padding-top:40px;border-radius:32px 32px 0 0}
	.split2__img{border-radius:24px}
	.svc-all__title{font-size:36px}
	.svc-card{padding:28px 20px}
	.collab{grid-template-columns:1fr}
	.split2__quote br{display:none}
}

/* ---------- FAQ + privacy pages ---------- */
.page-panel--faq{--overlap:150.4px}
.page-panel--privacy{--overlap:190.4px}
.hero--privacy .page-hero__content{top:calc(50% - 39.1px)}
.hero--privacy .page-hero__mark{right:-32.26px;top:120px;width:671.08px;height:719.01px}
.faq-page{display:flex;align-items:flex-start;justify-content:space-between;gap:40px}
.faq-page__intro{flex:0 1 553px;min-width:0}
.faq-page__list{flex:0 1 931px}
.policy{display:flex;flex-direction:column;align-items:center;gap:60px}
.policy__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:60px 28px;width:100%}
.policy__card{display:flex;flex-direction:column;gap:16px;padding:40px 28px;border-radius:24px;background:#fafafa}
.policy__card--center{width:calc(50% - 14px)}
.policy__contact p+p{margin-top:12px}
.policy__contact a{color:var(--primary);text-decoration:underline;text-decoration-thickness:7.5%;text-underline-position:from-font}
.policy__contact a:hover{color:var(--red)}

/* ---------- success modal ---------- */
.success-modal{width:627px;max-width:calc(100% - 32px);max-height:calc(100dvh - 32px);padding:40px 24px 28px;border:0;border-radius:16px;background:#fff;color:var(--primary);box-shadow:0 2px 2px rgba(198,202,209,.1),0 2px 8px rgba(198,202,209,.22);overflow:auto}
.success-modal[open]{display:flex;flex-direction:column;align-items:center;gap:28px}
.success-modal::backdrop{background:rgba(16,27,44,.55)}
.success-modal__body{display:flex;flex-direction:column;gap:20px;width:100%}
.success-modal__top{display:flex;align-items:flex-start;justify-content:space-between;padding:10px 0}
.success-modal__top>img,.success-modal__close img{width:28px;height:28px}
.success-modal__check{position:relative;width:120px;height:120px;flex-shrink:0}
.success-modal__check img{position:absolute;left:-19px;top:-6px;width:158px;height:158px;max-width:none}
.success-modal__close{padding:0;border:0;background:none;cursor:pointer;line-height:0}
.success-modal__head{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.success-modal__title{font-weight:700;font-size:20px;line-height:1.4;letter-spacing:-.4px}
.success-modal__next{display:flex;flex-direction:column;gap:20px;padding:24px 20px;border-left:3px solid #eb0d1b;border-radius:8px;background:#f8f9fa}
.success-modal__next-title{font-weight:600;font-size:18px;line-height:1.5;letter-spacing:-.36px;color:#000}
.success-modal__next ol{display:flex;flex-direction:column;gap:24px;margin:0;padding-left:24px;font-weight:500;font-size:16px;line-height:1.5;letter-spacing:-.32px}
.success-modal__note strong{font-weight:600;color:var(--primary)}
.success-modal__actions{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}
.success-modal__home{display:flex;align-items:center;justify-content:center;width:100%;height:40px;padding:16px;border-radius:6px;background:#eb0d1b;font-family:"Sansation","Mona Sans",sans-serif;font-weight:700;font-size:14px;line-height:1.6;color:#fff;transition:background-color .2s}
.success-modal__home:hover{background:#d40a18}
.success-modal__call{display:flex;align-items:center;gap:8px;font-size:16px;line-height:1.5;letter-spacing:-.32px;color:var(--subtle)}
.success-modal__call img{width:24px;height:24px}

/* ---------- custom dropdown ---------- */
.select.is-enhanced select{position:absolute;inset:0;opacity:0;pointer-events:none}
.select::after{z-index:1}
.select__btn{display:block;padding-right:52px;text-align:left;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.select.is-open .select__btn{padding-left:14px;border:2px solid rgba(223,0,15,.44);opacity:.8}
.select.is-open::after{transform:rotate(-90deg)}
.select__list{position:absolute;z-index:20;left:0;right:0;top:calc(100% + 8px);display:flex;flex-direction:column;gap:10px;max-height:min(460px,60vh);margin:0;padding:10px 16px;overflow:auto;list-style:none;border:1px solid #c7c7c7;border-radius:8px;background:#fff}
.select__list[hidden]{display:none}
.select__list li{display:flex;align-items:center;flex-shrink:0;height:40px;font-family:"General Sans","Mona Sans",sans-serif;font-size:16px;line-height:1.5;color:var(--primary);cursor:pointer}
.select__list li:hover,.select__list li:focus{outline:none;color:var(--red)}
.select__list li[aria-selected="true"]{font-weight:500}

@media (max-width:1279px){
	.faq-page{flex-direction:column;align-items:stretch}
	.faq-page__intro,.faq-page__list{flex:none;width:100%}
}
@media (max-width:767px){
	.policy__grid{grid-template-columns:1fr;gap:20px}
	.policy__card{padding:28px 20px}
	.policy__card--center{width:100%}
	.policy{gap:20px}
	.success-modal{padding:28px 16px 20px}
	.success-modal__head .lead br{display:none}
}
.success-modal__title:focus{outline:none}
@media (max-width:1279px){
	.page-panel,.page-panel--deep,.page-panel--faq,.page-panel--privacy{--overlap:80px}
}
@media (max-width:767px){
	.page-panel,.page-panel--deep,.page-panel--faq,.page-panel--privacy{--overlap:40px}
	.footer__bottom{flex-direction:column;gap:8px;text-align:center}
	.footer__bottom img[width="6"]{display:none}
}

/* --- Client Custom Revisions (Zev Guttman / DRC) --- */
.hero__actions--stacked {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}
.btn--orange {
	background: #E86214;
	color: #ffffff;
	border: 1px solid #E86214;
	padding: 16px 28px;
	font-weight: 700;
	border-radius: 8px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: background 0.2s ease, transform 0.2s ease;
}
.btn--orange:hover {
	background: #cf530d;
	color: #ffffff;
	transform: translateY(-1px);
}
.steps-transition {
	text-align: center;
	margin: 40px auto 28px;
	max-width: 800px;
}
.steps-transition__title {
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #E86214;
	margin-bottom: 6px;
}
.steps-transition__sub {
	font-size: 20px;
	font-weight: 700;
	color: #0E1626;
	letter-spacing: 0.01em;
}
/* Legible script font for founder quote */
.founder__quote,
.founder__quote--script {
	position: absolute !important;
	left: 0 !important;
	right: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto !important;
	padding: 0 20px !important;
	text-align: center !important;
	white-space: normal !important;
	box-sizing: border-box !important;
	letter-spacing: 0px !important;
	text-transform: none !important;
	font-style: italic !important;
	font-size: 35px !important;
	line-height: 1.25 !important;
	top: 660px !important;
}
.founder__quote span,
.founder__quote--script span {
	display: block !important;
}
.founder__lead-story p {
	margin-bottom: 12px;
}
/* Evidence collage secondary row */
.evidence--secondary .evidence__item {
	aspect-ratio: 557/340;
}
.evidence--secondary figcaption {
	font-size: 20px !important;
	bottom: 22px !important;
	left: 22px !important;
	right: 22px !important;
	line-height: 1.3 !important;
}
@media (max-width: 767px) {
	.evidence--secondary figcaption {
		font-size: 17px !important;
		bottom: 16px !important;
		left: 16px !important;
	}
}

/* ---------- Mobile Hero Quote ---------- */
.hero__quote-mobile {
	display: none;
}
@media (max-width: 1279px) {
	.hero__quote-mobile {
		display: block !important;
		width: 100% !important;
		margin-top: 18px !important;
		margin-bottom: 6px !important;
		padding: 16px 20px !important;
		border-radius: 14px !important;
		background: rgba(255, 255, 255, 0.8) !important;
		backdrop-filter: blur(8px) !important;
		border-left: 4px solid var(--red) !important;
		box-shadow: 0 4px 16px rgba(110, 22, 0, 0.06) !important;
		box-sizing: border-box !important;
	}
	.hero__quote-mobile .hero__quote-text {
		font-family: "Playball", cursive !important;
		font-size: clamp(15px, 4vw, 18px) !important;
		line-height: 1.35 !important;
		color: #6e1600 !important;
		text-align: center !important;
		margin: 0 !important;
	}
	.hero__quote-mobile .hero__quote-text span {
		display: block;
		white-space: nowrap;
	}
	.hero__quote--desktop,
	.hero__curve {
		display: none !important;
	}
}

/* ---------- Mobile Buttons & Founder Quote Responsiveness ---------- */
@media (max-width: 767px) {
	.hero__actions,
	.hero__actions--stacked {
		width: 100% !important;
		box-sizing: border-box !important;
	}
	.hero__actions .btn,
	.hero__actions--stacked .btn {
		display: flex !important;
		width: 100% !important;
		max-width: 100% !important;
		height: auto !important;
		min-height: 48px !important;
		padding: 12px 14px !important;
		white-space: normal !important;
		word-break: normal !important;
		text-align: center !important;
		font-size: 13px !important;
		line-height: 1.35 !important;
		box-sizing: border-box !important;
	}
	.founder__quote,
	.founder__quote--script {
		position: absolute !important;
		left: 0 !important;
		right: 0 !important;
		width: 100% !important;
		max-width: 100% !important;
		margin: 0 auto !important;
		padding: 0 16px !important;
		text-align: center !important;
		white-space: normal !important;
		font-size: 36px !important;
		line-height: 1.22 !important;
		letter-spacing: 0 !important;
		box-sizing: border-box !important;
		top: 660px !important;
	}
	.founder__quote span,
	.founder__quote--script span {
		display: block !important;
	}
}

/* ---------- New 4-Column Footer Layout & Uniform Typography ---------- */
.footer {
	background: linear-gradient(-13.106deg, rgba(255, 247, 216, 0.67) 7.735%, rgba(255, 214, 214, 0.55) 92.265%);
	border-radius: 20px;
	padding: 56px clamp(20px, 4vw, 64px) 36px;
	box-sizing: border-box;
}
.footer__grid {
	display: grid;
	grid-template-columns: 1.4fr 0.85fr 1.3fr 0.9fr;
	gap: clamp(20px, 3vw, 40px);
	align-items: start;
	max-width: 1360px;
	width: 100%;
	margin: 0 auto 36px auto;
	box-sizing: border-box;
}
.footer__col {
	display: flex;
	flex-direction: column;
	gap: 0 !important;
	min-width: 0;
}
.footer__col--brand .footer__logo-link {
	display: inline-block;
	margin-bottom: 12px !important;
}
.footer__col--brand img {
	width: 210px;
	height: auto;
	max-width: 100%;
	object-fit: contain;
}
.footer__head {
	font-family: inherit;
	font-size: 19px;
	font-weight: 700;
	line-height: 1.3;
	color: var(--primary);
	margin: 0 0 12px 0 !important;
	letter-spacing: -0.3px;
	text-transform: none;
}
.footer__text {
	display: flex;
	flex-direction: column;
	font-size: 14px;
	line-height: 1.55;
	color: #475569;
}
.footer__tagline {
	font-size: 14.5px;
	font-weight: 600;
	line-height: 1.45;
	color: var(--primary);
	margin: 0 0 10px 0 !important;
}
.footer__para {
	font-size: 14px;
	line-height: 1.55;
	color: #475569;
	margin: 0 0 9px 0 !important;
}
.footer__text p + p {
	margin-top: 0 !important;
	margin-bottom: 9px !important;
}
.footer__col--locations .footer__para {
	margin: 0 0 12px 0 !important;
}
.footer__para strong {
	color: var(--primary);
	font-weight: 600;
}
.footer__links {
	display: flex;
	flex-direction: column;
	gap: 8px !important;
	list-style: none;
	padding: 0;
	margin: 0;
}
.footer__links li {
	margin: 0;
	padding: 0;
}
.footer__links a {
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
	color: #475569;
	text-decoration: none;
	transition: color .2s;
}
.footer__links a:hover {
	color: var(--red);
}
.footer__ext {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
	color: #475569;
	text-decoration: none;
}
.footer__ext:hover {
	color: var(--red);
}
.footer__ext img {
	width: 16px;
	height: 16px;
	transition: transform .2s;
}
.footer__ext:hover img {
	transform: translate(2px, -2px);
}

/* ---------- Contact Us Page Info Cards ---------- */
.contact-cards {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 24px;
	width: min(1200px, calc(100% - 2 * var(--g)));
	margin: 0 auto 40px auto;
	box-sizing: border-box;
}
.contact-card {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 28px 24px;
	border-radius: 16px;
	background: #fff;
	border: 1px solid #e2e8f0;
	box-shadow: 0 2px 8px rgba(16, 27, 44, 0.04);
	transition: transform 0.2s, box-shadow 0.2s;
	box-sizing: border-box;
}
.contact-card:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(16, 27, 44, 0.08);
}
.contact-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 12px;
	background: rgba(236, 13, 28, 0.08);
	color: var(--red);
}
.contact-card__icon img {
	width: 24px;
	height: 24px;
}
.contact-card__title {
	font-size: 18px;
	font-weight: 700;
	color: var(--primary);
	margin: 0;
}
.contact-card__val {
	font-size: 17px;
	font-weight: 600;
	color: var(--primary);
	text-decoration: none;
	transition: color 0.2s;
}
.contact-card__val:hover {
	color: var(--red);
}
.contact-card__desc {
	font-size: 14px;
	line-height: 1.55;
	color: #64748b;
	margin: 0;
}
@media (max-width: 900px) {
	.contact-cards {
		grid-template-columns: 1fr;
		gap: 16px;
	}
}

@media (max-width: 1023px) {
	.footer__grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 36px;
	}
}
@media (max-width: 767px) {
	.footer {
		padding: 40px 20px 28px;
		border-radius: 20px;
	}
	.footer__grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.footer__col--brand img {
		width: 180px;
	}
}

/* Header Yellow CTA Button Enhancement */
/* Header Red CTA Button (Comment #97) */
.nav__cta--red {
	background: var(--red) !important;
	color: #fff !important;
	font-weight: 700 !important;
	font-size: 13.5px !important;
	letter-spacing: 0.04em !important;
	padding: 12px 22px !important;
	height: 46px !important;
	border-radius: 8px !important;
	box-shadow: 0 4px 14px rgba(236, 13, 28, 0.35) !important;
	transition: background-color .2s ease, transform .15s ease, box-shadow .2s ease !important;
	text-decoration: none !important;
}
.nav__cta--red:hover {
	background: #d40a18 !important;
	color: #fff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 20px rgba(236, 13, 28, 0.5) !important;
}
.nav__cta--yellow {
	background: #fad400 !important;
	color: #1a202c !important;
	font-weight: 700 !important;
	font-size: 14px !important;
	letter-spacing: 0.05em !important;
	padding: 12px 26px !important;
	height: 46px !important;
	border-radius: 8px !important;
	box-shadow: 0 4px 12px rgba(250, 212, 0, 0.25) !important;
	transition: background-color .2s ease, transform .15s ease, box-shadow .2s ease !important;
}
.nav__cta--yellow:hover {
	background: #ffe033 !important;
	color: #101828 !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 18px rgba(250, 212, 0, 0.4) !important;
}

/* ---------- Body copy: real paragraphs instead of <br><br> ---------- */
:where(.lead) > p + p{margin-top:12px}
.block__cta{display:flex;justify-content:center}
.page-panel>.page-cta{display:flex;justify-content:center;margin:48px auto}
/* .block already spaces children 60px apart; the second gallery row sits 24px under the first, same as the columns. */
.block>.evidence--secondary{margin-top:-36px}

/* ---------- Card rows: tops aligned, service links share a baseline ---------- */
.services{align-items:stretch}
.service:first-child{gap:12px}
.service>.link-arrow{margin-top:auto;padding-top:8px}
@media (min-width:1280px){
	/* Intro stays beside the long FAQ list while it scrolls. */
	.faq-page__intro{position:sticky;top:32px}
}
@media (max-width:767px){
	/* Long CTA labels wrap inside the button instead of running off screen. */
	.btn{height:auto;min-height:52px;white-space:normal;text-align:center;line-height:1.35}
}

/* ---------- FAQ: even rhythm, no jump on open ---------- */
.faq__list{gap:8px}
.faq__item,.faq__item[open]{padding:16px 20px;box-shadow:none;transition:background-color .3s ease}
.faq__item[open]{background:#f9fafb}
.faq__item summary,.faq__item[open] summary{justify-content:flex-start}
.faq__item summary img,.faq__item[open] summary img{order:0}
.faq__item[open] summary img{transform:rotate(90deg)}
.faq__item summary span{transition:color .2s}
.faq__item summary:hover span{color:var(--red)}
.faq__answer{padding:12px 0 4px 40px;font-size:16px;line-height:1.5;letter-spacing:-.32px;color:#5a6886}
.faq__answer p{margin:0}
.faq__answer p+p{margin-top:12px}
@media (max-width:767px){
	.faq__item,.faq__item[open]{padding:14px 12px}
	.faq__item summary{align-items:flex-start}
	.faq__answer{padding-top:10px}
}

/* ---------- Motion ---------- */
@keyframes drc-fade-up{from{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:none}}
@keyframes drc-fade{from{opacity:0}to{opacity:1}}
@keyframes drc-float{0%,100%{translate:0 0}50%{translate:0 -10px}}
@keyframes drc-spin{to{rotate:360deg}}

.btn{transition:filter .2s,background-color .2s,transform .25s cubic-bezier(.22,1,.36,1),box-shadow .25s}
.btn__arrow{transition:transform .25s cubic-bezier(.22,1,.36,1)}
.card .badge,.card .icon-box{transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
.evidence__item img{transition:transform 1s cubic-bezier(.22,1,.36,1)}
@media (hover:hover){
	.btn:hover{transform:translateY(-2px)}
	.btn--red:hover{box-shadow:inset 0 2px 1px rgba(0,0,0,.1),inset 0 -4px 2.5px rgba(0,0,0,.1),0 10px 22px -8px rgba(236,13,28,.55)}
	.btn--orange:hover{box-shadow:0 10px 22px -8px rgba(232,98,20,.55)}
	.btn:hover .btn__arrow{transform:translateX(3px) rotate(90deg)}
	.card:hover .badge,.card:hover .icon-box{transform:translateY(-4px) rotate(-4deg)}
	.evidence__item:hover img{transform:scale(1.05)}
}

/* Scroll reveal: main.js adds .drc-reveal only to elements below the fold, so nothing flashes on load. */
.drc-reveal{opacity:0;transform:translate3d(0,32px,0)}
.drc-reveal--img{transform:scale(.94);clip-path:inset(6% 6% 6% 6% round 40px)}
.drc-reveal.is-revealed{opacity:1;transform:none;clip-path:inset(0 round 0);transition:opacity .9s cubic-bezier(.22,1,.36,1) var(--d,0ms),transform .9s cubic-bezier(.22,1,.36,1) var(--d,0ms),clip-path 1.1s cubic-bezier(.22,1,.36,1) var(--d,0ms)}

@media (prefers-reduced-motion:no-preference){
	/* Hero entrance runs in CSS, so it never waits for JS. */
	.hero__text>*,.hero__actions,.hero__quote-mobile,.page-hero__content>*{animation:drc-fade-up .9s cubic-bezier(.22,1,.36,1) both}
	.hero__text>:nth-child(2),.page-hero__content>:nth-child(2){animation-delay:.1s}
	.hero__text>:nth-child(3),.page-hero__content>:nth-child(3){animation-delay:.2s}
	.hero__actions,.page-hero__content>:nth-child(4){animation-delay:.3s}
	.hero__quote-mobile{animation-delay:.4s}
	.hero__art{animation:drc-fade 1.2s .25s ease-out both}
	.hero__exp{animation:drc-float 6s ease-in-out 1.4s infinite}
	.hero__card{animation:drc-float 7s ease-in-out 2s infinite}
	.hero__waves-yellow{animation:drc-spin 60s linear infinite,drc-float 6.5s ease-in-out 1s infinite}
	.hero__waves-red{animation:drc-spin 80s linear infinite reverse,drc-float 8s ease-in-out 2.5s infinite}

	.photo-disclaimer{font-size:12px;color:#64748b;margin-top:8px;font-style:italic;line-height:1.4}

	/* FAQ opens and closes smoothly where the browser supports animating to auto height. */
	@supports (interpolate-size:allow-keywords){
		.faq__item{interpolate-size:allow-keywords}
		.faq__item::details-content{block-size:0;overflow:clip;transition:block-size .45s cubic-bezier(.22,1,.36,1),content-visibility .45s allow-discrete}
		.faq__item[open]::details-content{block-size:auto}
	}
	.faq__item[open] .faq__answer{animation:drc-fade .5s .08s both}
}
@media (prefers-reduced-motion:reduce){
	html{scroll-behavior:auto}
}




/* ---------- Contact Us Hero Circular Jump Button ---------- */
html {
	scroll-behavior: smooth;
}
.hero-circle-btn {
	position: absolute;
	z-index: 5;
	right: clamp(60px, 18vw, 300px);
	top: calc(50% + 24px);
	transform: translateY(-50%);
	width: 220px;
	height: 220px;
	border-radius: 50%;
	background: linear-gradient(135deg, #ff2a2a 0%, #d80006 100%);
	box-shadow: 0 14px 35px rgba(216, 0, 6, 0.38), inset 0 2px 4px rgba(255, 255, 255, 0.3);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: 24px;
	box-sizing: border-box;
	color: #fff !important;
	text-decoration: none;
	cursor: pointer;
	transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.25s ease;
}
.hero-circle-btn:hover {
	transform: translateY(calc(-50% - 4px)) scale(1.05);
	box-shadow: 0 20px 42px rgba(216, 0, 6, 0.48), inset 0 2px 4px rgba(255, 255, 255, 0.4);
}
.hero-circle-btn__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin-bottom: 8px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.22);
	animation: drc-bounce-down 1.8s ease-in-out infinite;
}
.hero-circle-btn__icon svg {
	width: 22px;
	height: 22px;
	stroke: #fff;
}
.hero-circle-btn__text {
	font-weight: 700;
	font-size: 15px;
	line-height: 1.25;
	letter-spacing: -0.2px;
	text-transform: uppercase;
	color: #fff;
}
@keyframes drc-bounce-down {
	0%, 100% { transform: translateY(0); }
	50% { transform: translateY(6px); }
}

@media (max-width: 1279px) {
	.hero-circle-btn {
		position: static;
		transform: none;
		margin-top: 24px;
		width: auto;
		height: auto;
		min-height: 56px;
		border-radius: 999px;
		flex-direction: row;
		gap: 12px;
		padding: 14px 32px;
	}
	.hero-circle-btn:hover {
		transform: translateY(-2px);
	}
	.hero-circle-btn__icon {
		margin-bottom: 0;
		width: 32px;
		height: 32px;
	}
}

/* Wide Button Support (Contractors Bottom CTA) */
.page-cta .btn--red {
	padding: 16px 40px !important;
	font-size: 15px !important;
	letter-spacing: 0.04em !important;
	min-width: 340px;
	white-space: nowrap;
}
@media (max-width: 767px) {
	.page-cta .btn--red,
	.block__left--full .btn {
		height: auto !important;
		width: 100% !important;
		min-width: 0 !important;
		white-space: normal !important;
		padding: 14px 20px !important;
		text-align: center !important;
		line-height: 1.35 !important;
	}
}

/* Footer Social Icons Row */
.footer__socials {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-top: 14px;
}
.footer__social-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 38px;
	height: 38px;
	border-radius: 8px;
	background: rgba(26, 32, 44, 0.06);
	border: 1px solid rgba(26, 32, 44, 0.12);
	color: #475569;
	transition: all .2s ease;
}
.footer__social-btn svg {
	width: 19px;
	height: 19px;
	transition: transform .2s ease;
}
.footer__social-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12);
}
.footer__social-btn--fb:hover {
	background: #1877f2;
	border-color: #1877f2;
	color: #fff;
}
.footer__social-btn--ig:hover {
	background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%);
	border-color: #d6249f;
	color: #fff;
}
.footer__social-btn--li:hover {
	background: #0a66c2;
	border-color: #0a66c2;
	color: #fff;
}
