@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@400;500;600;700;800;900&family=Roboto+Slab:wght@600;700;800&display=swap');
:root{--navy:#0a2856;--orange:#f36b05;--cream:#fff3e5;--shadow:0 7px 18px #64381324;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(135deg,#fffaf4,#fff0e1 70%,#f7e2cb);color:#142744;font-family:'Nunito Sans',Arial,sans-serif;line-height:1.48}h1,h2{font-family:'Roboto Slab',Georgia,serif;color:var(--navy);line-height:1.17}h1{font-size:clamp(2rem,4vw,3.6rem);margin:0 0 24px}h2{font-size:clamp(1.4rem,2.4vw,2.25rem);margin:18px 0}h3{line-height:1.23;margin:0 0 8px;font-size:1.08rem}p{margin:8px 0}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}.site-header{min-height:98px;padding:12px clamp(16px,3%,48px);background:linear-gradient(110deg,#fffefc,#fff2e8);display:flex;align-items:center;gap:clamp(10px,2.2vw,36px);box-shadow:0 3px 10px #5436122b;position:relative;z-index:20}.brand{display:flex;flex-direction:column;align-items:flex-start;flex-shrink:0;line-height:1}.roof-logo{color:#ee740b;font-size:27px;font-weight:900;letter-spacing:-7px;line-height:.7}.brand-name{font-size:clamp(19px,2vw,29px);font-weight:900;color:var(--navy);white-space:nowrap;letter-spacing:-1.5px}.brand-name span{color:#ef710b}.brand-name em{font-style:normal;color:#ec6908}.brand small{font-size:10px;margin:4px 0 0 8px;color:#284e74;font-weight:800}.nav{display:flex;flex:1;justify-content:center;flex-wrap:wrap;gap:9px}.nav-pill,.lang-switch{background:linear-gradient(165deg,#fff,#f9e9d9);border:1px solid #dfcfc3;box-shadow:0 4px 7px #59402e25;border-radius:22px}.nav-pill{white-space:nowrap;padding:10px 16px;font-size:.9rem;font-weight:900;color:#10254a;transition:transform .2s,box-shadow .2s,background .2s}.nav-pill:hover,.nav-pill:focus-visible{transform:translateY(-3px);box-shadow:0 8px 12px #ff720848}.nav-pill.active{background:linear-gradient(#ff9c12,#e95a00);color:white;border-color:#f78c1d}.lang-switch{display:flex;padding:5px;gap:6px;flex-shrink:0}.flag{min-width:33px;text-align:center;border-radius:8px;display:flex;flex-direction:column;align-items:center;font-size:19px;line-height:1.1;padding:3px}.flag small{font-size:10px;font-weight:800}.flag.active{background:var(--navy);color:white}.menu-toggle{display:none}.hero{background-image:linear-gradient(90deg,#d9f0ffba,#ffffff27 54%,transparent 74%),var(--hero);background-size:cover;background-position:center;min-height:min(740px,calc(100svh - 98px));position:relative;display:flex;align-items:center}.hero-overlay{padding:38px clamp(18px,4%,65px);width:100%;min-height:inherit;display:flex;position:relative;align-items:center}.hero-content{max-width:650px;position:relative;z-index:1}.hero h1{font-size:clamp(2rem,3.35vw,3.6rem);text-shadow:0 1px 10px #ffffffa8}.hero h1 em{display:block;color:#ce580a;font-style:normal;margin-top:5px}.hero ul{background:#fffdfa9c;backdrop-filter:blur(4px);padding:18px 22px 18px 45px;border-radius:22px;list-style:none;font-size:clamp(.95rem,1.12vw,1.18rem);font-weight:800;box-shadow:0 4px 14px #fff8}.hero li{margin:6px 0;position:relative}.hero li:before,.pkg-body li:before,.client-panel li:before{content:'✓';position:absolute;left:-29px;color:#ef730a;font-weight:900}.slogan{max-width:350px;text-align:center;position:absolute;right:24%;top:57%;background:#ed6702e8;color:#fff;font-size:clamp(1rem,1.65vw,1.7rem);font-weight:900;padding:18px 20px;transform:rotate(-9deg);clip-path:polygon(3% 5%,97% 0%,100% 85%,5% 100%,0 20%);text-shadow:0 1px 2px #9d3200}.hero-actions{display:flex;gap:15px;flex-wrap:wrap;margin-top:25px}.btn{min-height:47px;border:none;border-radius:21px;box-shadow:0 6px 13px #7d3d1b32;padding:12px 24px;display:inline-flex;align-items:center;justify-content:center;font-weight:900;cursor:pointer;transition:transform .2s,filter .2s,box-shadow .2s;text-align:center}.btn:hover,.btn:focus-visible{transform:translateY(-3px) scale(1.018);filter:saturate(1.12);box-shadow:0 10px 21px #7d3d1b45}.btn.orange,.big-price,.orange-caption{color:white;background:linear-gradient(180deg,#ff9f0f,#f56a00 55%,#d95000)}.btn.light,.btn.outline{background:linear-gradient(#fff,#fff1e4);color:var(--navy);border:1px solid #ddb99d}.container{width:min(1480px,94%);margin:34px auto 55px}.home-intro{margin-top:32px}.services-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.service-card,.package,.panel,.step,.prep{border-radius:var(--radius);background:linear-gradient(140deg,#ffffffed,#fff1e0e6);border:1px solid #f4dec8;box-shadow:var(--shadow)}.service-card{display:flex;min-height:136px;padding:8px;gap:12px;align-items:center;transition:transform .2s}.service-card:hover{transform:translateY(-4px)}.service-card img{width:46%;height:120px;object-fit:cover;border-radius:16px}.service-card>div{min-width:0;flex:1}.service-card strong{display:block;font-size:1.36rem;color:#f05900;line-height:1.1}.service-card small{display:block;font-size:.75rem}.orange-caption{font-family:'Nunito Sans',sans-serif;width:fit-content;padding:7px 23px;border-radius:22px;box-shadow:0 4px 8px #bd540045;margin-top:33px}.package-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.package{display:grid;grid-template-columns:43% 57%;gap:0;padding:9px;min-height:295px}.package>img{width:100%;height:100%;min-height:235px;object-fit:cover;border-radius:17px}.pkg-body{padding:14px 24px;display:flex;flex-direction:column}.pkg-body h3{font-size:1.32rem}.pkg-body ul,.client-panel ul{list-style:none;padding-left:28px;margin:8px 0 13px}.pkg-body li,.client-panel li{position:relative;margin-bottom:5px}.big-price{font-size:1.8rem;font-weight:900;margin-top:auto;border-radius:15px;padding:9px;text-align:center}.fine-print{font-size:.84rem;opacity:.78}.photo-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.photo-tiles figure,.process-highlight figure{margin:0;overflow:hidden;border-radius:20px;background:white;box-shadow:var(--shadow)}.photo-tiles img{width:100%;height:240px;object-fit:cover;display:block}.photo-tiles figcaption,.process-highlight figcaption{padding:12px 16px;font-weight:800}.center-action{margin:22px auto;text-align:center}.steps-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:11px;margin:22px 0 32px}.step{padding:19px 11px;min-height:200px;text-align:center;position:relative}.step-icon{width:67px;height:67px;border-radius:50%;background:#fff1d7;display:flex;align-items:center;justify-content:center;margin:0 auto 9px;font-size:39px;color:#f46c00;box-shadow:0 3px 9px #e7a36455}.step-num{position:absolute;top:10px;right:13px;background:#f36b05;color:white;border-radius:50%;padding:2px 10px;font-size:1.06rem;font-weight:900}.step p,.prep p{font-size:.87rem}.prep-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.prep{text-align:center;padding:14px}.prep span{font-weight:900;font-size:1.6rem;color:#f36b05}.process-highlight{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:22px 0}.process-highlight img{width:100%;height:255px;object-fit:cover;display:block}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.panel{padding:26px}.panel h2{margin:0 0 14px;font-size:1.5rem}.calc-panel,.form-panel{display:flex;flex-direction:column}.calc-panel label,.form-panel label{font-weight:800;margin:8px 0 4px}.panel input,.panel select,.panel textarea{width:100%;border:1px solid #ccb8aa;border-radius:9px;background:#fff;padding:12px;color:#152847;outline-color:#f56a00}.panel select{cursor:pointer}.result{background:#fff1d7;padding:13px 15px;margin:19px 0 12px;border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:10px}.result output{font-size:clamp(1.8rem,3vw,2.5rem);font-weight:900;color:#e75b00}.form-panel form{display:flex;flex-direction:column;gap:9px}.form-panel .btn{width:100%}.form-panel textarea{resize:vertical;min-height:100px}.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.under-quote{display:grid;grid-template-columns:1fr 1.4fr;gap:20px;margin-top:23px}.client-panel ul{font-weight:700}.client-panel li{margin:14px 0}.faq-section details{background:linear-gradient(#fff,#fdf2e6);border:1px solid #d9c4b2;border-radius:18px;margin:9px 0;overflow:hidden}.faq-section summary{cursor:pointer;font-weight:850;padding:11px 18px;list-style:none;display:flex;justify-content:space-between;gap:10px}.faq-section summary:after{content:'+';font-size:22px;color:#b64700;line-height:1}.faq-section details[open] summary:after{content:'−'}.faq-section details p{padding:0 18px 14px}.contract-body{max-width:1100px;margin:auto}.contract-body li{margin:16px 0}.warning{background:#fff0d4;padding:14px;border-radius:12px;border-left:4px solid #ee6a00}footer{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:27px 5%;border-top:1px solid #e5cdb6;background:#fff4e8;font-size:.82rem}.floating-wa{position:fixed;bottom:24px;right:23px;width:65px;height:65px;border-radius:50%;background:#0bc856;color:white;display:flex;align-items:center;justify-content:center;font-size:43px;font-weight:900;box-shadow:0 5px 17px #124c1845;border:3px solid white;z-index:25;transition:transform .2s}.floating-wa:hover{transform:scale(1.09)}.floating-wa b{width:16px;height:16px;background:red;border-radius:50%;position:absolute;right:1px;top:0;border:2px solid white}@media(min-width:1600px){.hero{background-position:center 46%}}@media(max-width:1240px){.site-header{flex-wrap:wrap}.nav{order:3;flex-basis:100%;justify-content:center}.lang-switch{margin-left:auto}.services-grid{grid-template-columns:repeat(2,1fr)}.slogan{right:9%}.steps-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:760px){.site-header{min-height:74px;gap:8px;padding:9px 12px}.brand-name{font-size:19px}.brand small{font-size:8px}.roof-logo{font-size:19px}.menu-toggle{display:block;margin-left:auto;border:1px solid #edd3bd;border-radius:12px;background:white;padding:6px 11px;font-size:24px;color:var(--navy)}.lang-switch{order:4;width:100%;justify-content:center;margin:0}.nav{display:none;order:5;flex-basis:100%;flex-direction:column}.nav.open{display:flex}.nav-pill{padding:9px 15px}.hero{min-height:640px;background-position:60% center;background-image:linear-gradient(90deg,#edf7ffe8,#ffffff80),var(--hero)}.hero-overlay{min-height:640px;align-items:flex-start;padding:21px 16px 120px}.hero h1{font-size:clamp(1.8rem,7vw,2.5rem)}.hero-content{max-width:100%}.hero ul{font-size:.93rem;padding:12px 12px 12px 42px}.slogan{top:auto;bottom:15px;right:4%;max-width:220px;font-size:1rem;padding:12px}.hero-actions{gap:10px}.btn{padding:10px 14px;font-size:.89rem}.container{width:94%;margin:22px auto 40px}.services-grid{grid-template-columns:1fr 1fr;gap:9px}.service-card{min-height:100px;padding:6px;gap:6px}.service-card img{width:40%;height:92px}.service-card h3{font-size:.86rem}.service-card small{font-size:.68rem}.service-card strong{font-size:1.04rem}.package-grid,.quote-grid,.under-quote,.process-highlight{grid-template-columns:1fr}.package{min-height:235px;grid-template-columns:39% 61%}.package>img{min-height:215px}.pkg-body{padding:10px}.pkg-body h3{font-size:1.04rem}.pkg-body li{font-size:.85rem}.big-price{font-size:1.25rem}.steps-grid{grid-template-columns:repeat(2,1fr)}.step{min-height:175px}.prep-grid{grid-template-columns:repeat(2,1fr)}.photo-tiles{grid-template-columns:1fr}.photo-tiles img{height:240px}.panel{padding:18px}.floating-wa{width:55px;height:55px;right:12px;bottom:12px;font-size:36px}footer{padding-right:75px}}@media(max-width:375px){.services-grid{grid-template-columns:1fr}.hero{min-height:700px}.hero-overlay{min-height:700px}.hero-actions{flex-direction:column;align-items:start}.steps-grid{grid-template-columns:1fr 1fr}}@media print{.site-header,.floating-wa,.btn,footer{display:none!important}.contract-body{border:0;box-shadow:none}.container{width:100%}body{background:white}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Final refinements: consistent compact sections, clear flag buttons and mobile layout */
.site-header{min-height:74px;padding:8px clamp(12px,2.5%,38px);gap:clamp(8px,1.7vw,24px)}
.brand-name{font-size:clamp(19px,1.75vw,27px)}.nav{gap:7px}.nav-pill{padding:8px 13px}.lang-switch{padding:4px 7px;gap:4px}.flag{min-width:39px;padding:5px 5px;border-radius:9px}.flag-emoji{font-family:'Segoe UI Emoji','Apple Color Emoji',sans-serif;font-size:27px;line-height:1.1}.flag:hover,.flag:focus-visible{background:#ffe2c3;transform:translateY(-2px)}.flag.active{background:#12315f}.flag.active:hover{background:#244679}
.hero-compact{min-height:clamp(510px,calc(100svh - 92px),710px)}.hero-compact .hero-overlay{min-height:inherit;padding:19px clamp(16px,3.5%,55px)}.hero-compact .hero-content{max-width:600px}.hero-compact h1{font-size:clamp(1.9rem,2.95vw,3.12rem);margin-bottom:13px}.hero-compact ul{padding-top:11px;padding-bottom:11px;font-size:clamp(.88rem,1.02vw,1.05rem)}.hero-compact li{margin:4px 0}.hero-compact .hero-actions{margin-top:13px}.slogan-straight{right:23%;top:53%;transform:none;clip-path:none;border-radius:16px;box-shadow:0 5px 20px #7a37004a;max-width:300px;font-size:clamp(.95rem,1.35vw,1.27rem);padding:14px 17px}
.container{margin-top:20px;margin-bottom:34px}.home-intro{margin-top:20px}.container h2{margin:13px 0}.service-card{min-height:113px}.service-card img{height:94px}.package{min-height:260px}.package>img{min-height:220px}.pkg-body{padding:10px 17px}.pkg-body h3{font-size:1.14rem}.pkg-body li{margin-bottom:3px;font-size:.91rem}.big-price{font-size:1.48rem}.steps-grid{margin:13px 0 21px}.step{min-height:160px;padding:14px 9px}.step-icon{width:58px;height:58px;font-size:30px}.prep-grid{gap:10px}.prep{padding:10px}.process-four{grid-template-columns:repeat(2,1fr);gap:17px}.process-four img{height:210px;object-fit:cover}.process-four figcaption{font-size:.88rem}.contract-body{max-width:970px;padding:22px 30px}.contract-body h2{text-align:center;font-size:1.6rem}.contract-sub{text-align:center;font-weight:700}.contract-fields{border-block:1px solid #d8bca5;padding:12px 0}.contract-body ol{padding-left:24px}.contract-body li{font-size:.9rem;margin:9px 0;line-height:1.4}.contract-signatures{display:grid;grid-template-columns:1fr 1fr;gap:22px;padding:22px 0;font-weight:800}.contract-signatures div{border-top:1px solid #c6aa92;padding-top:8px}.warning{font-size:.83rem}
@media(max-width:1250px){.nav-pill{padding:8px 10px;font-size:.83rem}.brand-name{font-size:21px}.slogan-straight{right:10%}}
@media(max-width:760px){.site-header{min-height:66px}.lang-switch{order:4}.flag{min-width:39px}.flag-emoji{font-size:26px}.hero-compact,.hero-compact .hero-overlay{min-height:0}.hero-compact .hero-overlay{padding:25px 15px 145px}.hero-compact h1{font-size:clamp(1.65rem,6vw,2.5rem)}.hero-compact ul{font-size:.85rem;padding-right:7px}.slogan-straight{top:auto;bottom:14px;right:12px;max-width:195px;font-size:.84rem;padding:10px}.process-four{grid-template-columns:1fr 1fr}.process-four img{height:155px}.contract-signatures{grid-template-columns:1fr}.container{margin-top:15px}.service-card img{height:88px}}
@media(max-width:420px){.process-four{grid-template-columns:1fr}.process-four img{height:200px}.hero-compact .hero-overlay{padding-bottom:132px}.slogan-straight{right:8px;bottom:10px}}
@media print{.contract-body{padding:0!important}.contract-body li{font-size:10pt!important;margin:5px 0!important}.contract-body h2{font-size:17pt!important}.contract-body .warning{display:none}.contract-signatures{padding:10px 0}.contract-body{page-break-inside:avoid} @page{size:A4;margin:12mm}}

/* Patch 2026-11-04: flag assets, true localised content and contact status */
.lang-switch .flag {gap:1px;line-height:1.12;min-width:46px;transition:transform .2s,box-shadow .2s}
.lang-switch .flag img {width:39px;height:27px;object-fit:cover;display:block;filter:drop-shadow(0 1px 1px #0002)}
.lang-switch .flag small{display:block;font-size:10px;font-weight:900}
.hero-compact .hero-content{max-width:min(720px,53vw)}
.hero-first-line{white-space:nowrap;display:inline-block}
.hero-compact h1{font-size:clamp(1.65rem,2.65vw,3.0rem);line-height:1.12;letter-spacing:-.02em}
.hero-compact h1 em{font-size:.79em;letter-spacing:0;margin-top:9px}
.slogan-straight{right:2.8%;top:59%;max-width:310px;transform:none;z-index:2;}
.consent-row{display:flex!important;flex-direction:row;align-items:flex-start;gap:10px;font-size:.82rem;line-height:1.35;font-weight:600!important;margin-top:11px!important}
.consent-row input{width:20px!important;height:20px;flex:0 0 20px;accent-color:#f36b05;padding:0!important;margin:0!important}
.form-status{display:none;padding:13px 15px;border-radius:12px;font-weight:750;line-height:1.4;}
.form-status:not(:empty){display:block}
.form-status[data-type=busy]{background:#fff1d7;color:#654109}
.form-status[data-type=success]{background:#eef9ee;color:#1a5b23;border:1px solid #b7d9b9}
.form-status[data-type=error]{background:#fff0ef;color:#9c2318;border:1px solid #e5aaa2}
.activation-note{font-size:.78rem;line-height:1.4}
@media (max-width:1100px){.hero-compact .hero-content{max-width:65vw}.slogan-straight{top:auto;bottom:7%;right:3%;max-width:235px}}
@media (max-width:760px){.hero-compact .hero-content{max-width:100%}.hero-first-line{white-space:normal}.hero-compact h1{font-size:clamp(1.6rem,6vw,2.45rem)}.slogan-straight{right:10px;bottom:12px;max-width:190px}.lang-switch .flag{min-width:41px;padding:3px}.lang-switch .flag img{width:34px;height:24px}}

/* Keep original detail, do not stretch small image crops */
.photo-tiles img,.process-gallery img{object-fit:cover;image-rendering:auto;}

/* Final focused refinements: quality seal over the far right roof and gallery natural pixel size. */
.slogan.slogan-straight{position:absolute!important;top:47%!important;right:1.6%!important;bottom:auto!important;max-width:245px!important;min-height:145px;display:flex;align-items:center;justify-content:center;border-radius:30px!important;padding:22px 19px!important;background:linear-gradient(145deg,#fffdfa 0%,#fff1d9 100%)!important;border:4px double #cf8d29!important;color:#153b63!important;box-shadow:0 6px 0 #8b5f2e55,0 18px 36px #192b3755!important;text-shadow:none!important;font-size:clamp(.9rem,1.2vw,1.18rem)!important;font-weight:900!important;transform:none!important;clip-path:none!important;text-align:center;line-height:1.35}
.slogan.slogan-straight:before{content:'✦  КАЧЕСТВО  ✦';display:block;position:absolute;top:8px;left:0;right:0;font-size:11px;letter-spacing:.10em;color:#a4661c}
.slogan.slogan-straight:after{content:'✓';display:grid;place-items:center;position:absolute;top:-15px;right:-13px;background:#106c67;color:#fff;border:3px solid #fff;border-radius:50%;width:32px;height:32px;font-size:20px;box-shadow:0 3px 10px #0003}
.process-four img,.photo-tiles img{image-rendering:auto;object-fit:cover}
@media(max-width:1100px){.slogan.slogan-straight{top:auto!important;bottom:3%!important;right:2%!important;max-width:190px!important;min-height:120px;font-size:.86rem!important;padding:24px 10px 12px!important}}
@media(max-width:760px){.slogan.slogan-straight{top:auto!important;bottom:8px!important;right:9px!important;max-width:175px!important;min-height:105px;font-size:.78rem!important;padding:23px 10px 11px!important}}
body[data-lang="es"] .slogan.slogan-straight:before{content:'✦  CALIDAD  ✦'}
body[data-lang="en"] .slogan.slogan-straight:before{content:'✦  QUALITY  ✦'}
body[data-lang="de"] .slogan.slogan-straight:before{content:'✦  QUALITÄT  ✦'}
body[data-lang="fr"] .slogan.slogan-straight:before{content:'✦  QUALITÉ  ✦'}
