/* Agencia Urizar — estilos independientes, enfoque mobile first. */
:root{--navy:#183657;--blue:#344e75;--orange:#bc531b;--paper:#f7f6f2;--muted:#5d6874;--line:#d9dfe3;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--navy);background:var(--white);font-family:Arial,Helvetica,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid var(--orange);outline-offset:5px}a:hover{text-decoration:underline}img{display:block;max-width:100%}.container{width:min(1200px,calc(100% - 40px));margin-inline:auto}.skip{position:fixed;left:20px;top:-80px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}.header{background:#fff;border-bottom:1px solid var(--line)}.header-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:20px;flex-wrap:wrap}.brand{display:flex;align-items:center;gap:12px;font-size:16px;line-height:1.3;letter-spacing:1.5px}.brand strong{color:var(--orange)}.brand small{display:block;font-size:8px;letter-spacing:2px;margin-top:5px}nav{display:flex;gap:24px;align-items:center;font-size:13px;font-weight:600}.nav-contact{border-bottom:2px solid var(--orange);padding-bottom:5px}.hero{background:var(--paper)}.hero-grid{padding-block:50px;display:grid;gap:35px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;line-height:1.6;margin:0 0 24px}.eyebrow>span{display:inline-block;background:var(--orange);height:7px;width:7px;margin-right:8px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,6.2vw,80px);line-height:1.06;letter-spacing:-2.8px;margin-bottom:25px;font-weight:600}em{font-family:Georgia,'Times New Roman',serif;color:var(--orange);font-weight:400}h2{font-size:clamp(30px,3.5vw,45px);line-height:1.16;letter-spacing:-1.3px;font-weight:500;margin-bottom:22px}.lead{font-size:17px;color:var(--muted);max-width:600px}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 20px;font-size:13px;font-weight:700;border-radius:3px}.primary{background:var(--orange);color:white}.primary:hover{background:#994216;text-decoration:none}.text-link{font-size:13px;font-weight:600;display:inline-block}.text-link span{margin-left:10px}.hero-note{border-left:1px solid #cbd1d5;padding:0 0 0 24px;max-width:290px}.hero-note p{font-size:25px;line-height:1.25;margin-bottom:15px}.hero-note>span:not(.note-line){font-size:14px;color:var(--muted)}.hero-note a{display:block;font-size:12px;font-weight:700;margin-top:25px}.hero-note a span{font-weight:400;color:var(--muted)}.note-line{display:block;width:35px;height:3px;background:var(--orange);margin-bottom:25px}.transport-photo{overflow:hidden;background:var(--navy)}.transport-photo img{width:100%;height:auto;aspect-ratio:16/3;object-fit:cover;object-position:top;min-width:0}.values{background:var(--navy);color:#fff}.values .container{display:flex;justify-content:space-between;gap:15px;padding-block:22px;flex-wrap:wrap;font-size:12px;letter-spacing:1px}.values span::before{content:'+';color:#f59a60;margin-right:12px}.section{padding-block:65px}.section-heading{display:grid;gap:0;margin-bottom:30px}.section-heading>p{color:var(--muted);font-size:15px;max-width:300px}.service-grid{display:grid;gap:0}.service-grid article{padding:28px 0;border-top:1px solid var(--line)}.number{display:flex;justify-content:space-between;color:var(--orange);font-size:12px;margin-bottom:24px}.number span{font-size:20px}h3{font-size:21px;line-height:1.3;letter-spacing:-.4px;font-weight:500;margin-bottom:15px}.service-grid p{font-size:14px;color:var(--muted);margin:0}.about{background:var(--paper);padding-block:65px}.about-grid{display:grid;gap:20px}.about-copy{max-width:510px}.about-copy p{color:var(--muted);font-size:15px}.about-copy .large-copy{font-size:24px;line-height:1.4;color:var(--navy)}.about-copy .text-link{margin-top:15px;border-bottom:1px solid var(--orange);padding-bottom:8px}.contact{display:grid;gap:38px}.contact>div>p:not(.eyebrow){color:var(--muted);font-size:15px}.contact .button{margin-top:15px}.contact-details{font-style:normal}.contact-details>div{padding:21px 0;border-bottom:1px solid var(--line)}.contact-details>div>span{display:block;font-size:10px;letter-spacing:1.6px;color:var(--muted);margin-bottom:9px}.contact-details strong{font-size:23px;font-weight:500}.contact-details small{font-size:14px}.contact-details a{display:flex;justify-content:space-between;gap:10px;font-size:23px}.contact-details a.email{font-size:clamp(13px,2vw,19px);overflow-wrap:anywhere}.contact-details a span{color:var(--orange)}footer{background:var(--navy);color:white;padding-block:28px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap}.footer-inner>span{font-size:13px;letter-spacing:1.5px}.footer-inner p,.footer-inner a{font-size:11px;margin:0;color:#d5dce5}@media(min-width:640px){.service-grid{grid-template-columns:repeat(2,1fr);gap:30px}.header-inner{flex-wrap:nowrap}.container{width:min(1200px,calc(100% - 64px))}}@media(min-width:960px){.hero-grid{grid-template-columns:1fr 250px;gap:80px;align-items:center;padding-block:65px}.section{padding-block:90px}.section-heading{grid-template-columns:1fr 300px;align-items:end;gap:50px}.service-grid{grid-template-columns:repeat(4,1fr);gap:34px}.about{padding-block:80px}.about-grid,.contact{grid-template-columns:1fr 1fr;gap:100px}.contact-details{padding-top:10px}.hero-note{margin-top:24px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media(max-width:380px){nav{gap:18px}.container{width:calc(100% - 32px)}h1{font-size:39px}.button{gap:12px}}

/* Adaptación móvil: columnas flexibles y controles táctiles. */
.hero-grid > *, .about-grid > *, .contact > *, .section-heading > *, .service-grid > * { min-width: 0; }

.contact-details a { min-height: 44px; align-items: center; }
.contact-details a span { flex-shrink: 0; }
@media (max-width: 639px) {
  html { scroll-padding-top: 24px; }
  .container { width: calc(100% - 36px); }
  .header-inner { gap: 14px; padding-block: 16px 8px; }
  .brand { font-size: 15px; }
  nav { width: 100%; justify-content: space-between; gap: 12px; border-top: 1px solid var(--line); padding-top: 8px; }
  nav a { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding-inline: 8px; }
  .nav-contact { gap: 10px; padding-bottom: 0; }
  .hero-grid { padding-block: 36px; gap: 30px; }
  h1 { font-size: clamp(36px, 9.7vw, 58px); letter-spacing: -1.5px; line-height: 1.08; }
  h2 { font-size: clamp(28px, 7.3vw, 38px); letter-spacing: -.8px; }
  h2 br, h3 br { display: none; }
  .eyebrow { font-size: 10px; letter-spacing: 1.4px; margin-bottom: 18px; }
  .lead { font-size: 16px; }
  .actions { flex-direction: column; align-items: stretch; gap: 12px; margin-top: 24px; }
  .button { width: 100%; min-height: 50px; font-size: 13px; gap: 12px; }
  .actions .text-link { min-height: 44px; display: flex; align-items: center; }
  .hero-note { max-width: none; padding-left: 18px; }
  .hero-note p { font-size: 21px; }
  .note-line { margin-bottom: 14px; }
  .values .container { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px 8px; font-size: 11px; letter-spacing: .2px; padding-block: 20px; }
  .values span::before { margin-right: 7px; }
  .section, .about { padding-block: 44px; }
  .service-grid { grid-template-columns: minmax(0, 1fr); }
  .service-grid article { padding-block: 22px; }
  .number { margin-bottom: 14px; }
  .about-grid, .contact { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .about-copy .large-copy { font-size: 21px; }
  .contact-details a { font-size: 22px; }
  .contact-details a.email { font-size: clamp(13px, 3.8vw, 18px); }
  .footer-inner { flex-direction: column; align-items: flex-start; gap: 12px; }
  .footer-inner a { min-height: 44px; display: inline-flex; align-items: center; }
}
@media (min-width: 640px) and (max-width: 1023px) {
  .hero-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .hero-note { max-width: none; }
  .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .about-grid, .contact { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .about-copy { max-width: none; }
  .section-heading { grid-template-columns: minmax(0, 1fr); }
}

/* Logo original: encuadre de la imagen suministrada, sin redibujar la marca. */
.brand-logo { display: block; position: relative; width: 112px; height: 112px; overflow: hidden; border-radius: 50%; flex-shrink: 0; }
.brand-logo img { position: absolute; width: 228.57143%; max-width: none; height: auto; left: -91.42857%; top: -10%; }
.header-inner { padding-block: 10px; }
.menu-toggle { display: none; }
@media (max-width: 767px) {
  .header-inner { flex-wrap: wrap; gap: 0 16px; padding-block: 8px; }
  .brand-logo { width: 90px; height: 90px; }
  .header.nav-ready .menu-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 46px; padding: 10px 13px; border: 1px solid var(--line); border-radius: 4px; color: var(--navy); background: white; font: inherit; font-size: 14px; cursor: pointer; }
  .menu-toggle:focus-visible { outline: 3px solid var(--orange); outline-offset: 4px; }
  .menu-icon { width: 20px; height: 18px; display: flex; flex-direction: column; justify-content: space-between; }
  .menu-icon span { width: 20px; height: 2px; background: currentColor; }
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(2) { opacity: 0; }
  .menu-toggle[aria-expanded="true"] .menu-icon span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
  .header nav { flex-basis: 100%; width: 100%; flex-direction: column; align-items: stretch; gap: 0; border-top: 1px solid var(--line); margin-top: 8px; padding-block: 8px; }
  .header nav a { display: flex; min-height: 48px; align-items: center; justify-content: space-between; padding: 12px; border-bottom: 0; }
  .header nav a:hover { background: var(--paper); }
  .header.nav-ready nav:not(.is-open) { display: none; }
}
