/* Fabricación: shared editorial styles for the homepage and interior page. */
.fg-section{padding:96px 0;background:#f7f6f2}
.fg-wrap{width:min(1200px,calc(100% - 64px));margin-inline:auto}
.fg-kicker{display:block;font-size:.73rem;font-weight:600;letter-spacing:.19em;text-transform:uppercase;color:#78613a;margin-bottom:18px}
.fg-alliance-logo{display:block;width:min(100%,480px);height:auto;margin:0 0 30px;object-fit:contain}
.fg-title{font-size:clamp(2.3rem,4.1vw,4rem);line-height:1.1;letter-spacing:-.045em;color:#0b2945;margin-bottom:22px}
.fg-lead{font-size:1.08rem;line-height:1.8;color:#52606d;max-width:620px}
.fg-link{display:inline-flex;align-items:center;gap:24px;margin-top:28px;padding:15px 24px;border-radius:7px;background:#0b2945;color:white;font-size:.9rem;font-weight:600}
.fg-link:hover{background:#0047ba;color:#fff;transform:translateY(-2px)}
.fg-link:focus-visible,.fg-photo:focus-visible,.fg-video-toggle:focus-visible,.fg-dialog button:focus-visible{outline:3px solid #4c8bf5;outline-offset:5px}
.fg-home-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:64px;align-items:center}
.fg-home-visual{border-radius:14px;overflow:hidden;background:#e5e7e9}
.fg-home-main{position:relative;margin:0}
.fg-home-main img{width:100%;height:300px;object-fit:cover}
.fg-home-main figcaption{position:absolute;bottom:18px;left:20px;color:white;font-size:.75rem;background:#0b2945e8;padding:7px 12px;border-radius:4px}
.fg-home-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding-top:3px}
.fg-home-strip figure{position:relative;margin:0;min-width:0}
.fg-home-strip img{width:100%;height:105px;object-fit:cover}
.fg-home-strip figcaption{background:#fff;padding:10px 12px;font-size:.72rem;color:#485b6c}
.fg-route{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px;font-size:.74rem;color:#40596e}
.fg-route span{padding:6px 10px;border:1px solid #cdd4da;border-radius:30px}
.fg-page{background:#fff;color:#142f46}
.fg-page main{padding-top:100px}
.fg-page .scroll-down-indicator{display:none}
.fg-hero{padding:38px 0 74px;background:#f7f6f2}
.fg-breadcrumb{font-size:.76rem;color:#5f6c77;margin:0 0 38px;display:flex;gap:12px;align-items:center}
.fg-breadcrumb a:hover{color:#0047ba}
.fg-hero-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:60px}
.fg-hero .fg-title{font-size:clamp(2.8rem,5vw,5rem)}
.fg-hero .fg-video{aspect-ratio:1.25}
.fg-video{position:relative;overflow:hidden;background:#dce3e6;border-radius:12px;aspect-ratio:16/9}
.fg-video video{display:block;width:100%;height:100%;object-fit:cover}
.fg-video-toggle{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #ffffff70;background:#09253de8;color:#fff;border-radius:30px;padding:10px 15px;font:600 .74rem var(--font-body);cursor:pointer;min-height:42px}
.fg-video-toggle:hover{background:#0047ba}
.fg-video-label{position:absolute;top:18px;left:18px;padding:6px 11px;border-radius:4px;background:#fffef2ed;color:#0b2945;font-size:.67rem;letter-spacing:.12em;text-transform:uppercase}
.fg-intro{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;padding:84px 0 50px}
.fg-heading{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.18;letter-spacing:-.035em;color:#0b2945}
.fg-intro p{color:#52606d;line-height:1.9;margin-bottom:16px}
.fg-modalities{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;padding-bottom:80px}
.fg-modality{border-top:1px solid #cbd3da;padding-top:23px}
.fg-number{font-size:.72rem;color:#85704a;display:block;margin-bottom:20px;letter-spacing:.1em}
.fg-modality h3{font-size:1.2rem;color:#0b2945;margin-bottom:12px}
.fg-modality p{font-size:.9rem;line-height:1.8;color:#60707c}
.fg-process{padding:80px 0;background:#0b2945;color:#fff}
.fg-process .fg-kicker{color:#d9bc83}
.fg-process h2{color:#fff}
.fg-process-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:64px;align-items:center;margin-top:36px}
.fg-process p{color:#d0dce5;line-height:1.85;font-size:.95rem}
.fg-steps{margin:0;list-style:none;counter-reset:step}
.fg-steps li{padding:16px 0;border-bottom:1px solid #ffffff24;display:flex;gap:18px;color:#e6eef3;font-size:.9rem}
.fg-steps li::before{counter-increment:step;content:'0' counter(step);color:#d9bc83;font-size:.72rem;padding-top:3px}
.fg-materials{padding:86px 0}
.fg-section-top{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:32px}
.fg-section-top p{max-width:435px;font-size:.92rem;line-height:1.8}
.fg-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.fg-photo{display:block;padding:0;text-align:left;background:none;border:0;color:inherit;font:inherit;cursor:zoom-in;min-width:0}
.fg-photo-image{position:relative;overflow:hidden;border-radius:8px;aspect-ratio:16/10;background:#edf0f2}
.fg-photo-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.fg-photo:hover img{transform:scale(1.035)}
.fg-photo-image span{position:absolute;right:12px;bottom:12px;width:30px;height:30px;display:grid;place-items:center;color:#fff;background:#0b2945db;border-radius:50%;font-size:1.2rem}
.fg-photo strong{display:block;margin-top:14px;font-size:.96rem;color:#0b2945}
.fg-photo small{display:block;font-size:.78rem;color:#657380;margin-top:5px;line-height:1.6}
.fg-gallery-note{font-size:.75rem;color:#64737e;margin-top:24px;max-width:760px}
.fg-products{padding:85px 0;background:#f7f6f2}
.fg-product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:38px}
.fg-product{min-width:0}
.fg-product .fg-video{aspect-ratio:16/9}
.fg-product h3{font-size:1.35rem;color:#0b2945;margin:22px 0 12px}
.fg-product p{font-size:.88rem;line-height:1.8;color:#586976}
.fg-text-link{display:inline-block;margin-top:17px;font-size:.82rem;font-weight:600;color:#0047ba}
.fg-contact{padding:80px 0;text-align:center;background:#fff}
.fg-contact .fg-lead{margin-inline:auto}
.fg-gresat-contact{padding:80px 0;background:#edf2ed}
.fg-gresat-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.fg-contact-card{background:#fff;border:1px solid #d9e1d9;border-radius:12px;padding:34px;font-style:normal;min-width:0}
.fg-contact-card h3{font-size:1.15rem;color:#0b2945;line-height:1.5;margin-bottom:4px}
.fg-contact-person{font-size:.85rem;margin-bottom:24px;color:#5f6e61}
.fg-contact-card dl{margin:0}
.fg-contact-card dl>div{padding:12px 0;border-top:1px solid #e6ebe6}
.fg-contact-card dt{font-size:.7rem;color:#5f6e61;text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px}
.fg-contact-card dd{margin:0;color:#14344d;font-size:.94rem;overflow-wrap:anywhere}
.fg-contact-card a:hover{color:#0047ba;text-decoration:underline}
@media(max-width:760px){.fg-alliance-logo{margin-bottom:24px}.fg-gresat-contact{padding:56px 0}.fg-gresat-contact-grid{grid-template-columns:1fr;gap:28px}.fg-contact-card{padding:25px}}
.fg-footer{background:#0b2945;padding:28px 0}
.fg-footer .fg-wrap{display:flex;justify-content:space-between;gap:20px;align-items:center}
.fg-footer p,.fg-footer a{color:#d7e3eb;font-size:.76rem}
.fg-dialog{width:min(1120px,calc(100vw - 40px));max-height:95dvh;margin:auto;border:0;border-radius:10px;padding:0;background:#0b2032;color:white;overflow:auto}
.fg-dialog::backdrop{background:#03111fea;backdrop-filter:blur(6px)}
.fg-dialog-bar{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;gap:20px}
.fg-dialog-bar p{color:#fff;font-size:.86rem;margin:0}
.fg-dialog button{border:1px solid #ffffff50;border-radius:50%;width:42px;height:42px;background:#fff1;color:#fff;font-size:1.3rem;cursor:pointer}
.fg-dialog img{width:100%;max-height:72dvh;object-fit:contain;background:#06131d}
.fg-dialog-controls{display:flex;align-items:center;justify-content:center;gap:26px;padding:14px}
.fg-dialog-controls span{font-size:.75rem;color:#d0dce5}
@media(min-width:1440px){.fg-hero .fg-video{aspect-ratio:1.4}}
@media(max-width:1000px){.fg-wrap{width:calc(100% - 48px)}.fg-home-grid,.fg-hero-grid,.fg-intro{gap:36px}.fg-home-main img{height:270px}.fg-process-grid{gap:32px}.fg-product-grid{gap:18px}.fg-video-toggle{padding:9px 12px;right:10px;bottom:10px}}
@media(max-width:760px){.fg-section{padding:64px 0}.fg-wrap{width:calc(100% - 40px)}.fg-home-grid,.fg-hero-grid,.fg-intro,.fg-process-grid{grid-template-columns:1fr;gap:30px}.fg-home-main img{height:auto;aspect-ratio:16/10}.fg-home-strip img{height:80px}.fg-home-strip figcaption{font-size:.65rem;padding:9px}.fg-page main{padding-top:88px}.fg-hero{padding:24px 0 48px}.fg-breadcrumb{margin-bottom:30px;font-size:.68rem}.fg-hero .fg-title{font-size:3.1rem}.fg-hero .fg-video{aspect-ratio:16/10}.fg-intro{padding:55px 0 28px;gap:8px}.fg-modalities{grid-template-columns:1fr;gap:23px;padding-bottom:55px}.fg-modality{display:grid;grid-template-columns:35px 1fr;gap:0 15px;padding-top:18px}.fg-number{grid-row:1/3;margin:5px 0}.fg-modality h3{margin-bottom:8px}.fg-process,.fg-materials,.fg-products,.fg-contact{padding:56px 0}.fg-section-top{display:block}.fg-section-top p{margin-top:18px}.fg-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 14px}.fg-photo strong{font-size:.84rem}.fg-photo small{font-size:.7rem}.fg-product-grid{grid-template-columns:1fr;gap:36px}.fg-product h3{margin-top:17px}.fg-product .fg-video{aspect-ratio:16/9}.fg-footer .fg-wrap{flex-direction:column;align-items:flex-start;gap:8px}.fg-dialog{width:calc(100vw - 16px)}.fg-dialog-bar{padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.fg-photo-image img,.fg-link{transition:none}.fg-photo:hover img,.fg-link:hover{transform:none}}
