:root{--navy:#072756;--deep:#061c3d;--blue:#067acc;--ice:#46c5ff;--red:#ce1527;--ink:#102b4d;--muted:#55657a;--line:#dce4ed;--light:#f3f7fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.wrap{max-width:1220px;margin:auto;padding:0 36px}.topbar{background:var(--navy);color:#fff;font-size:14px}.topbar .wrap{display:flex;justify-content:space-between;padding-top:9px;padding-bottom:9px}header{background:#fff;border-bottom:1px solid var(--line)}.header{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:103px}.brand{display:flex;align-items:center;gap:12px;line-height:1.1;font-size:30px;font-weight:900;letter-spacing:-1px}.brand img{width:78px;height:78px;object-fit:contain}.brand small{display:block;font-size:12px;letter-spacing:1.2px;margin-top:8px}.amp{color:var(--red)}nav{display:flex;gap:32px;font-size:15px;font-weight:600}nav a:hover,.text-link:hover{color:var(--blue)}.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid transparent;border-radius:5px;padding:15px 25px;background:var(--red);color:white;font-weight:700;cursor:pointer;transition:background .2s,transform .2s}.button:hover{background:#ad0f21;transform:translateY(-2px)}.small{font-size:14px;padding:12px 20px}.outline{background:transparent;border-color:#7192b5}.outline:hover{background:#143c69}.hero{background:var(--deep);color:#fff;padding:58px 0 63px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:58px;align-items:center}.eyebrow{font-weight:700;font-size:12px;letter-spacing:1.8px;margin:0 0 20px}.hero .eyebrow{color:#a9dbff;display:flex;align-items:center;gap:12px}.eyebrow span{height:2px;width:28px;background:var(--red)}h1{font-size:clamp(45px,5.6vw,74px);line-height:1.05;letter-spacing:-3px;margin:0 0 25px;font-weight:800}h1 em{font-style:normal;color:var(--ice)}.lead{color:#c3cfdf;max-width:510px;font-size:18px;line-height:1.75;margin-bottom:30px}.actions{display:flex;gap:12px;flex-wrap:wrap}.hero-notes{display:flex;gap:24px;margin-top:35px;font-size:13px;color:#bdccdf}.hero-notes span:before{content:'✓';color:var(--ice);margin-right:7px}.hero-visual{height:530px;position:relative;border-radius:8px;overflow:hidden;background:#274464}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:center 50%}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,rgba(0,17,38,.92))}.photo-label{position:absolute;bottom:28px;left:30px;z-index:1}.photo-label span{font-size:11px;letter-spacing:1.7px;color:#b3ddff}.photo-label strong{display:block;font-size:26px;line-height:1.2;margin:12px 0 16px}.photo-label a{font-size:14px;border-bottom:1px solid #55bdff;padding-bottom:4px}.photo-tag{position:absolute;top:20px;right:20px;z-index:1;background:white;color:var(--navy);padding:8px 12px;font-size:11px;letter-spacing:1px;font-weight:800}.service-strip{background:var(--blue);color:white}.service-strip .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:21px;padding-bottom:21px;font-size:13px;font-weight:bold;letter-spacing:1.5px}.service-strip i{width:4px;height:4px;border-radius:50%;background:#8fd6ff}.section{padding-top:95px;padding-bottom:95px}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:45px}.blue{color:var(--blue)}h2{font-size:clamp(34px,4vw,50px);letter-spacing:-1.8px;line-height:1.1;margin:0}h3{font-size:22px;line-height:1.25;letter-spacing:-.5px;margin:16px 0}.section-head>p{max-width:380px;color:var(--muted);margin:0}.services{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.services article{padding:30px 22px 30px 0;display:flex;flex-direction:column}.services article+article{border-left:1px solid var(--line);padding-left:22px}.service-number{font-size:11px;color:var(--blue);font-weight:bold;letter-spacing:1px}.services p{font-size:15px;color:var(--muted);margin:0 0 23px}.services a{font-size:14px;font-weight:bold;color:var(--navy);margin-top:auto;text-decoration:underline;text-underline-offset:5px}.commercial{display:flex;align-items:center;gap:24px;background:var(--light);padding:22px 25px;margin-top:24px;border-left:3px solid var(--red)}.mini-label{font-size:11px;letter-spacing:1px;font-weight:bold;white-space:nowrap}.commercial p{margin:0;font-size:14px}.commercial a{margin-left:auto;font-size:14px;font-weight:bold;color:var(--blue);text-decoration:underline}.work{background:var(--light)}.gallery{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:20px}.project{border:0;padding:0;background:var(--navy);border-radius:6px;position:relative;height:460px;overflow:hidden;text-align:left;color:white;cursor:pointer}.project img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.project:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 35%,rgba(0,17,38,.9))}.project:hover img{transform:scale(1.04)}.project span{position:absolute;z-index:1;bottom:26px;left:24px;right:20px}.project small{font-size:10px;letter-spacing:1.5px;color:#b2dfff}.project strong{font-size:23px;line-height:1.15;display:block;margin:10px 0 18px}.project b{font-size:12px;font-weight:normal}.about{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-heading>p:not(.eyebrow){color:var(--muted);margin:25px 0}.text-link{border:0;padding:0;background:transparent;color:var(--blue);font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:5px}.principles article{display:flex;gap:20px;padding:25px 0;border-bottom:1px solid var(--line)}.principles article:first-child{padding-top:0}.principles article>span{font-size:14px;color:var(--red);font-weight:bold;padding-top:4px}.principles h3{margin:0 0 10px}.principles p{margin:0;color:var(--muted);font-size:15px}.area{padding:65px 0;background:var(--navy);color:#fff}.area .wrap{position:relative}.area .eyebrow{color:#85c9f9}.area h2{font-size:43px}.towns{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 20px}.towns span{border:1px solid #52749b;border-radius:4px;padding:8px 18px;font-size:14px}.area p:last-child{color:#b8c9dc;font-size:14px}.quote{display:grid;grid-template-columns:1fr 1fr;gap:100px}.quote>div>p:not(.eyebrow){color:var(--muted);max-width:370px;margin:24px 0}.phone{display:block;font-size:29px;font-weight:800;margin-top:32px}.quote .contact-note{font-size:14px!important;margin-top:6px!important}form{background:var(--light);padding:30px;border:1px solid var(--line);border-radius:7px}form h3{margin:0 0 23px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:14px;font-weight:600;margin-bottom:17px}input,select,textarea{display:block;width:100%;padding:12px;margin-top:7px;border:1px solid #c4d0dd;border-radius:4px;background:white;color:var(--ink);font-size:16px;min-width:0}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid var(--blue);outline-offset:1px}form .button{width:100%}.form-note{font-size:12px;color:var(--muted);line-height:1.5;margin:14px 0 0}#form-result{font-size:14px}#form-result textarea{font-size:14px}#copy-status{font-size:12px;margin-left:12px}footer{background:var(--deep);color:#fff;padding:44px 0}.footer{display:flex;justify-content:space-between;align-items:center;gap:30px}.footer strong{font-size:36px;line-height:1}.footer strong span{color:#ed3440}.footer p{font-size:13px;color:#a6bad1}.footer>p{font-size:12px}.footer a{font-size:14px}dialog{padding:18px;background:var(--deep);border:0;border-radius:8px;max-width:min(92vw,900px);max-height:92vh;color:white}dialog::backdrop{background:rgba(0,13,31,.85)}dialog img{display:block;max-height:75vh;max-width:100%;margin:auto;object-fit:contain}dialog p{margin:12px 0 0;font-size:14px}.close{position:absolute;right:23px;top:23px;font-size:25px;border:0;border-radius:50%;background:white;width:38px;height:38px;cursor:pointer;color:var(--navy)}@media(max-width:1000px){.hero-grid{gap:30px}.hero-visual{height:480px}h1{letter-spacing:-2px}.services{grid-template-columns:repeat(2,1fr)}.services article:nth-child(3){border-left:0;padding-left:0;border-top:1px solid var(--line)}.services article:nth-child(4){border-top:1px solid var(--line)}.about,.quote{gap:45px}nav{gap:18px}.commercial{flex-wrap:wrap}.commercial a{margin-left:0}.gallery{gap:12px}.project{height:400px}.project strong{font-size:20px}.footer{flex-wrap:wrap}}@media(max-width:700px){.wrap{padding-left:22px;padding-right:22px}.topbar .wrap{justify-content:center}.topbar span{display:none}.header{min-height:87px;gap:10px}.brand{font-size:24px;gap:7px}.brand img{width:54px;height:54px}.brand small{font-size:9px;letter-spacing:.6px}.header nav{display:none}.header .small{font-size:12px;padding:11px 13px}.hero{padding:40px 0}.hero-grid{grid-template-columns:1fr;gap:32px}.hero .eyebrow{font-size:10px;letter-spacing:1.3px}h1{font-size:52px;letter-spacing:-2px}.lead{font-size:16px}.actions{gap:10px}.actions .button{padding:13px 18px;font-size:14px}.hero-notes{gap:15px;font-size:11px;margin-top:25px}.hero-visual{height:440px}.service-strip .wrap{flex-wrap:wrap;gap:12px;justify-content:center;font-size:10px;letter-spacing:1px}.service-strip i{display:none}.section{padding-top:60px;padding-bottom:60px}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:22px;font-size:15px}h2{font-size:38px}.services article{padding-right:15px}.services article+article{padding-left:15px}.services article:nth-child(3){padding-left:0}h3{font-size:20px}.services p{font-size:14px}.services a{font-size:13px}.commercial{gap:10px;padding:18px}.gallery{grid-template-columns:1fr 1fr;gap:12px}.project.large{grid-column:1/-1;height:430px}.project{height:330px}.project span{left:15px;bottom:18px}.project strong{font-size:18px}.project small{font-size:9px}.about,.quote{grid-template-columns:1fr;gap:38px}.area{padding:48px 0}.area h2{font-size:36px}.towns{gap:8px}.towns span{font-size:12px;padding:7px 12px}form{padding:23px}.fields{grid-template-columns:1fr}.footer{align-items:flex-start;gap:24px}.footer>p{width:100%}.eyebrow{font-size:11px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Expanded services and project portfolio */
.services{grid-template-columns:repeat(3,1fr)}.services article{padding:30px 24px}.services article+article{padding-left:24px}.services article:nth-child(3n+1){border-left:0;padding-left:0}.services article:nth-child(n+4){border-top:1px solid var(--line)}.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery .large{grid-column:auto}.project{height:420px}.spanish{font-size:13px;color:#a8e2ff}.finance-intro{max-width:400px;color:var(--muted)}.finance-intro p:first-child{margin-top:0}.finance-intro .text-link{font-size:15px}.spanish-copy{font-size:14px;margin-top:20px}.finance-posters{display:grid;grid-template-columns:1fr 1fr;gap:30px;max-width:850px;margin:auto}.poster{padding:0;border:1px solid var(--line);background:var(--light);border-radius:7px;overflow:hidden;cursor:pointer;text-align:left}.poster img{display:block;width:100%;height:540px;object-fit:contain;background:var(--navy)}.poster span{display:block;padding:15px 20px;font-size:14px;font-weight:700;color:var(--navy)}.quote-spanish{color:var(--blue);font-size:14px;margin:-10px 0 22px}.header nav{gap:23px}.topbar .wrap{gap:15px}@media(max-width:1000px){.services{grid-template-columns:repeat(2,minmax(0,1fr))}.services article:nth-child(3){border-left:0}.services article:nth-child(2n){border-left:1px solid var(--line);padding-left:24px}.services article:nth-child(2n+1){border-left:0;padding-left:0}.services article:nth-child(n+3){border-top:1px solid var(--line)}.project{height:370px}.header nav{gap:14px}}@media(max-width:700px){.topbar .wrap{justify-content:space-between;font-size:12px}.spanish{font-size:12px}.services article{padding-right:16px}.services article:nth-child(2n){padding-left:16px}.gallery{grid-template-columns:1fr 1fr}.gallery .large{grid-column:1/-1;height:420px}.project{height:330px}.finance-posters{gap:15px}.poster img{height:auto}.poster span{font-size:12px;padding:12px}.quote-spanish{margin-top:-10px}}@media(max-width:400px){.topbar .wrap{padding-left:12px;padding-right:12px;font-size:11px}.spanish{font-size:11px}.header .small{font-size:11px;padding:10px}.brand small{font-size:8px}}

.hero-visual>img{object-position:center 58%}.before-after{margin-bottom:36px;background:#fff;padding:24px;border:1px solid var(--line);border-radius:8px}.comparison-heading{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:22px}.comparison-heading .eyebrow{margin-bottom:8px}.comparison-heading h3{font-size:26px;margin:0}.comparison-heading>p{max-width:270px;color:var(--muted);font-size:14px}.comparison-photos{display:grid;grid-template-columns:1fr 1fr;gap:16px}.comparison-photos button{position:relative;padding:0;border:0;border-radius:5px;overflow:hidden;cursor:pointer;background:var(--navy);height:470px;text-align:left}.comparison-photos img{display:block;width:100%;height:100%;object-fit:cover}.comparison-label{position:absolute;top:16px;left:16px;background:#fff;color:var(--navy);padding:7px 15px;font-size:13px;font-weight:800;letter-spacing:1px;box-shadow:0 2px 9px #0003}.comparison-label.after{background:var(--blue);color:#fff}.comparison-open{position:absolute;bottom:14px;left:16px;background:var(--deep);color:white;padding:6px 12px;font-size:12px;border-radius:3px}@media(max-width:700px){.before-after{padding:16px}.comparison-heading{display:block}.comparison-heading h3{font-size:23px}.comparison-heading>p{margin:12px 0 0;max-width:none}.comparison-photos{gap:10px}.comparison-photos button{height:300px}.comparison-label{top:10px;left:10px;font-size:11px;padding:5px 9px}.comparison-open{left:10px;bottom:10px;font-size:10px;padding:5px 8px}}

.hero-visual.hero-brand{height:auto;aspect-ratio:4/3;overflow:visible;border-radius:8px;background:var(--deep)}.hero-brand>img{width:100%;height:100%;object-fit:contain;border-radius:8px}.hero-brand:after{display:none}.hero-notes{flex-wrap:wrap;gap:12px 20px}.hero-grid:has(.hero-brand){grid-template-columns:1fr 1.12fr;gap:38px}@media(max-width:700px){.hero-grid:has(.hero-brand){grid-template-columns:1fr;gap:28px}.hero-visual.hero-brand{height:auto}.hero-notes{font-size:12px;gap:10px 16px}}

/* Clear service-first introduction and property pathways. */
h1{font-size:clamp(38px,4.5vw,60px);line-height:1.09;letter-spacing:-1.8px}.hero .lead{line-height:1.65}.hero .actions .button:first-child{background:var(--red)}.property-section{padding-top:65px;padding-bottom:65px}.property-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.property-grid article{padding:32px;background:var(--light);border-top:3px solid var(--blue);border-radius:6px}.property-grid article:last-child{border-color:var(--red)}.property-grid .eyebrow{margin-bottom:12px;font-size:14px;letter-spacing:1px}.property-grid h3{font-size:28px;margin:0 0 16px}.property-grid p:not(.eyebrow){color:var(--muted);margin:0 0 22px}.property-grid .text-link{font-size:16px}.hero-notes{font-size:14px}.service-number,.project small{font-size:12px}.header nav{font-size:14px;gap:18px}.brand small{font-size:12px;letter-spacing:.5px}.mobile-contact{display:none}.fields label:last-child{grid-column:1/-1}
@media(max-width:1000px){.header nav{display:none}.hero-grid:has(.hero-brand){gap:25px}}
@media(max-width:700px){h1{font-size:clamp(34px,8.5vw,52px);letter-spacing:-1px}.hero-notes{font-size:14px}.hero .eyebrow{font-size:12px;letter-spacing:1px}.property-grid{grid-template-columns:1fr;gap:16px}.property-grid article{padding:24px}.property-section{padding-top:55px;padding-bottom:55px}.hero .actions .button{min-height:48px}.mobile-contact{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;background:var(--deep);padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:10px;z-index:10;box-shadow:0 -3px 18px #0002}.mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:46px;border:1px solid #7192b5;border-radius:5px;color:#fff;font-size:14px;font-weight:700}.mobile-contact a:last-child{background:var(--red);border-color:var(--red)}footer{padding-bottom:115px}.header .small{font-size:12px}.brand small{font-size:9px}.topbar a{font-size:12px}.gallery .project strong{font-size:18px}}

/* Home comfort leads the page. */
h1{font-size:clamp(36px,4.15vw,56px);line-height:1.12}.hero-grid:has(.hero-brand){grid-template-columns:1.12fr 1fr}.hero .actions .button{font-size:15px}.hero .lead{font-size:18px}.commercial{background:#fff;border:1px solid var(--line);border-left:3px solid var(--blue)}@media(max-width:700px){.hero-grid:has(.hero-brand){grid-template-columns:1fr}h1{font-size:clamp(33px,8.3vw,48px)}.hero .lead{font-size:16px}.hero .actions{display:grid;grid-template-columns:1fr}.hero .actions .button{min-height:48px}.hero-brand{max-width:440px;width:100%;margin:auto}}

/* R&G family and longhorn lead the first screen. */
.hero{padding:46px 0 48px}.hero-grid:has(.hero-brand){grid-template-columns:1fr 1.05fr;grid-template-rows:auto auto;gap:0 40px;align-items:center}.hero-heading{grid-column:1;grid-row:1}.hero-details{grid-column:1;grid-row:2}.hero-brand{grid-column:2;grid-row:1 / 3;align-self:center}h1{font-size:clamp(46px,5.5vw,72px);line-height:1.04;letter-spacing:-2px;margin-bottom:12px}.hero-details .lead{margin:12px 0 25px;max-width:500px;font-size:18px;line-height:1.6}.hero-language{color:#b7dfff;font-size:14px;line-height:1.5;margin:20px 0 14px}.hero-work-link{font-size:14px;color:#fff;text-decoration:underline;text-underline-offset:5px}.hero-heading .eyebrow{font-size:12px}.services h3{font-size:24px;line-height:1.3}.services .service-number{font-size:12px}
@media(max-width:700px){.hero{padding:28px 0 34px}.hero-grid:has(.hero-brand){grid-template-columns:1fr;grid-template-rows:auto auto auto;gap:18px}.hero-heading{grid-column:1;grid-row:1}.hero-brand{grid-column:1;grid-row:2;width:100%;max-width:400px}.hero-visual.hero-brand{aspect-ratio:2 / 1;overflow:hidden}.hero-brand>img{object-fit:cover;object-position:center 38%}.hero-details{grid-column:1;grid-row:3}.hero-heading .eyebrow{margin-bottom:14px}h1{font-size:clamp(40px,10.5vw,58px);line-height:1.02;letter-spacing:-1.5px;margin:0}.hero-details .lead{font-size:16px;line-height:1.55;margin:0 0 20px}.hero .actions{grid-template-columns:1fr 1fr;gap:10px}.hero .actions .button{padding:12px 10px;font-size:14px}.hero-language{margin:18px 0 10px}.header{min-height:78px}.header .small{font-size:12px;padding:10px}.brand img{width:48px;height:48px}.brand small{font-size:9px}.services h3{font-size:20px}.hero-work-link{font-size:14px}}

/* Preserve the complete mascot, including both horns. */
.hero-visual.hero-brand{aspect-ratio:4 / 3;overflow:hidden;background:var(--deep)}.hero-brand>img{object-fit:contain;object-position:center;width:100%;height:100%}.hero-heading h1{font-size:clamp(44px,5.1vw,68px);line-height:1.07;letter-spacing:-1.7px}.hero-details .lead{max-width:440px}
@media(max-width:700px){.hero{padding:25px 0 34px}.hero-grid:has(.hero-brand){gap:20px}.hero-heading h1{font-size:clamp(38px,9.2vw,50px);line-height:1.08;letter-spacing:-1px}.hero-visual.hero-brand{aspect-ratio:4 / 3;max-width:420px;overflow:hidden}.hero-brand>img{object-fit:contain;object-position:center}.hero-heading .eyebrow{font-size:12px;letter-spacing:.8px}.hero-details .lead{font-size:16px;margin-bottom:18px}}

@media(max-width:700px){.hero .actions{grid-template-columns:1fr}}

/* Compact services with solutions on demand. */
.service-heading h2{font-size:clamp(30px,4vw,48px);line-height:1.12;letter-spacing:-1px}.service-intro{font-size:16px;color:var(--muted);margin:18px 0 0;max-width:540px}.services.service-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;border:0;align-items:start}.service-card{border:1px solid var(--line);border-radius:12px;background:var(--light);overflow:hidden;min-width:0;transition:border-color .2s,background .2s}.service-card summary{display:flex;flex-direction:column;position:relative;padding:24px;cursor:pointer;list-style:none;min-height:245px}.service-card summary::-webkit-details-marker{display:none}.service-card summary::marker{content:''}.service-card summary:focus-visible{outline:3px solid var(--blue);outline-offset:-5px}.service-card:hover,.service-card[open]{border-color:var(--blue);background:#eaf5ff}.service-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;color:var(--blue);background:#dceeff;font-size:30px;line-height:1;margin-bottom:14px}.service-label{font-size:14px;font-weight:700;color:var(--blue);line-height:1.3}.service-cards h3{font-size:23px;line-height:1.25;letter-spacing:-.4px;margin:10px 0 18px;overflow-wrap:break-word}.service-reveal{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;color:var(--muted);margin-top:auto}.service-toggle{position:relative;flex:0 0 22px;width:22px;height:22px;border-radius:50%;background:var(--navy)}.service-toggle:before,.service-toggle:after{content:'';position:absolute;top:10px;left:6px;width:10px;height:2px;background:white}.service-toggle:after{transform:rotate(90deg)}.service-card[open] .service-toggle:after{display:none}.service-solution{padding:0 24px 24px}.service-solution p{font-size:16px;line-height:1.55;color:var(--muted);margin:0 0 20px;padding-top:18px;border-top:1px solid #c6daee}.service-solution .button{display:flex;width:100%;justify-content:center;align-items:center;min-height:48px;padding:12px 8px;font-size:14px;background:var(--blue)}
@media(max-width:1000px){.services.service-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.services.service-cards{gap:12px}.service-card summary{padding:17px;min-height:230px}.service-cards h3{font-size:19px;line-height:1.25;margin-bottom:16px}.service-icon{width:40px;height:40px;font-size:27px;margin-bottom:12px}.service-label{font-size:14px}.service-reveal{font-size:14px;line-height:1.35}.service-solution{padding:0 17px 17px}.service-heading h2{font-size:34px;letter-spacing:-.7px}.service-intro{font-size:16px}.service-solution .button{font-size:14px}}
@media(max-width:360px){.services.service-cards{grid-template-columns:1fr}.service-card summary{min-height:0}.service-reveal{margin-top:4px}}

/* A quick introduction to the family behind R&G. */
.about.family-about{display:block}.family-about .about-heading{max-width:650px;margin-bottom:28px}.family-about h2{font-size:clamp(32px,4vw,48px);line-height:1.12;letter-spacing:-.8px}.family-about .about-heading>p:not(.eyebrow){font-size:16px;line-height:1.6;margin:18px 0 0;max-width:530px}.family-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.family-card-top{display:flex;align-items:center;gap:12px}.family-card .service-icon{flex:0 0 40px;width:40px;height:40px;font-size:25px;margin:0}.family-card h3{font-size:23px;line-height:1.2;margin:0;letter-spacing:-.4px}.family-card summary{min-height:180px}.family-preview{font-size:16px;line-height:1.45;color:var(--muted);margin:14px 0 20px}.family-card .service-solution p{margin-bottom:0}.family-card[open]{border-color:var(--blue)}
@media(max-width:700px){.family-cards{grid-template-columns:1fr;gap:12px}.family-card summary{min-height:0;padding:18px 20px}.family-card h3{font-size:22px}.family-preview{margin:10px 0 14px}.family-card .service-solution{padding:0 20px 20px}.family-about h2{font-size:34px}}

.project-package .comparison-heading>p{max-width:360px;font-size:16px;line-height:1.55}.project-package .comparison-label{font-size:14px;letter-spacing:.5px}.project-package .comparison-open{font-size:14px}.project-package .comparison-photos button:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
@media(max-width:700px){.project-package .comparison-photos button{height:250px}.project-package .comparison-label{font-size:14px;left:8px;top:8px;padding:5px 8px}.project-package .comparison-open{font-size:14px;left:8px;bottom:8px;padding:5px 7px}.project-package .comparison-heading>p{max-width:none}.project-package .comparison-heading h3{font-size:23px}}
@media(max-width:360px){.project-package .comparison-photos{grid-template-columns:1fr}.project-package .comparison-photos button{height:330px}}

/* Financing belongs to the page, with one clear next step. */
.financing.finance-refresh{padding-top:55px;padding-bottom:55px}.finance-banner{display:grid;grid-template-columns:1.4fr 1fr;gap:48px;align-items:center;background:var(--navy);color:white;border-radius:18px;padding:48px;border-top:4px solid var(--ice)}.finance-banner .eyebrow{color:#8edbff;font-size:14px;letter-spacing:1.5px;margin-bottom:18px}.finance-banner h2{font-size:clamp(34px,4vw,52px);line-height:1.08;letter-spacing:-1px}.finance-banner h2 span{color:#8edbff}.finance-lead{font-size:17px;line-height:1.6;color:#e0eaf6;margin:22px 0 18px;max-width:540px}.finance-spanish{font-size:14px;line-height:1.55;color:#b9d4ee;margin:0;max-width:480px}.finance-action{border-left:1px solid #436080;padding-left:40px}.finance-mark{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#123e6d;color:#8edbff;border:1px solid #5180a5;border-radius:12px;font-size:28px;font-weight:700}.finance-action>p:first-of-type{font-size:23px;line-height:1.3;margin:18px 0 24px;color:#d1e4f7}.finance-action strong{color:white}.finance-action .button{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;font-size:16px;background:var(--red);padding:14px 18px}.finance-action .finance-terms{font-size:14px;line-height:1.5;color:#b9d4ee;margin:14px 0 0}
@media(max-width:700px){.finance-banner{grid-template-columns:1fr;gap:25px;padding:28px 24px;border-radius:14px}.finance-banner h2{font-size:36px;letter-spacing:-.6px}.finance-lead{font-size:16px;margin-top:18px}.finance-action{padding:24px 0 0;border-left:0;border-top:1px solid #436080}.finance-mark,.finance-action>p:first-of-type{display:none}.finance-action .button{min-height:52px}.finance-action .finance-terms{max-width:320px}.financing.finance-refresh{padding-top:40px;padding-bottom:40px}}
