:root{--navy:#0D2650;--navy-dark:#071A36;--blue:#1D4C9C;--orange:#FF5F00;--orange-hover:#E65100;--mist:#F3F5F9;--paper:#fff;--ink:#14243B;--muted:#56657C;--border:#DDE3EC;--light-blue:#C9DBF5;--font-display:'Archivo',sans-serif;--font-body:'Public Sans',sans-serif;--shadow:0 24px 70px rgba(12,36,73,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--paper);font:400 16px/1.65 var(--font-body);-webkit-font-smoothing:antialiased}a{color:inherit}img{max-width:100%;height:auto;display:block}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1184px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;top:-90px;left:1rem;z-index:999;background:white;padding:12px;border-radius:6px}.skip-link:focus{top:12px}:focus-visible{outline:3px solid #1D4C9C;outline-offset:3px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.05em;line-height:1.06}h2{font-size:clamp(37px,4.35vw,59px);font-weight:900}h3{font-size:26px;font-weight:800}
.utility-bar{background:var(--navy-dark);color:#DFE8F4;font-size:11px;font-weight:700;letter-spacing:.13em}.utility-inner{min-height:33px;display:flex;justify-content:space-between;align-items:center;gap:12px;text-transform:uppercase}.utility-inner>span:first-child{display:flex;align-items:center;gap:9px}.live-dot{display:inline-block;background:var(--orange);width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 3px rgba(255,95,0,.15)}.site-header{position:sticky;top:0;z-index:70;background:rgba(255,255,255,.97);border-bottom:1px solid var(--border);backdrop-filter:blur(12px)}.header-inner{min-height:87px;display:flex;align-items:center;gap:26px}.brand{text-decoration:none;display:flex;align-items:center;gap:8px;min-width:235px}.brand img{width:72px;height:72px;object-fit:contain}.brand-text,.footer-brand span{display:flex;flex-direction:column;gap:2px;line-height:1.1}.brand-text strong,.footer-brand strong{font:900 24px/.98 var(--font-display);letter-spacing:-.05em;color:var(--navy);white-space:nowrap}.brand-text small,.footer-brand small{font-size:9px;letter-spacing:.09em;color:var(--muted);font-weight:800;white-space:nowrap}.main-nav{display:flex;gap:24px;align-items:center;margin-left:auto}.main-nav a{font-size:13px;font-weight:700;white-space:nowrap;text-decoration:none}.main-nav a:hover,.footer-links a:hover{color:var(--orange-hover)}.header-actions{display:flex;align-items:center;gap:12px;margin-left:7px}.lang-switch{border:1px solid var(--border);display:flex;align-items:center;gap:3px;border-radius:9px;background:#F5F7FA;padding:4px;flex-shrink:0}.lang-switch a{text-decoration:none;font-size:12px;font-weight:900;border-radius:5px;padding:7px 9px;color:#5C6B7E;line-height:1}.lang-switch a.selected{color:#fff;background:var(--navy)}.lang-switch span{height:11px;border-left:1px solid #D8E0EA}.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:14px 23px;border-radius:9px;text-decoration:none;border:2px solid transparent;font-weight:800;font-size:14px;line-height:1.3;text-align:center;transition:background .18s,transform .18s,box-shadow .18s}.btn:hover{transform:translateY(-2px)}.btn-orange{background:var(--orange);color:var(--navy-dark);box-shadow:0 10px 24px rgba(255,95,0,.17)}.btn-orange:hover{background:var(--orange-hover);color:var(--navy-dark)}.btn-outline{border-color:#CFD9E7;background:rgba(255,255,255,.72);color:var(--navy)}.btn-outline:hover{background:#fff;border-color:var(--navy)}.btn-small{min-height:42px;padding:11px 15px;font-size:12px;white-space:nowrap}.btn-large{min-height:56px;font-size:14px}.eyebrow{font-size:11px;letter-spacing:.16em;font-weight:900;color:#D04D00;display:flex;align-items:center;gap:12px;text-transform:uppercase}.eyebrow-line{display:inline-block;background:var(--orange);width:21px;height:3px;flex-shrink:0}.eyebrow.on-dark{color:#FFC194}
.hero{overflow:hidden;background:linear-gradient(112deg,#F3F6FA 0%,#fff 48%,#EDF3FA 100%);position:relative}.hero::before{position:absolute;content:"";right:-10%;top:0;width:48%;height:100%;background:repeating-linear-gradient(130deg,transparent 0px,transparent 59px,rgba(13,38,80,.02) 60px,rgba(13,38,80,.02) 61px);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1.11fr) minmax(0,.89fr);gap:40px;align-items:center;min-height:680px;padding-block:82px 48px}.hero-copy{position:relative;z-index:1}.hero h1{color:var(--navy);font-size:clamp(58px,6.5vw,91px);letter-spacing:-.065em;font-weight:900;line-height:1.02;margin:26px 0}.hero h1 em{font-style:normal;color:var(--orange-hover)}.hero-lead{font-size:17px;color:#3E4D62;line-height:1.83;max-width:570px;margin-bottom:30px}.hero-buttons{display:flex;flex-wrap:wrap;gap:12px}.hero-trust{display:flex;gap:9px 18px;flex-wrap:wrap;max-width:600px;padding-top:29px;margin-top:34px;border-top:1px solid #DBE2ED}.hero-trust span{font-size:11px;font-weight:800;letter-spacing:.01em;color:#304560}.hero-trust span:first-letter{color:#E65100}.hero-visual{align-self:center;position:relative;min-height:465px;max-width:525px;width:100%;margin-left:auto;padding:17px;border:1px solid #D8E1ED;border-radius:18px;background:linear-gradient(145deg,white,#F1F6FC);box-shadow:var(--shadow)}.hero-visual-top,.hero-visual-bottom{display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.16em;font-weight:900;color:#627087}.hero-visual-top{padding:4px 8px}.tiny-square{background:var(--orange);width:10px;height:10px;display:inline-block;position:absolute;top:24px;left:22px}.hero-visual-top{padding-left:24px}.hero-logo-wrap{height:365px;display:grid;place-items:center;position:relative}.hero-logo-wrap img{width:min(95%,345px);height:auto;position:relative;z-index:2;filter:drop-shadow(0 22px 15px rgba(13,38,80,.08))}.hero-orange-disc{width:275px;height:275px;border-radius:50%;position:absolute;background:radial-gradient(circle,rgba(255,95,0,.085) 0 48%,transparent 50%);border:1px solid #F9D5BC}.hero-visual-bottom{border-top:1px solid #DAE3EF;gap:8px;padding:17px 8px 4px}.hero-visual-bottom>div:not(.visual-locale){display:flex;flex-direction:column;gap:2px}.hero-visual-bottom span{font-size:10px;color:var(--orange-hover)}.hero-visual-bottom strong{font-size:12px;color:var(--navy);letter-spacing:0}.visual-locale{font:900 24px/1 var(--font-display);color:var(--navy)}.visual-locale .arrow{font-size:20px}.hero-below{text-align:right;font-size:10px;letter-spacing:.19em;color:#78849A;font-weight:900;margin-bottom:19px}.service-strip{background:var(--orange);color:var(--navy-dark)}.strip-inner{min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;font-weight:900;letter-spacing:.09em}.strip-star{font-size:21px;color:#fff}.section{padding-block:108px}.section-header,.why-header{display:flex;justify-content:space-between;gap:48px;align-items:end;margin-bottom:39px}.section-header>div,.why-header>div{max-width:740px}.section-header h2,.why-header h2{margin:16px 0 0;color:var(--navy)}.section-header h2 span{color:#6A778B}.section-header>p,.why-header>p{max-width:310px;color:var(--muted);font-size:14px;line-height:1.85;margin-bottom:2px}.service-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service-card{padding:36px 40px 30px;border:1px solid var(--border);border-top:5px solid var(--orange);border-radius:14px;background:white;box-shadow:0 14px 38px rgba(13,38,80,.05);transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-4px);box-shadow:0 22px 55px rgba(13,38,80,.1)}.plumbing-card{border-top-color:var(--navy)}.card-upper{display:flex;align-items:start;justify-content:space-between}.service-icon{width:69px;height:69px;border-radius:14px;background:#F0F5FC;color:var(--navy);display:grid;place-items:center}.roof-icon{background:#FFF0E6;color:#D64E00}.card-num{font:900 11px/1 var(--font-display);letter-spacing:.1em;color:#92A0B3}.service-card h3{font-size:35px;margin:24px 0 10px;color:var(--navy)}.card-intro{min-height:57px;font-size:14px;color:#55647B;line-height:1.8}.service-card ul{list-style:none;margin:20px 0 29px;padding:0}.service-card li{padding:11px 0 11px 28px;position:relative;font-size:13px;font-weight:650;border-bottom:1px solid #EDF0F5}.service-card li:before{content:'✓';position:absolute;left:0;top:11px;font-weight:900;color:var(--orange-hover)}.card-action{text-decoration:none;font-weight:800;font-size:13px;display:inline-flex;align-items:center;gap:16px;color:#C64600}.card-action span{font-size:20px}.plumbing-card .card-action{color:var(--navy)}
.why-section{position:relative;background:var(--navy);padding-block:104px;overflow:hidden}.why-section:after{content:'R&G';position:absolute;right:-30px;bottom:-120px;color:rgba(255,255,255,.025);font:900 320px/1 var(--font-display);pointer-events:none}.why-header{align-items:center;margin-bottom:47px;position:relative;z-index:1}.why-header h2{color:white;margin-top:19px}.why-header>p{color:#CAD4E2}.why-grid{display:grid;grid-template-columns:repeat(4,1fr);position:relative;z-index:1;gap:22px}.why-item{padding:22px 0 15px;border-top:1px solid #486080}.why-item>span{font:900 13px var(--font-display);color:#FF944D}.why-item h3{font-size:21px;letter-spacing:-.045em;margin:25px 0 15px;color:white}.why-item p{color:#C4D0E0;font-size:13px;line-height:1.8}.process-title{max-width:730px;margin:18px 0 40px;color:var(--navy)}.process-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.process-card{background:var(--mist);border:1px solid var(--border);border-radius:12px;padding:30px 28px;min-height:240px}.process-step{display:flex;justify-content:space-between;font:900 13px var(--font-display);color:#D85200;letter-spacing:.07em}.process-step span{font-size:22px}.process-card h3{font-size:23px;color:var(--navy);margin:48px 0 13px}.process-card p{font-size:13px;color:#5B687C;line-height:1.75;margin-bottom:0}
.booking-section{background:linear-gradient(135deg,#061A36,#112F5A);padding-block:105px}.booking-grid{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:70px;align-items:start}.booking-intro{position:relative;min-width:0;overflow:hidden}.booking-intro h2{font-size:clamp(43px,5vw,68px);color:white;margin:22px 0}.booking-lead{font-size:16px;color:#CCD9EA;line-height:1.9;max-width:410px}.contact-panel{border-top:1px solid #3E5A7D;margin-top:46px;padding-top:26px;position:relative;z-index:1}.contact-panel>strong{color:#fff;display:block;font-size:13px;margin-bottom:17px}.contact-row{display:flex;gap:15px;align-items:center;border-bottom:1px solid #365478;padding:16px 0;color:#D7E2EF;text-decoration:none;font-size:12px;line-height:1.55}.contact-row b{color:white;font-size:15px}.contact-row:hover b{color:#FFB88C}.contact-icon{display:grid;place-items:center;border:1px solid #4F6988;border-radius:10px;width:42px;height:42px;flex-shrink:0;color:#FFB079;font:700 22px var(--font-display)}.contact-arrow{margin-left:auto;color:#FFB079;font-size:20px}.nonlink{border-bottom:0}.booking-deco{font:900 clamp(90px,10vw,146px)/1 var(--font-display);color:rgba(255,255,255,.035);letter-spacing:-.08em;margin-top:65px;white-space:nowrap}.booking-deco span{color:rgba(255,95,0,.12)}.booking-form-wrap{min-width:0}.booking-form{background:#fff;border-radius:17px;padding:36px 39px;box-shadow:0 25px 65px rgba(0,0,0,.17);display:flex;flex-direction:column;gap:24px}.form-number{font:800 10px var(--font-body);color:#C04B00;letter-spacing:.15em}.form-head h3{color:var(--navy);font-size:30px;margin:12px 0 9px}.form-head p{font-size:13px;color:var(--muted);margin:0}.form-fieldset{padding:0;border:0;margin:0;min-width:0;display:flex;flex-direction:column;gap:12px}.form-fieldset legend{display:block;width:100%;font-size:13px;font-weight:900;color:var(--navy);padding:0 0 10px;border-bottom:1px solid #E3E8EF;margin-bottom:13px;letter-spacing:.015em}.calendar{background:#F3F6FA;border:1px solid #E6EBF2;border-radius:10px;padding:15px}.calendar-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.calendar-top strong{font-size:16px;font-weight:900;color:var(--navy)}.calendar-nav{border:1px solid #D6DEEA;background:white;color:var(--navy);border-radius:7px;height:40px;width:40px;font-weight:800}.calendar-nav:disabled{opacity:.35;cursor:default}.calendar-weekdays,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekdays span{text-align:center;font-size:10px;font-weight:900;letter-spacing:.04em;color:#667791;padding-bottom:8px}.calendar-day{height:42px;border:1px solid #D7DFEB;background:white;color:var(--navy);border-radius:6px;font-weight:750;font-size:13px;min-width:0;padding:0}.calendar-day:hover:not(:disabled){border-color:var(--orange);color:#BA4200}.calendar-day:disabled{opacity:.26;border-color:transparent;background:transparent;cursor:not-allowed}.calendar-day[aria-pressed='true']{background:var(--orange);border-color:var(--orange);color:var(--navy);font-weight:900}.calendar-pad{display:block}.form-help{font-size:11px;color:#66748A;margin:-1px 0 0;line-height:1.6}.times{display:flex;flex-wrap:wrap;gap:8px}.time-slot{padding:11px 12px;min-height:41px;border-radius:6px;background:white;border:1px solid #CCD5E1;color:var(--navy);font-size:12px;font-weight:800;min-width:80px}.time-slot[aria-pressed='true']{background:var(--orange);border-color:var(--orange)}.time-slot:disabled{opacity:.5;cursor:not-allowed;background:#F4F6F8}.selected-summary{display:flex;gap:12px;align-items:center;background:#EDF4FB;border:1px solid #C8DBF0;color:var(--navy);border-radius:8px;padding:13px 15px;font-size:12px;font-weight:800}.selected-summary.is-error{background:#FFF0EC;border-color:#E08B7E;color:#9C2418}.summary-icon{display:grid;place-items:center;background:var(--navy);color:white;width:25px;height:25px;border-radius:50%;font-weight:900;flex-shrink:0}.form-fieldset label{display:flex;flex-direction:column;gap:6px;color:#33465D;font-size:12px;font-weight:850}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.form-fieldset input:not([type=checkbox]),.form-fieldset select,.form-fieldset textarea{font-size:13px;font-weight:500;color:var(--ink);border:1px solid #BEC9D8;border-radius:7px;width:100%;min-height:45px;padding:12px 13px;background:white}.form-fieldset input::placeholder,.form-fieldset textarea::placeholder{color:#7C8999}.form-fieldset textarea{resize:vertical}.form-fieldset label.consent{flex-direction:row;gap:11px;align-items:start;line-height:1.7;font-weight:600;margin-top:6px}.consent input{accent-color:var(--navy);width:18px;height:18px;margin:1px 0 0;flex-shrink:0}.fine-print{font-size:11px;line-height:1.8;color:#63748A;margin:-8px 0 0}.submit-btn{width:100%;justify-content:space-between;border:0;min-height:57px;font-size:14px}.submit-btn:disabled{opacity:.7;cursor:progress}.honeypot{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}
.site-footer{border-top:6px solid var(--orange);background:white}.footer-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:30px;align-items:center;padding-block:35px}.footer-brand{display:flex;align-items:center;gap:7px;text-decoration:none}.footer-brand img{height:66px;width:66px;object-fit:contain}.footer-brand strong{font-size:24px}.footer-links{display:flex;align-items:center;gap:25px}.footer-links a{text-decoration:none;font-size:12px;font-weight:800}.footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right;color:#65738B;font-size:11px;font-weight:700}.whatsapp-float{position:fixed;bottom:23px;right:23px;width:60px;height:60px;border-radius:50%;background:#23C35E;display:grid;place-items:center;color:#fff;z-index:80;box-shadow:0 12px 29px rgba(10,80,46,.25);transition:transform .2s}.whatsapp-float:hover{transform:translateY(-4px)}.thank-you-page{background:linear-gradient(120deg,#F3F6FB,#E5EEF9);min-height:100vh}.thanks-container{max-width:680px;margin:auto;padding:50px 24px;min-height:100vh;display:grid;place-items:center}.thanks-card{width:100%;background:#fff;border-top:7px solid var(--orange);box-shadow:var(--shadow);border-radius:15px;padding:38px 45px 45px}.thanks-top{display:flex;align-items:flex-start;justify-content:space-between}.thanks-top img{width:135px}.thanks-check{display:grid;place-items:center;width:59px;height:59px;background:#EDF9F2;border-radius:50%;font-size:30px;color:#188747;margin:25px 0 17px}.thanks-card h1{font:900 clamp(43px,6vw,63px)/1.05 var(--font-display);color:var(--navy);letter-spacing:-.06em}.thanks-card p{color:#5A687D;font-size:15px;line-height:1.8;margin:19px 0 30px}.thanks-actions{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:1120px){.main-nav{gap:14px}.brand{min-width:195px}.brand-text strong{font-size:21px}.brand-text small{font-size:8px}.header-inner{gap:12px}.nav-cta{display:none}.hero h1{font-size:clamp(53px,6.5vw,80px)}.booking-grid{gap:34px}.footer-grid{grid-template-columns:1fr 1fr}.footer-right{grid-column:1/-1;align-items:flex-start;text-align:left}}
@media(max-width:850px){.header-inner{flex-wrap:wrap;padding-block:8px;justify-content:space-between}.brand{min-width:0}.brand img{height:61px;width:61px}.main-nav{order:3;width:100%;justify-content:space-around;border-top:1px solid #EDF0F4;padding:9px 0 3px;margin:0;gap:10px}.main-nav a{font-size:12px}.header-actions{margin-left:auto}.hero-grid{grid-template-columns:1fr;min-height:0;padding-top:64px;padding-bottom:40px;gap:40px}.hero-visual{max-width:540px;margin:0 auto}.hero-lead{max-width:710px}.hero-below{text-align:center}.section-header,.why-header{display:block}.section-header>p,.why-header>p{max-width:600px;margin-top:23px}.why-grid{grid-template-columns:1fr 1fr}.booking-grid{grid-template-columns:1fr}.booking-intro{max-width:690px}.booking-deco{display:none}.booking-form-wrap{max-width:780px;width:100%;margin:auto}.strip-inner{flex-wrap:wrap;justify-content:center;min-height:50px;gap:8px 14px}.strip-inner span{font-size:9px}.strip-star{font-size:15px}.section{padding-block:82px}}
@media(max-width:580px){.container{width:min(100% - 34px,1184px)}.utility-inner{min-height:31px}.utility-inner span:last-child{display:none}.header-inner{gap:5px}.brand img{height:59px;width:59px}.brand-text strong{font-size:20px}.brand-text small{font-size:7px;letter-spacing:.04em}.lang-switch{padding:3px}.lang-switch a{padding:7px 8px}.main-nav{overflow-x:auto;justify-content:space-between;gap:15px}.main-nav a{font-size:10px}.main-nav a:nth-child(4){display:none}.hero-grid{padding-block:57px 34px;gap:33px}.hero h1{font-size:clamp(49px,13vw,69px);margin:19px 0 21px}.hero-lead{font-size:15px;line-height:1.8}.hero-buttons{flex-direction:column;align-items:stretch}.btn-large{width:100%}.hero-trust{gap:6px 14px;padding-top:21px;margin-top:26px}.hero-trust span{font-size:10px}.hero-visual{padding:12px;min-height:0}.hero-logo-wrap{height:277px}.hero-logo-wrap img{width:255px}.hero-orange-disc{width:220px;height:220px}.hero-visual-bottom{padding-top:15px}.hero-visual-bottom strong{font-size:11px}.hero-below{font-size:9px}.service-strip{padding-block:5px}.strip-inner{gap:6px 10px}.strip-inner span{font-size:8px}.strip-inner span:nth-last-child(-n+2){display:none}.section{padding-block:72px}.section-header h2,.why-header h2,.process-title{font-size:clamp(36px,10vw,51px)}.section-header{margin-bottom:27px}.service-cards{grid-template-columns:1fr;gap:18px}.service-card{padding:26px 25px 23px}.service-card h3{font-size:32px}.card-intro{min-height:0}.why-section{padding-block:75px}.why-grid{grid-template-columns:1fr;gap:0}.why-item{padding-bottom:3px}.why-item h3{margin:17px 0 7px}.why-header{margin-bottom:25px}.process-grid{grid-template-columns:1fr;gap:14px}.process-card{min-height:185px}.process-card h3{margin-top:20px}.booking-section{padding-block:72px}.booking-intro h2{font-size:clamp(43px,11vw,60px)}.booking-form{padding:25px 19px;gap:22px}.form-two{grid-template-columns:1fr}.calendar{padding:8px}.calendar-grid,.calendar-weekdays{gap:3px}.calendar-day{height:41px;font-size:12px}.calendar-weekdays span{font-size:9px}.time-slot{min-width:78px;padding:8px 10px}.contact-panel{margin-top:27px}.footer-grid{grid-template-columns:1fr;gap:15px}.footer-right{grid-column:auto}.footer-links{gap:18px;flex-wrap:wrap}.whatsapp-float{width:53px;height:53px;bottom:16px;right:14px}.thanks-card{padding:28px 23px 32px}.thanks-top img{width:105px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}


/* R&G USA featured video (shared by English and Spanish pages) */
.video-section { background:linear-gradient(115deg,#F4F7FC,#EEF3F9); overflow:hidden; }
.video-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(290px,400px); gap:clamp(38px,7vw,110px); align-items:center; }
.video-copy { min-width:0; }
.video-copy h2 { color:var(--navy); max-width:760px; margin:21px 0 25px; font-size:clamp(38px,5vw,66px); line-height:1.08; letter-spacing:-.04em; }
.video-copy h2 span { color:var(--orange-hover); }
.video-lead { font-size:clamp(17px,1.7vw,21px); line-height:1.65; color:#223956; font-weight:650; max-width:670px; }
.video-description { max-width:640px; font-size:15px; color:var(--muted); line-height:1.9; margin:22px 0 27px; }
.video-topics { display:flex; flex-wrap:wrap; gap:9px; margin-bottom:34px; }
.video-topics span { background:white; border:1px solid #D9E3EF; border-radius:20px; color:var(--navy); padding:8px 13px; font-size:10px; font-weight:900; letter-spacing:.055em; }
.video-cta { width:fit-content; }
.video-note { margin:19px 0 0; color:#55657A; font-size:12px; line-height:1.65; max-width:630px; }
.video-panel { background:#102C54; border-radius:20px; padding:16px 18px 18px; box-shadow:0 25px 55px rgba(13,38,80,.22); width:100%; max-width:400px; margin-inline:auto; }
.video-panel-top,.video-panel-bottom { display:flex; gap:12px; align-items:center; justify-content:space-between; color:#F5F7FD; font-size:10px; font-weight:900; letter-spacing:.10em; }
.video-panel-top { padding:1px 2px 14px; }
.video-panel-bottom { padding:14px 2px 0; color:#D0DCEC; }
.video-panel-bottom span span { color:#FF944D; }
.video-panel-dot { width:7px; height:7px; display:inline-block; margin:0 5px 1px; border-radius:50%; background:var(--orange); }
.video-figure { margin:0; background:#EAF0F8; border-radius:11px; overflow:hidden; display:flex; justify-content:center; }
.brand-video { display:block; width:100%; aspect-ratio:512/910; object-fit:contain; background:#EDF0F5; max-height:620px; }
.hero-video-link { display:inline-flex; gap:9px; align-items:center; color:var(--navy); margin-top:22px; font-size:13px; text-decoration:none; font-weight:800; border-bottom:2px solid var(--orange); padding:3px 0; }
.hero-video-link:hover { color:var(--orange-hover); }
.hero-video-link span:first-child { font-size:11px; color:var(--orange-hover); }
@media(max-width:900px) { .video-grid { grid-template-columns:minmax(0,1fr) minmax(260px,350px); gap:32px; } }
@media(max-width:700px) { .video-grid { grid-template-columns:1fr; gap:31px; } .video-copy h2 { font-size:clamp(35px,9.4vw,50px); } .video-panel { max-width:345px; } .video-section { padding-block:66px; } .video-cta { width:100%; justify-content:center; } }

/* R&G USA - storm, insurance, trust and emergency enhancements (EN/ES). */
:root { --emergency-bar-height: 64px; }
html { scroll-padding-top: calc(var(--emergency-bar-height) + 102px); }
.emergency-bar { position:sticky; top:0; z-index:150; width:100%; background:var(--navy-dark); color:#fff; border-bottom:2px solid var(--orange); box-shadow:0 5px 22px rgba(4,18,40,.18); }
.emergency-inner { display:flex; align-items:center; justify-content:space-between; gap:16px; padding-block:8px; min-height:60px; }
.emergency-inner p { display:flex; gap:12px; align-items:center; font-weight:800; font-size:clamp(12px,1.2vw,15px); line-height:1.4; margin:0; }
.emergency-pulse { flex:0 0 10px; width:10px; height:10px; border-radius:50%; background:var(--orange); box-shadow:0 0 0 4px rgba(255,95,0,.17); }
.emergency-call { display:inline-flex; align-items:center; justify-content:center; gap:9px; flex-shrink:0; text-decoration:none; font-weight:900; color:var(--navy-dark); background:var(--orange); border:2px solid var(--orange); border-radius:8px; padding:9px 16px; min-height:42px; white-space:nowrap; font-size:13px; transition:background .2s,transform .2s; }
.emergency-call:hover { background:#ff8138; transform:translateY(-1px); }
.site-header { top:var(--emergency-bar-height); }
.skip-link { z-index:200; }
.hero-grid { grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr); min-height:710px; gap:clamp(25px,4vw,48px); }
.hero h1 { font-size:clamp(38px,4.35vw,65px); line-height:1.09; letter-spacing:-.058em; max-width:690px; }
.hero-lead { max-width:590px; }
.insurance-section { background:linear-gradient(115deg,#FCFDFE,#F0F5FD); padding-block:clamp(58px,7vw,95px); }
.insurance-grid { display:grid; grid-template-columns:130px minmax(0,1fr); align-items:center; gap:clamp(24px,4vw,62px); }
.insurance-icon { width:112px; height:112px; background:#FFF0E7; color:#E05504; border-radius:23px; display:grid; place-items:center; border:1px solid #FFD7BD; box-shadow:0 14px 35px rgba(255,95,0,.09); }
.insurance-copy { max-width:950px; }
.insurance-copy h2 { font-size:clamp(36px,4.4vw,59px); color:var(--navy); margin:18px 0 20px; }
.insurance-copy h2 span { color:var(--orange-hover); }
.insurance-copy p { color:#40536E; font-size:clamp(15px,1.5vw,18px); line-height:1.9; max-width:790px; margin-bottom:20px; }
.insurance-link { display:inline-flex; align-items:center; gap:15px; color:var(--navy); text-decoration:none; font-size:13px; font-weight:900; padding-bottom:5px; border-bottom:3px solid var(--orange); }
.insurance-link:hover { color:var(--orange-hover); }
.trust-section { padding-block:38px 42px; background:white; border-bottom:1px solid var(--border); }
.trust-kicker { font-size:11px; letter-spacing:.13em; font-weight:900; color:#A84A16; margin:0 0 17px; }
.trust-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.trust-item { display:flex; flex-direction:column; align-items:flex-start; gap:12px; min-height:126px; padding:18px 16px; border:1px solid #DEE5EF; border-radius:11px; background:#F7F9FC; color:#203C60; font-size:12px; font-weight:800; line-height:1.45; overflow-wrap:anywhere; }
.trust-symbol { display:grid; place-items:center; width:31px; height:31px; flex-shrink:0; background:#FFEBDE; color:var(--orange-hover); border-radius:9px; font-size:15px; }
.trust-disclosure { font-size:12px; font-weight:700; color:#5B6B7D; margin:19px 0 0; padding-left:14px; border-left:3px solid var(--orange); line-height:1.6; }
.insurance-question { padding:0; margin:8px 0 6px; border:0; min-width:0; }
.insurance-question legend { font-size:13px; font-weight:900; color:#243B59; margin-bottom:10px; }
.insurance-options { display:flex; flex-wrap:wrap; gap:12px; }
.form-fieldset .insurance-option { display:inline-flex; flex-direction:row; gap:11px; align-items:center; min-width:122px; padding:11px 15px; border:1px solid #C9D3E1; background:#F7F9FD; border-radius:9px; cursor:pointer; font-size:14px; font-weight:750; }
.form-fieldset .insurance-option:has(input:checked) { border-color:var(--orange); background:#FFF2E9; }
.form-fieldset .insurance-option input[type="radio"] { flex:0 0 18px; width:18px; height:18px; min-height:0; padding:0; margin:0; accent-color:var(--orange-hover); }
.footer-legal { padding:19px 0 27px; border-top:1px solid #E2E7EE; }
.footer-legal strong { display:block; color:var(--navy); font-size:12px; font-weight:900; margin-bottom:6px; }
.footer-legal p { max-width:1070px; color:#53637A; font-size:12px; line-height:1.8; margin:0; }
.thanks-footer .footer-legal { padding-block:24px 35px; }
.thank-you-page .thanks-container { min-height:calc(100vh - var(--emergency-bar-height) - 175px); }
@media(max-width:1050px){
 .trust-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .hero h1 { font-size:clamp(37px,4.6vw,55px); }
}
@media(max-width:850px){
 .hero-grid { grid-template-columns:1fr; min-height:0; }
 .hero h1 { max-width:790px; }
 .insurance-grid { grid-template-columns:94px minmax(0,1fr); gap:24px; }
 .insurance-icon { width:88px; height:88px; border-radius:17px; }
 .insurance-icon svg { width:61px; height:61px; }
 .site-header { position:relative; top:auto; }
}
@media(max-width:640px){
 :root { --emergency-bar-height: 84px; }
 html { scroll-padding-top:calc(var(--emergency-bar-height) + 16px); }
 .emergency-inner { align-items:stretch; gap:8px; padding-block:9px; }
 .emergency-inner p { font-size:11px; line-height:1.4; }
 .emergency-pulse { width:8px; height:8px; flex-basis:8px; }
 .emergency-call { min-width:100px; padding:8px 10px; font-size:11px; gap:4px; white-space:normal; text-align:center; }
 .emergency-call svg { display:none; }
 .hero h1 { font-size:clamp(36px,9.2vw,51px); line-height:1.1; margin-block:21px; }
 .insurance-grid { grid-template-columns:1fr; }
 .insurance-icon { width:74px; height:74px; }
 .insurance-icon svg { width:51px; height:51px; }
 .insurance-copy h2 { font-size:clamp(35px,9vw,46px); }
 .trust-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .trust-item { min-height:120px; padding:15px 12px; font-size:11px; }
 .trust-item:first-child { grid-column:span 2; min-height:0; flex-direction:row; align-items:center; }
 .trust-disclosure { font-size:11px; }
}
@media(max-width:370px){
 .emergency-inner p { font-size:10px; }
 .emergency-call { min-width:85px; }
 .trust-grid { grid-template-columns:1fr; }
 .trust-item:first-child { grid-column:auto; }
}

/* RG-FLOAT-CTA-V1: botón de inspección fijo, independiente del WhatsApp. */
.rg-sticky-inspection {
  position: fixed;
  z-index: 75; /* Por encima de las secciones, bajo WhatsApp y barra de emergencia. */
  left: 24px;
  bottom: 24px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  width: max-content;
  max-width: min(420px, calc(100vw - 120px));
  min-height: 56px;
  padding: 13px 20px;
  border: 2px solid #ff5f00;
  border-radius: 14px;
  background: #ff5f00;
  color: #0d2650;
  font-family: inherit;
  font-size: 15px;
  font-weight: 900;
  line-height: 1.3;
  text-decoration: none;
  text-align: center;
  box-shadow: 0 10px 28px rgba(13, 38, 80, .22);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(18px);
  transition: opacity .28s ease, transform .28s ease, visibility .28s ease, background .2s ease;
}
.rg-sticky-inspection.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  animation: rg-inspection-glow 3s ease-in-out infinite;
}
.rg-sticky-inspection:hover {
  background: #ff7926;
  color: #0d2650;
  transform: translateY(-3px);
}
.rg-sticky-inspection:focus-visible {
  outline: 3px solid #0d2650;
  outline-offset: 4px;
}
.rg-sticky-inspection svg { flex: 0 0 auto; }
.rg-inspection-arrow { font-size: 20px; font-weight: 900; line-height: 1; }
@keyframes rg-inspection-glow {
  0%, 100% { box-shadow: 0 10px 28px rgba(13, 38, 80, .22), 0 0 0 0 rgba(255, 95, 0, .22); }
  55% { box-shadow: 0 13px 31px rgba(13, 38, 80, .25), 0 0 0 8px rgba(255, 95, 0, 0); }
}
@media (max-width: 640px) {
  .rg-sticky-inspection {
    left: 14px;
    bottom: calc(16px + env(safe-area-inset-bottom, 0px));
    width: calc(100vw - 93px); /* Reserva espacio al botón de WhatsApp, abajo a la derecha. */
    max-width: none;
    padding: 10px 9px;
    min-height: 54px;
    gap: 6px;
    border-radius: 12px;
    font-size: clamp(11px, 3.2vw, 13px);
  }
  .rg-sticky-inspection svg { width: 16px; height: 16px; }
  .rg-inspection-arrow { font-size: 16px; }
}
@media (prefers-reduced-motion: reduce) {
  .rg-sticky-inspection, .rg-sticky-inspection.is-visible {
    animation: none !important;
    transition: none !important;
  }
}
/* RG-FLOAT-CTA-V1 END */
