.contact-routes,.contact-manifesto,.contact-form-editorial,.contact-network,.contact-faq,.contact-close{background:#fff;color:#0a0a0a;font-family:"Source Sans 3",Arial,sans-serif}
.contact-editorial-wrap{width:min(94vw,1640px);margin-inline:auto}
.editorial-meta{display:flex;justify-content:space-between;gap:24px;padding:12px 0;border-top:1px solid #b9b9b9;font-family:"Outfit",Arial,sans-serif;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.contact-wide-title{font-family:"Outfit",Arial,sans-serif;font-size:clamp(4.6rem,12.2vw,12.8rem);font-weight:500;line-height:.82;letter-spacing:-.075em;text-transform:uppercase}
.contact-routes{padding:110px 0 120px;overflow:hidden}
.contact-routes .contact-wide-title{margin:42px 0 34px;white-space:nowrap}
.route-gallery{position:relative;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:120px 190px 220px 135px;gap:8px;min-height:690px}
.route-frame{position:relative;display:block;overflow:hidden;background:#eee}
.route-frame img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.route-frame:hover img{transform:scale(1.025)}
.route-frame span{position:absolute;left:0;bottom:-25px;color:#101010;font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.route-frame-main{grid-column:1/5;grid-row:1/4;margin-bottom:26px}.route-frame-main img{object-position:52% 45%}
.route-frame-helmet{grid-column:5/8;grid-row:2/4;margin-bottom:88px}.route-frame-helmet img{object-fit:contain;padding:8%;background:#ececec}
.route-message{grid-column:8/11;grid-row:1/3;align-self:start;padding:8px 0 0 18px;max-width:300px}
.route-message p{font-family:"Outfit",Arial,sans-serif;font-size:clamp(1.2rem,1.8vw,1.9rem);font-weight:500;line-height:1.08;letter-spacing:-.035em}
.route-message a{display:inline-flex;justify-content:space-between;width:100%;margin-top:28px;padding-top:8px;border-top:1px solid #bdbdbd;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.route-frame-luggage{grid-column:8/13;grid-row:2/5;margin:52px 0 26px}.route-frame-luggage img{object-position:center 34%}
.route-frame-case{grid-column:3/6;grid-row:4/5;margin-left:30px}.route-frame-case img{object-fit:contain;padding:5%;background:#ededed}
.route-index{display:grid;grid-template-columns:repeat(4,1fr);margin-top:54px;border-top:1px solid #bababa;border-bottom:1px solid #bababa}
.route-index a{display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:8px;min-height:70px;padding:0 16px;border-right:1px solid #d0d0d0;font-family:"Outfit",Arial,sans-serif;font-size:13px;font-weight:600;text-transform:uppercase}
.route-index a:last-child{border-right:0}.route-index a span{color:#1646c5;font-size:10px}.route-index a b{font-size:18px;font-weight:500;transition:transform .25s ease}.route-index a:hover b{transform:translate(3px,-3px)}
.contact-manifesto{padding:120px 0 135px}
.manifesto-line{max-width:1420px;margin:68px 0 90px 18%;font-family:"Outfit",Arial,sans-serif;font-size:clamp(2.5rem,5.1vw,5.7rem);font-weight:600;line-height:.96;letter-spacing:-.055em;text-transform:uppercase;text-align:right}
.manifesto-line span{color:#b6b6b6}
.manifesto-notes{display:grid;grid-template-columns:2fr 1fr 1fr;gap:6vw;border-bottom:1px solid #bbb;padding-bottom:40px}
.manifesto-notes article{max-width:290px}.manifesto-notes b{font:700 10px "Outfit",sans-serif;text-transform:uppercase;letter-spacing:.08em}.manifesto-notes p{margin-top:12px;font-size:13px;line-height:1.35;color:#4b4b4b}
.contact-form-editorial{padding:110px 0 140px}
.contact-form-editorial .contact-wide-title{margin:44px 0 50px}
.editorial-form-layout{display:grid;grid-template-columns:minmax(300px,.8fr) 1.2fr;gap:clamp(40px,8vw,130px);align-items:start}
.form-portrait{position:sticky;top:100px}.form-portrait img{width:100%;height:min(68vh,720px);object-fit:cover;object-position:52% 40%;filter:grayscale(1)}
.form-portrait figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:8px;padding-top:7px;border-top:1px solid #aaa;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.editorial-form{padding:0!important;background:#fff!important}.form-intro{max-width:520px;margin-bottom:45px;font-family:"Outfit",Arial,sans-serif;font-size:clamp(1.35rem,2vw,2.1rem);line-height:1.12;letter-spacing:-.035em}
.editorial-form .form-grid{gap:0 30px}.editorial-form .field{gap:5px;margin-bottom:28px}.editorial-form label{color:#111;font:700 10px "Outfit",sans-serif;letter-spacing:.11em}
.editorial-form input,.editorial-form select,.editorial-form textarea{border:0;border-bottom:1px solid #999;border-radius:0;padding:12px 0;background:transparent;font:500 15px "Source Sans 3",sans-serif;box-shadow:none!important;transform:none!important}
.editorial-form input:focus,.editorial-form select:focus,.editorial-form textarea:focus{border-color:#1646c5}.editorial-form textarea{min-height:110px}
.editorial-form .radio-grid{gap:6px}.editorial-form .radio-pill{min-height:34px;border:1px solid #aaa;border-radius:0;padding:0 12px;color:#111;font:600 10px "Outfit",sans-serif}.editorial-form .radio-pill.selected{background:#1646c5;border-color:#1646c5;color:#fff}
.editorial-submit{width:100%;height:64px;margin-top:12px;padding:0;border:0;border-top:1px solid #111;border-bottom:1px solid #111;background:#fff;display:flex;align-items:center;justify-content:space-between;color:#111;font:600 clamp(1.25rem,2vw,1.9rem) "Outfit",sans-serif;text-transform:uppercase;cursor:pointer;transition:color .25s ease,padding .25s ease}.editorial-submit:hover{color:#1646c5;padding-inline:8px}.editorial-submit span{font-size:28px}.form-contact-line{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:60px;padding-top:10px;border-top:1px solid #bbb;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.form-contact-line span{text-align:right}.editorial-form .form-status{color:#1646c5}
.contact-network{padding:125px 0 140px;overflow:hidden}.network-composition{position:relative;min-height:920px;margin-top:60px}.network-composition h2{position:absolute;left:0;right:0;top:50%;z-index:2;transform:translateY(-50%);font-family:"Outfit",Arial,sans-serif;font-size:clamp(5rem,12.5vw,13.5rem);font-weight:600;line-height:.72;letter-spacing:-.085em;text-transform:uppercase;pointer-events:none}.network-composition h2 span{display:block}.network-composition h2 span:last-child{text-align:right}.network-image{position:absolute;left:34%;top:0;width:39%;height:100%}.network-image img{width:100%;height:100%;object-fit:cover;object-position:center 35%}.network-image figcaption{margin-top:7px;font-size:10px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.network-copy{position:absolute;right:0;top:6%;width:22%;font-size:14px;line-height:1.4}.network-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #aaa;border-bottom:1px solid #aaa}.network-stats div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;min-height:76px;padding:0 18px;border-right:1px solid #ccc}.network-stats div:last-child{border:0}.network-stats strong{font:500 2.1rem "Outfit",sans-serif}.network-stats span{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;text-align:right}
.contact-faq{padding:120px 0}.faq-editorial-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:8vw;align-items:start;margin-top:58px}.contact-faq .contact-wide-title{font-size:clamp(4.8rem,9.4vw,10.5rem);white-space:nowrap}.faq-list{border-top:1px solid #111}.contact-faq .faq-item{min-height:auto;padding:0;background:#fff;color:#111;border-bottom:1px solid #aaa}.contact-faq .faq-item::before{display:none}.contact-faq .faq-item summary{position:relative;padding:21px 42px 21px 0;font:600 clamp(1rem,1.4vw,1.35rem) "Outfit",sans-serif;line-height:1.15;letter-spacing:-.02em;text-transform:none}.contact-faq .faq-item summary::after{content:"+";position:absolute;right:4px;top:17px;font-size:28px;font-weight:300}.contact-faq .faq-item[open] summary::after{content:"−"}.contact-faq .faq-item p{max-width:560px;margin:0;padding:0 42px 24px 0;color:#555;font-size:14px;line-height:1.5}
.contact-close{padding:120px 0 150px}.contact-close-link{display:flex;align-items:center;justify-content:space-between;border-bottom:8px solid #1646c5;font:500 clamp(6rem,16vw,17rem) "Outfit",sans-serif;line-height:.88;letter-spacing:-.09em;text-transform:uppercase}.contact-close-link b{font-size:.35em;font-weight:400;transition:transform .3s ease}.contact-close-link:hover b{transform:translate(10px,-10px)}.contact-close p{margin-top:18px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;text-align:right}
@media(max-width:900px){.contact-routes,.contact-manifesto,.contact-form-editorial,.contact-network,.contact-faq,.contact-close{padding-block:80px}.route-gallery{grid-template-rows:100px 150px 190px 120px}.route-index{grid-template-columns:1fr 1fr}.route-index a:nth-child(2){border-right:0}.route-index a:nth-child(-n+2){border-bottom:1px solid #d0d0d0}.manifesto-line{margin-left:0}.manifesto-notes{grid-template-columns:1fr 1fr}.manifesto-notes>div{display:none}.editorial-form-layout{grid-template-columns:1fr}.form-portrait{position:relative;top:auto}.form-portrait img{height:65vw}.network-composition{min-height:700px}.network-image{left:25%;width:50%}.network-copy{width:26%}.faq-editorial-grid{grid-template-columns:1fr;gap:40px}.contact-faq .contact-wide-title{white-space:normal}}
@media(max-width:620px){.contact-editorial-wrap{width:calc(100vw - 28px)}.editorial-meta{font-size:9px}.contact-wide-title{font-size:clamp(3.5rem,19vw,6rem)}.route-gallery{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:280px 170px 270px;min-height:0;gap:28px 8px}.route-frame-main{grid-column:1/3;grid-row:1;margin:0}.route-frame-helmet{grid-column:1;grid-row:2;margin:0}.route-message{grid-column:2;grid-row:2;padding:0}.route-message p{font-size:1rem}.route-message a{margin-top:14px}.route-frame-luggage{grid-column:1;grid-row:3;margin:0}.route-frame-case{grid-column:2;grid-row:3;margin:70px 0 0}.route-index{margin-top:54px}.route-index a{font-size:10px;padding:0 8px;grid-template-columns:24px 1fr auto}.manifesto-line{font-size:2.25rem;text-align:left;margin:46px 0 65px}.manifesto-notes{grid-template-columns:1fr;gap:30px}.editorial-form .form-grid{grid-template-columns:1fr}.form-contact-line{grid-template-columns:1fr;gap:10px}.form-contact-line span{text-align:left}.network-composition{min-height:620px;margin-top:35px}.network-image{left:8%;width:70%;height:78%}.network-copy{right:0;top:auto;bottom:0;width:55%;background:#fff;padding:12px}.network-composition h2{font-size:20vw;top:43%}.network-stats{grid-template-columns:1fr 1fr}.network-stats div:nth-child(2){border-right:0}.network-stats div:nth-child(-n+2){border-bottom:1px solid #ccc}.contact-close-link{font-size:19vw;border-bottom-width:4px}.contact-close p{text-align:left}}
@media(prefers-reduced-motion:reduce){.route-frame img,.editorial-submit,.contact-close-link b{transition:none}}
.contact-wide-title,.manifesto-line,.network-composition h2,.contact-close-link{font-family:"Outfit",Arial,sans-serif!important}

/* Ajustes editoriales solicitados: tipografía de marca y galería humana */
.contact-wide-title,.manifesto-line,.network-composition h2,.contact-close-link{font-family:"Bebas Neue","Barlow Condensed",sans-serif!important;font-weight:400}
.contact-routes .contact-wide-title{max-width:none;white-space:nowrap;line-height:.76;letter-spacing:-.025em}
.route-gallery{grid-template-columns:repeat(12,1fr);grid-template-rows:130px 210px 270px;gap:10px;min-height:630px}
.route-frame-main{grid-column:1/6;grid-row:1/4;margin:0 0 28px}
.route-message{grid-column:6/9;grid-row:1/2;max-width:320px}
.route-frame-luggage{grid-column:7/13;grid-row:2/4;margin:0 0 28px}
.form-portrait img{object-position:50% 28%;filter:none}
@media(max-width:900px){.route-gallery{grid-template-rows:110px 190px 240px;min-height:540px}.route-message{grid-column:6/10}}
@media(max-width:620px){.route-gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 145px 310px;gap:28px 8px}.route-frame-main{grid-column:1/3;grid-row:1;margin:0}.route-message{grid-column:1/3;grid-row:2;padding:0;max-width:100%}.route-frame-luggage{grid-column:1/3;grid-row:3;margin:0}.contact-routes .contact-wide-title{font-size:clamp(4rem,23vw,7rem);white-space:normal}}

/* Portafolio comercial */
.contact-network{padding:120px 0 135px}
.portfolio-feature{display:grid;grid-template-columns:.83fr 1.17fr;min-height:680px;margin-top:44px;border-top:1px solid #aaa;border-bottom:1px solid #aaa}
.portfolio-intro{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(34px,5vw,76px) clamp(28px,5vw,82px) clamp(34px,5vw,64px) 0}
.portfolio-kicker{font:700 10px "Barlow Condensed",sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#1646c5}
.portfolio-intro h2{max-width:7.5ch;margin-top:auto;font-family:"Bebas Neue","Barlow Condensed",sans-serif!important;font-size:clamp(4.8rem,8.2vw,9.2rem);font-weight:400;line-height:.76;letter-spacing:-.025em;text-transform:uppercase}
.portfolio-copy{max-width:470px;margin-top:30px;font-size:15px;line-height:1.5;color:#555}
.portfolio-link{display:flex;align-items:center;justify-content:space-between;width:min(100%,470px);margin-top:34px;padding:13px 0;border-top:1px solid #111;border-bottom:1px solid #111;font:700 11px "Barlow Condensed",sans-serif;letter-spacing:.12em;text-transform:uppercase}
.portfolio-link span{font-size:20px;font-weight:400;transition:transform .25s ease}.portfolio-link:hover span{transform:translate(4px,-4px)}
.portfolio-rider{position:relative;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;background:#f0f0ee}
.portfolio-rider::before{content:"DIST / 04";position:absolute;top:24px;right:26px;font:700 10px "Barlow Condensed",sans-serif;letter-spacing:.15em;color:#777}
.portfolio-rider img{width:96%;height:94%;object-fit:contain;object-position:center bottom;filter:grayscale(.12)}
.portfolio-rider figcaption{position:absolute;left:18px;bottom:16px;font:700 10px "Barlow Condensed",sans-serif;letter-spacing:.12em;text-transform:uppercase}
.portfolio-categories{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid #aaa}
.portfolio-categories article{min-height:190px;padding:22px 24px 28px 0;border-right:1px solid #ccc}
.portfolio-categories article+article{padding-left:24px}.portfolio-categories article:last-child{border-right:0}
.portfolio-categories span{font:700 10px "Barlow Condensed",sans-serif;letter-spacing:.12em;color:#1646c5}
.portfolio-categories h3{margin-top:34px;font-family:"Bebas Neue","Barlow Condensed",sans-serif!important;font-size:clamp(2.1rem,3vw,3.5rem);font-weight:400;line-height:.85;letter-spacing:-.015em;text-transform:uppercase}
.portfolio-categories p{max-width:230px;margin-top:14px;font-size:12px;line-height:1.4;color:#666}
@media(max-width:900px){.portfolio-feature{grid-template-columns:1fr;min-height:0}.portfolio-intro{min-height:550px;padding-right:0}.portfolio-rider{min-height:520px}.portfolio-categories{grid-template-columns:1fr 1fr}.portfolio-categories article:nth-child(2){border-right:0}.portfolio-categories article:nth-child(-n+2){border-bottom:1px solid #ccc}}
@media(max-width:620px){.portfolio-intro{min-height:470px}.portfolio-intro h2{font-size:clamp(4.7rem,23vw,7rem)}.portfolio-rider{min-height:360px}.portfolio-rider img{width:112%;height:100%}.portfolio-categories{grid-template-columns:1fr}.portfolio-categories article,.portfolio-categories article+article{min-height:150px;padding:20px 0;border-right:0;border-bottom:1px solid #ccc}.portfolio-categories article:last-child{border-bottom:0}.portfolio-categories h3{margin-top:20px}}

/* Parallax amplio en todas las imágenes de contenido de Contacto. */
.contact-hero-media,.route-frame,.form-portrait,.portfolio-rider{overflow:hidden}
.contact-hero-media img,.route-frame img,.form-portrait img,.portfolio-rider img{will-change:transform;transition:none!important;backface-visibility:hidden}
.contact-hero-media img,.route-frame img,.form-portrait img{height:118%!important;margin-top:-9%}
.portfolio-rider img{height:106%;margin-bottom:-3%}
@media(prefers-reduced-motion:reduce){.contact-hero-media img,.route-frame img,.form-portrait img,.portfolio-rider img{height:100%!important;margin:0;transform:none!important}}
