/* Expanded FN Global experience */
:root{--premium-teal:#58ded0}
[hidden]{display:none!important}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.hero{background:#081b2c;min-height:840px;overflow:hidden;padding:180px 0 145px}
.hero::after{display:none}
.hero>.wrap{position:relative;z-index:3;pointer-events:none}
.hero-content{max-width:620px;pointer-events:auto}
.hero h1{font-size:clamp(52px,5.8vw,82px);max-width:640px;line-height:1.04;letter-spacing:-.055em}
.hero h1 em{color:var(--premium-teal)}
.hero p{max-width:470px;font-size:15px}
.hero .eyebrow{color:#addbd5}
.hero .btn-primary{background:var(--premium-teal)}
.hero-visual{position:absolute;inset:0;z-index:0;border:0;overflow:hidden}
.hero-photo{position:absolute;inset:0;background:url('../img/hero-navio.jpg') 62% center/cover;filter:saturate(.8)}
.hero-visual::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,27,44,.96) 0%,rgba(8,27,44,.82) 36%,rgba(8,27,44,.32) 75%,rgba(8,27,44,.25)),linear-gradient(0deg,rgba(8,27,44,.75),transparent 35%)}
.photo-caption{display:none}
.hero-coordinate{position:absolute;z-index:2;right:32px;bottom:36px;display:flex;flex-direction:column;gap:6px;align-items:flex-end;font-family:'Space Grotesk',sans-serif;font-size:11px;letter-spacing:.12em;color:#d5e3ec}
.hero-signature{display:flex;align-items:center;gap:12px;margin-top:50px;color:#9fb7c5;font-size:11px;letter-spacing:.04em}
.status-dot{width:6px;height:6px;flex-shrink:0;background:var(--premium-teal);border-radius:50%;box-shadow:0 0 0 5px #58ded012}
.route-layer{left:46%;z-index:1;opacity:.65}
.hero-scroll{z-index:4}
.about{padding:90px 0}
.about-grid{gap:90px}
.about-text p:first-child{font-size:30px}
.services{background:#f0f4f4}
.service-grid{gap:0;background:var(--line);border:1px solid var(--line)}
.service-card{border:0;border-radius:0;padding:38px 32px;min-height:320px;display:flex;flex-direction:column;margin:0 1px 1px 0}
.service-card:hover{transform:none;background:#f7fcfb;box-shadow:none}
.service-card .icon{border-radius:0;background:transparent;justify-content:flex-start;width:44px;height:44px}
.service-card .icon svg{width:32px;height:32px}
.service-card p{margin-bottom:24px}
.service-explore{margin-top:auto;width:100%;display:flex;justify-content:space-between;align-items:center;background:none;border:0;border-top:1px solid var(--line);padding:17px 0 0;color:var(--teal-500);font-family:'Inter',sans-serif;font-size:12px;font-weight:600;cursor:pointer;text-align:left}
.service-explore>span:last-child{font-size:21px;transition:transform .2s}
.service-explore:hover>span:last-child{transform:translate(3px,-3px)}
.process{background:white}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:64px}
.process-grid article{border-top:1px solid #bad4d3;position:relative;padding:28px 0 0}
.process-grid article::before{content:'';position:absolute;left:0;top:-4px;width:7px;height:7px;background:var(--teal-500);border-radius:50%}
.process-number{font-family:'Space Grotesk',sans-serif;font-size:12px;letter-spacing:.08em;color:var(--teal-500)}
.process-grid h3{font-size:25px;font-weight:500;margin:22px 0 14px;letter-spacing:-.03em}
.process-grid p{font-size:14px;line-height:1.85;color:var(--ink-soft)}
.network{background:#0b2134;color:white;overflow:hidden;padding:88px 0}
.network>.wrap{display:grid;grid-template-columns:.8fr 1.4fr;gap:36px;align-items:center}
.network .eyebrow{color:var(--premium-teal)}
.network .eyebrow::before{background:var(--premium-teal)}
.network h2{font-size:clamp(34px,3.8vw,49px);font-weight:500;line-height:1.1;letter-spacing:-.045em;margin:0 0 24px}
.network-intro>p{font-size:14px;color:#b9cbd8;line-height:1.85}
.region-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:32px}
.region-list>span{display:flex;gap:9px;align-items:center;font-size:12px;color:#d5e5ec}
.region-list i{width:4px;height:4px;border-radius:50%;background:var(--premium-teal)}
.network-map svg{display:block;width:100%;height:auto}
.map-note{color:#96adbd;font-size:10px;line-height:1.7;max-width:440px;margin:18px auto 0;text-align:center}
.diff{background:#eff4f3;color:var(--navy-800)}
.diff::before{display:none}
.diff .eyebrow{color:var(--teal-500)}
.diff .eyebrow::before{background:var(--teal-500)}
.diff .section-head h2{color:var(--navy-800)}
.diff .section-head p,.diff-card p{color:var(--ink-soft)}
.diff-card{border-color:#c5d7d6}
.diff-card .idx{color:var(--teal-500)}
.faq{background:#fff}
.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}
.faq h2{font-size:44px;line-height:1.15;font-weight:500;letter-spacing:-.04em;max-width:340px;color:var(--navy-800)}
.faq-list{border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;padding:24px 0;display:flex;justify-content:space-between;gap:26px;font-size:15px;font-weight:500;color:var(--navy-800)}
.faq summary::-webkit-details-marker{display:none}
.faq summary>span:last-child{font-size:23px;color:var(--teal-500);line-height:1;transition:transform .2s}
.faq details[open] summary>span:last-child{transform:rotate(45deg)}
.faq details p{padding:0 34px 25px 0;font-size:14px;line-height:1.85;color:var(--ink-soft)}
.quote{background:#0c293b;color:#fff;position:relative;overflow:hidden}
.quote-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px;position:relative}
.quote .eyebrow{color:var(--premium-teal)}
.quote .eyebrow::before{background:var(--premium-teal)}
.quote-intro h2{font-size:clamp(40px,4.5vw,60px);line-height:1.05;letter-spacing:-.045em;font-weight:500;margin-bottom:24px}
.quote-intro p{font-size:15px;color:#bad0dc;line-height:1.85;max-width:400px}
.quote-decoration{font-family:'Space Grotesk',sans-serif;font-size:220px;font-weight:400;color:#58ded019;line-height:1;position:absolute;left:80px;bottom:-40px;pointer-events:none}
#quoteForm{background:white;color:var(--ink);padding:36px;border-radius:3px;border:0;position:relative;z-index:1}
.quote-progress{display:flex;gap:24px;border-bottom:1px solid var(--line);margin-bottom:28px}
.quote-progress>span{flex:1;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#788694;padding-bottom:16px;border-bottom:2px solid transparent}
.quote-progress>span.active{color:var(--teal-500);border-color:var(--teal-500);font-weight:600}
#quoteForm fieldset{border:0;min-width:0}
.quote-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.quote-field{margin-bottom:20px}
.quote-field label{display:block;font-size:11px;font-weight:600;margin-bottom:8px;color:var(--navy-800)}
.quote-field input,.quote-field textarea,.quote-field select{width:100%;min-width:0;background:#f7f9f9;border:1px solid #d1dfe2;border-radius:2px;font-family:'Inter',sans-serif;font-size:13px;color:var(--ink);padding:13px 12px;min-height:46px}
.quote-field textarea{min-height:105px;resize:vertical}
.quote-next,.quote-send{background:var(--teal-500);color:white;width:100%;border:0;border-radius:2px;min-height:50px;padding:14px 18px;font-family:'Inter',sans-serif;font-weight:600;font-size:13px;cursor:pointer;text-align:left}
.quote-next,.quote-send{display:flex;align-items:center;justify-content:space-between;gap:12px;line-height:1.45}
.quote-next::after,.quote-send::after{content:'↗';font-size:19px;flex-shrink:0}
.quote-next:hover,.quote-send:hover{background:#09676e}
.quote-buttons{display:flex;gap:12px;align-items:stretch}
.quote-buttons .quote-send{flex:1;min-width:0;width:auto}
.quote-back{border:1px solid var(--line);background:white;padding:14px 18px;border-radius:2px;color:var(--navy-800);font-family:'Inter',sans-serif;cursor:pointer}
.quote-note,.quote-status{font-size:11px;color:var(--ink-soft);line-height:1.7;margin-top:15px}
.quote-status:empty{display:none}
.contact{background:#f5f7f7}
.contact form{background:#fff}
.floating-contact{position:fixed;right:max(24px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));background:#087d82;color:#fff;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;z-index:90;border:1px solid #b1ece580;box-shadow:0 6px 24px #08152730;transition:transform .2s;padding:0;line-height:0;isolation:isolate}
.floating-contact:hover{transform:translateY(-4px)}
.floating-contact .whatsapp-icon{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:block;width:28px;height:28px;margin:0;padding:0;object-fit:contain;pointer-events:none}
.quote-send{justify-content:center;text-align:center}
.quote-send::after{content:none}
.quote-send .whatsapp-icon{display:block;width:20px;height:20px;flex:0 0 20px;margin:0;object-fit:contain}
.quote-send .quote-send-label{min-width:0;line-height:1.5}
dialog{margin:auto;width:min(600px,calc(100% - 36px));max-height:85svh;border:0;border-radius:4px;background:#fff;padding:48px;box-shadow:0 30px 100px #08152750;color:var(--ink);overflow-y:auto}
dialog::backdrop{background:#041420bb;backdrop-filter:blur(5px)}
.dialog-close{position:absolute;right:18px;top:16px;background:none;border:1px solid var(--line);width:36px;height:36px;font-size:25px;color:var(--navy-800);cursor:pointer}
dialog h2{font-size:36px;font-weight:500;letter-spacing:-.04em;line-height:1.1;margin:12px 0 22px;color:var(--navy-800)}
.dialog-intro{font-size:14px;line-height:1.85;color:var(--ink-soft)}
.dialog-bullets{list-style:none;margin:28px 0}
.dialog-bullets li{border-top:1px solid var(--line);padding:13px 0;font-size:14px;display:flex;gap:12px}
.dialog-bullets li::before{content:'↗';color:var(--teal-500)}
.dialog-cta{color:var(--navy-800)}
@media(min-width:1600px){.hero-photo{background-position:center}}
@media(max-width:1100px){.hero-content{max-width:540px}.hero h1{font-size:64px}.hero-visual{inset:0}.hero p{max-width:430px}.quote-layout,.faq-layout{gap:44px}.network>.wrap{grid-template-columns:1fr 1.3fr}}
@media(max-width:920px){.hero{min-height:800px;padding:155px 0 120px}.hero-content{max-width:580px}.hero-visual{inset:0;opacity:1}.hero-photo{clip-path:none}.photo-caption{display:none}.hero>.wrap{background:transparent}.hero-signature{margin-top:36px}.route-layer{left:30%}.hero-coordinate{bottom:25px;font-size:9px}.process-grid{grid-template-columns:repeat(2,1fr);gap:38px}.network>.wrap{grid-template-columns:1fr;gap:40px}.network-intro{max-width:620px}.network h2{max-width:520px}.region-list{grid-template-columns:repeat(3,1fr)}.network-map{max-width:750px;width:100%;margin:auto}.faq-layout,.quote-layout{grid-template-columns:1fr;gap:36px}.faq h2{max-width:500px}.quote-intro p{max-width:600px}.quote-decoration{display:none}.about-text p:first-child{font-size:28px}}
@media(max-width:600px){.hero{min-height:760px;padding:140px 0 170px}.hero h1{font-size:clamp(46px,12vw,64px)}.hero-visual{inset:0;opacity:1}.hero-photo{background-position:62% center}.hero>.wrap{background:transparent}.hero-visual::after{background:linear-gradient(90deg,#081b2ce8,#081b2c85),linear-gradient(0deg,#081b2ce0,transparent 50%)}.hero p{max-width:100%}.hero-coordinate{right:22px;bottom:25px}.hero-signature{font-size:10px}.hero-scroll{bottom:26px}.route-layer{left:0;opacity:.35}.about{padding:64px 0}.about-text p:first-child{font-size:25px}.service-card{min-height:0;padding:28px}.process-grid{gap:32px 24px;margin-top:40px}.process-grid h3{font-size:21px}.process-grid p{font-size:13px}.network{padding:64px 0}.network h2{font-size:36px}.region-list{grid-template-columns:1fr 1fr}.network-map{margin:0 -12px;width:calc(100% + 24px)}.faq h2{font-size:36px}.faq summary{font-size:14px;padding:22px 0}.quote-intro h2{font-size:43px}.quote-layout{gap:30px}#quoteForm{padding:24px}.quote-pair{grid-template-columns:1fr;gap:0}.quote-buttons{gap:8px}.quote-send{font-size:12px;padding:14px 12px}.quote-back{padding:14px 12px;font-size:12px}.floating-contact{width:48px;height:48px;right:16px;bottom:16px}dialog{padding:44px 26px 28px}dialog h2{font-size:30px}.contact-info h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.floating-contact,.service-explore>span:last-child{transition:none}.floating-contact:hover,.service-explore:hover>span:last-child{transform:none}}

