/*
Theme Name: ADVOCAR Premium
Version: 2.0.0
Requires PHP: 8.0
Text Domain: advocar-premium
*/

/* Local font subsets */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400 600;
  font-display: swap;
  src: url(assets/font-0.woff2) format('woff2');
  unicode-range: U+20-21, U+25, U+28-29, U+2b-3b, U+3f, U+41-5a, U+61-7a, U+ab, U+bb, U+c4, U+cb, U+cf, U+d6, U+dc, U+e4, U+eb, U+ef, U+f6, U+fc, U+ff, U+102-103, U+114-115, U+11e-11f, U+12c-12d, U+14e-14f, U+16c-16d, U+178, U+306, U+308, U+401, U+406-407, U+40e, U+410-44f, U+451, U+456-457, U+45e, U+492-493, U+49a-49b, U+4a2-4a3, U+4ae-4b1, U+4ba-4bb, U+4c1-4c2, U+4d0-4d3, U+4d6-4df, U+4e4-4ed, U+4f0-4f1, U+4f4-4f5, U+4f8-4f9, U+1e26-1e27, U+1e84-1e85, U+1e8c-1e8d, U+1e97, U+2013-2014, U+20b8, U+2193, U+2197;
}
@font-face {
  font-family: 'Noto Serif';
  font-style: normal;
  font-weight: 400 500;
  font-stretch: 100%;
  font-display: swap;
  src: url(assets/font-1.woff2) format('woff2');
  unicode-range: U+20-21, U+25, U+28-29, U+2b-3b, U+3f, U+41-5a, U+61-7a, U+ab, U+bb, U+c4, U+cb, U+cf, U+d6, U+dc, U+e4, U+eb, U+ef, U+f6, U+fc, U+ff, U+102-103, U+114-115, U+11e-11f, U+12c-12d, U+14e-14f, U+16c-16d, U+178, U+306, U+308, U+401, U+406-407, U+40e, U+410-44f, U+451, U+456-457, U+45e, U+492-493, U+49a-49b, U+4a2-4a3, U+4ae-4b1, U+4ba-4bb, U+4c1-4c2, U+4d0-4d3, U+4d6-4df, U+4e4-4ed, U+4f0-4f1, U+4f4-4f5, U+4f8-4f9, U+1e26-1e27, U+1e84-1e85, U+1e8c-1e8d, U+1e97, U+2013-2014, U+20b8, U+2193, U+2197;
}

/* Base components */





:root {
    --paper: #f5f1e8;
    --ink: #242420;
    --quiet: #575650;
    --line: #c9c2b4;
    --accent: #a43723;
    --dark: #202220;
    --warm: #f38767;
    --gutter: clamp(18px, 4vw, 64px);
    --mono: ui-monospace, Consolas, "Liberation Mono", monospace;
    --font: Manrope, Arial, sans-serif;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 500 16px/1.65 var(--font); }
a { color: inherit; text-underline-offset: .25em; text-decoration-thickness: 1px; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
    outline: 3px solid var(--accent);
    outline-offset: 4px;
}
img, svg { max-width: 100%; }
img { height: auto; }
button, input, select, textarea { font: inherit; }
h1, h2, h3, p { margin-block-start: 0; }
h2, h3 { line-height: 1.12; letter-spacing: -.04em; }
h2 { font-size: clamp(1.9rem, 4vw, 3.7rem); font-weight: 750; margin-block-end: .63em; max-width: 23ch; }
h3 { font-size: clamp(1.15rem, 2vw, 1.58rem); font-weight: 780; margin-block-end: .5em; }
p { margin-block-end: 1em; }
[id] { scroll-margin-block-start: 24px; }
.shell { width: min(calc(100% - var(--gutter) * 2), 1320px); margin-inline: auto; }
.skip-link { position: fixed; z-index: 99999; inset: .5rem auto auto .5rem; padding: .75rem 1rem; background: var(--ink); color: white; transform: translateY(-200%); }
.skip-link:focus { transform: none; }
.site-header { border-bottom: 1px solid var(--line); }
.site-header__inner { min-height: 75px; display: flex; gap: 28px; align-items: center; justify-content: space-between; }
.brand { display: inline-flex; align-items: center; gap: 7px; font-size: 1.37rem; font-weight: 800; letter-spacing: -.075em; line-height: 1; text-decoration: none; }
.brand-mark { flex: none; }
.site-nav { display: flex; gap: clamp(14px, 3vw, 38px); align-items: center; }
.site-nav a, .header-phone { font-size: .84rem; font-weight: 800; text-decoration: none; padding-block: 10px; }
.site-nav a { position: relative; }
.site-nav a::after { content: ""; position: absolute; inset: auto 0 3px; border-bottom: 2px solid var(--accent); transform: scaleX(0); transform-origin: left; transition: transform 150ms ease-out; }
.site-nav a:hover::after, .site-nav a[aria-current="page"]::after { transform: none; }
.site-nav a[aria-current="page"], .header-phone:hover { color: var(--accent); }
.header-phone { white-space: nowrap; }
.eyebrow { font: 700 .74rem/1.4 var(--mono); letter-spacing: .08em; text-transform: uppercase; color: var(--accent); }
.signal { display: inline-block; width: .58em; height: .58em; background: currentColor; transform: rotate(45deg); flex: none; }
.hero { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); align-items: stretch; margin-block: clamp(26px, 4vw, 54px) 22px; border: 1px solid var(--line); }
.hero-copy { padding: clamp(25px, 4.1vw, 64px); display: flex; flex-direction: column; justify-content: center; min-width: 0; }
.hero-kicker { display: flex; flex-wrap: wrap; align-items: center; column-gap: 10px; row-gap: 4px; margin-bottom: clamp(20px, 3vw, 42px); }
.hero h1 { font-weight: 800; font-size: clamp(2.25rem, 5.25vw, 5rem); letter-spacing: -.088em; line-height: .98; margin: 0 0 clamp(19px, 2.6vw, 37px); }
.hero h1 em { display: block; margin-top: .04em; font: italic 400 1.04em/.98 Georgia, "Times New Roman", serif; letter-spacing: -.082em; color: var(--accent); }
.hero--fleet h1, .hero--construction h1 { font-size: clamp(2.2rem, 4.8vw, 4.65rem); }
.hero-intro { color: var(--quiet); font-size: clamp(.96rem, 1.25vw, 1.12rem); max-width: 43ch; margin-bottom: 26px; }
.hero-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 11px 22px; }
.button { display: inline-flex; min-height: 50px; align-items: center; justify-content: space-between; gap: 14px; padding: .68rem 1.05rem; font-size: .88rem; line-height: 1.4; font-weight: 800; text-decoration: none; }
.button svg, .text-link svg { flex: none; transition: transform .17s ease-out; }
.button:hover svg, .text-link:hover svg { transform: translateX(3px); }
.button--primary { background: var(--accent); color: white; }
.button--primary:hover { background: #842b1b; }
.text-link { display: inline-flex; align-items: center; gap: 5px; font-weight: 800; font-size: .86rem; min-height: 44px; }
.hero-art {
    position: relative; isolation: isolate; overflow: hidden; display: grid; place-items: center;
    min-height: 410px; padding: 22px 12px; color: #f0e9db; background-color: var(--dark);
    background-image: linear-gradient(#ffffff0a 1px, transparent 1px), linear-gradient(90deg, #ffffff0a 1px, transparent 1px);
    background-size: 23px 23px;
}
.hero-art::before { content: ""; position: absolute; z-index: -1; inset: 12px; border: 1px solid #efead52f; pointer-events: none; }
.drawing { display: block; width: 100%; height: auto; max-height: 505px; }
.drawing-axis, .drawing-ghost, .drawing-solid, .drawing-accent { stroke-width: 1.15; }
.drawing-axis { stroke: #6d7067; stroke-dasharray: 3 6; }
.drawing-ghost { stroke: #939383; }
.drawing-solid { stroke: #e1d7bd; stroke-width: 1.6; }
.drawing-accent { stroke: var(--warm); stroke-width: 2.2; }
.drawing-dot { fill: var(--warm); }
.drawing-trace { stroke-dasharray: 1; animation: draw-path 2.4s cubic-bezier(.2,.6,.28,1) both; }
.drawing-dot { transform-box: fill-box; transform-origin: center; animation: draw-point 1.25s .7s ease-out both; }
@keyframes draw-path { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
@keyframes draw-point { from { opacity: 0; transform: scale(.2); } 60% { opacity: 1; transform: scale(1.6); } to { opacity: 1; transform: scale(1); } }

.chapter { padding-block: clamp(42px, 6.2vw, 90px); border-bottom: 1px solid var(--line); }
.chapter:last-child { border-bottom: 0; }
.intro { max-width: 67ch; color: var(--quiet); font-size: clamp(1.02rem, 1.55vw, 1.23rem); }
.service-grid, .sector-grid, .chapter-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(17px, 2.6vw, 36px); }
.service-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0 clamp(19px, 3.4vw, 52px); margin-top: 28px; }
.service { border-top: 1px solid var(--line); padding-block: 19px 10px; }
.service p { max-width: 48ch; }
.service p:last-child { margin-bottom: 0; }
.sector-grid { gap: 1px; background: var(--line); border: 1px solid var(--line); }
.sector { position: relative; display: flex; flex-direction: column; min-height: 255px; isolation: isolate; overflow: hidden; padding: clamp(20px, 3.3vw, 49px); background: #ebe5d8; text-decoration: none; }
.sector::after { content: ""; position: absolute; z-index: -1; inset: 0; opacity: .45; transition: transform .24s ease-out; }
.sector--fleet::after { background: repeating-radial-gradient(ellipse at 117% -27%, transparent 0 14px, #a59e8a 15px 16px, transparent 17px 24px); mask-image: linear-gradient(120deg, transparent 42%, black); }
.sector--build::after { background: repeating-linear-gradient(148deg, transparent 0 15px, #a59e8a 16px 17px, transparent 18px 26px); mask-image: linear-gradient(110deg, transparent 57%, black); }
.sector:hover { background: #e5dece; }
.sector:hover::after { transform: scale(1.08); }
.sector h3 { font-size: clamp(1.45rem, 2.6vw, 2.3rem); max-width: 16ch; margin-top: .45em; }
.sector p { max-width: 36ch; margin-bottom: 1.3em; }
.sector > span:last-child { margin-top: auto; color: var(--accent); font-size: .88rem; font-weight: 800; text-decoration: underline; text-underline-offset: .28em; }
.chapter--ink { background: var(--dark); color: #f5f1e8; padding-inline: clamp(22px, 5vw, 72px); border: 0; }
.chapter--ink .eyebrow, .chapter--ink .checklist li::before { color: var(--warm); }
.chapter--ink .service { border-color: #73736a; }
.chapter--ink .intro { color: #ded8cb; }
.chapter--ink .chapter-grid + p, .chapter--ink .service-grid + p { margin-top: 20px; color: #ded8cb; }
.chapter--ink :focus-visible, .site-footer :focus-visible, .contact-section :focus-visible { outline-color: var(--warm); }
.numbered { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(15px, 2.6vw, 38px); padding: 0; margin: 0; list-style: none; }
.numbered > li { border-top: 1px solid var(--line); padding-top: 16px; }
.checklist { padding: 0; list-style: none; }
.checklist li { position: relative; padding-left: 19px; margin-bottom: .6em; }
.checklist li::before { content: "+"; position: absolute; left: 0; color: var(--accent); font-weight: 800; }
.feature-note { border-inline-start: 3px solid var(--accent); padding: 17px 24px; margin-block: 22px 0; background: #ebe5d8; max-width: 76ch; }
.feature-note > :last-child { margin-bottom: 0; }
.profile { display: grid; grid-template-columns: minmax(160px, 330px) minmax(0, 1fr); gap: clamp(20px, 5.5vw, 76px); align-items: center; }
.profile img { display: block; width: 100%; aspect-ratio: 3/4; object-fit: cover; object-position: 50% 23%; background: #e5dfd3; }
.profile h2 { margin-block-end: .45em; }
.profile a { color: var(--accent); font-weight: 800; }
.faq { max-width: 880px; border-top: 1px solid var(--line); }
.faq details { border-bottom: 1px solid var(--line); }
.faq summary { position: relative; padding: 15px 46px 15px 0; list-style: none; font-weight: 800; cursor: pointer; min-height: 48px; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; position: absolute; top: 13px; right: 4px; color: var(--accent); font: 500 1.45rem var(--mono); }
.faq details[open] summary::after { content: "−"; }
.faq details > :not(summary) { max-width: 70ch; margin-right: 24px; }
.plain-page { min-height: 55vh; max-width: 840px; padding-block: clamp(35px, 6vw, 84px); }
.plain-page h1 { font-size: clamp(2rem, 5.4vw, 4.4rem); line-height: 1; letter-spacing: -.065em; margin: 16px 0 26px; }
.plain-page h2 { font-size: clamp(1.42rem, 2.6vw, 2.3rem); }
.plain-page .chapter { padding-block: 18px; }

.contact-section { color: var(--paper); background: #2a2b27; border-top: 4px solid var(--accent); }
.contact-inner { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: clamp(26px, 6vw, 90px); padding-block: clamp(36px, 6.5vw, 94px); }
.contact-inner .eyebrow { color: var(--warm); }
.contact-inner .signal { margin-right: .35em; }
.contact-inner h2 { margin: 20px 0; }
.contact-intro { color: #ddd7c9; max-width: 38ch; }
.contact-phone, .contact-wa { display: flex; align-items: center; width: fit-content; gap: 8px; min-height: 44px; }
.contact-phone { font-size: clamp(1.18rem, 2.2vw, 1.65rem); font-weight: 800; }
.contact-wa { font-size: .88rem; }
.contact-form .advocar-form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.contact-form .advocar-form__field { display: grid; gap: 5px; font-size: .9rem; min-width: 0; }
.contact-form .advocar-form__field--wide { grid-column: 1/-1; }
.contact-form label { color: #e9e2d3; font-weight: 700; }
.contact-form :is(input:not([type="checkbox"]):not([type="hidden"]), select, textarea) { display: block; width: 100%; min-width: 0; min-height: 47px; color: #22231e; background: #f6f2e9; border: 1px solid #ccc3b2; border-radius: 0; padding: 9px 12px; font-size: 1rem; }
.contact-form textarea { resize: vertical; min-height: 94px; }
.contact-form .advocar-form__consent { display: flex; align-items: flex-start; gap: 9px; margin-block: 13px; font-size: .79rem; line-height: 1.5; }
.contact-form input[type="checkbox"] { accent-color: var(--warm); width: 17px; height: 17px; flex: none; }
.contact-form .advocar-form__actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.contact-form .advocar-form__submit { min-height: 48px; padding: 9px 21px; color: #fff; background: var(--accent); border: 1px solid #d26147; font-weight: 800; cursor: pointer; }
.contact-form .advocar-form__submit:hover { background: #84331f; }
.contact-form .advocar-form__submit:disabled { opacity: .66; cursor: wait; }
.contact-form .advocar-form__status { font-size: .9rem; color: #f7e6ca; }
.contact-form .advocar-form__fallback { color: #f0ddd4; }
.site-footer { color: #e4ddce; background: #1e1f1c; font-size: .89rem; }
.site-footer .brand { color: var(--paper); }
.footer-main { display: grid; grid-template-columns: 1.1fr 1fr 1fr; gap: 20px; padding-block: 30px; }
.footer-main p { margin: 5px 0 0; }
.footer-main address { font-style: normal; }
.footer-nav { display: flex; flex-direction: column; align-items: flex-start; }
.footer-nav a, .footer-main address a { min-height: 28px; padding-block: 2px; }
.footer-meta { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 8px 25px; border-top: 1px solid #56554b; padding-block: 13px 19px; font-size: .78rem; }

@media (max-width: 1020px) {
    .hero { grid-template-columns: minmax(0, 1.12fr) minmax(0, 1fr); }
    .hero-copy { padding: 28px; }
    .hero-art { min-height: 330px; }
    .header-phone { font-size: .78rem; }
}
@media (max-width: 740px) {
    .site-header__inner { flex-wrap: wrap; gap: 0 14px; min-height: 60px; }
    .site-header__inner > .brand, .site-header__inner > .header-phone { margin-block: 8px; }
    .site-nav { flex: 1 0 100%; order: 3; gap: clamp(10px, 3.1vw, 27px); border-top: 1px solid var(--line); }
    .site-nav a { font-size: .75rem; padding-block: 12px; }
    .hero { grid-template-columns: 1fr; }
    .hero-copy { padding: clamp(19px, 5.3vw, 37px); }
    .hero h1, .hero--fleet h1, .hero--construction h1 { font-size: clamp(2.15rem, 9.2vw, 4.35rem); }
    .hero-art { min-height: 0; height: clamp(228px, 64vw, 370px); padding-block: 17px; }
    .drawing { height: 100%; max-height: 100%; }
    .service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .contact-inner { grid-template-columns: 1fr; }
    .footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .footer-main > div:first-child { grid-column: 1/-1; }
}
@media (max-width: 490px) {
    .sector-grid, .service-grid, .chapter-grid, .numbered { grid-template-columns: 1fr; }
    .sector { min-height: 215px; }
    .service-grid { gap: 6px; }
    .profile { grid-template-columns: 1fr; }
    .profile img { width: min(100%, 260px); }
    .contact-form .advocar-form__grid { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
    *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
}

/* Brand design */

:root{--paper:#fff;--ink:#0b223b;--quiet:#485668;--line:#d5dbe0;--accent:#8c6a23;--dark:#0b223b;--warm:#d8bc79;--font:Inter,Arial,sans-serif;--serif:'Noto Serif',Georgia,serif;--gutter:clamp(20px,5vw,88px)}
body{background:var(--dark);font-family:var(--font)}
h1,h2,h3{font-family:var(--serif);font-weight:500;letter-spacing:-.045em}
.site-header{position:sticky;top:0;z-index:100;background:#fff;color:var(--ink);border-bottom:1px solid #d5dbe0;transition:box-shadow .25s}
.site-header.is-scrolled{box-shadow:0 5px 25px #071b3020}
.site-header__inner{min-height:88px;gap:30px;transition:min-height .25s}
.is-scrolled .site-header__inner{min-height:68px}
.brand{font-family:var(--serif);letter-spacing:.1em;font-size:1.32rem;gap:15px;font-weight:600}
.brand-symbol{font-size:2.8rem;color:var(--ink);border-right:1px solid var(--accent);padding-right:15px;line-height:1.1;letter-spacing:-.1em}
.brand small{display:block;font:500 .56rem/1.4 var(--font);letter-spacing:.16em;text-transform:uppercase;margin-top:5px}
.header-tools{display:flex;align-items:center;gap:18px}.language-switch{font-size:.72rem;font-weight:700;text-decoration:none;border:1px solid var(--line);padding:8px}
.site-nav{gap:clamp(14px,2vw,30px)}.site-nav a{font-size:.8rem;font-weight:600}.header-phone{font-size:.78rem}
.scene{position:fixed;inset:0;z-index:-1;pointer-events:none;background:#0b223b;overflow:hidden}
.scene picture,.scene img{width:100%;height:100%;display:block}.scene img{object-fit:cover;object-position:center}
.scene:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#071b30eb 0%,#071b30c4 32%,#071b3020 80%),linear-gradient(0deg,#071b3055,transparent 50%)}
.hero{position:relative;display:flex;align-items:center;min-height:min(850px,calc(100svh - 88px));margin:0;border:0;color:#fff;background:transparent;padding:90px 0 110px}
.hero-copy{display:block;padding:0}.hero h1{font-size:clamp(3rem,5.7vw,6rem);line-height:1.08;max-width:17ch;font-weight:500;letter-spacing:-.055em;margin:25px 0 30px;text-wrap:balance}
.hero .eyebrow{color:#e2c98c;font-family:var(--font);font-size:.68rem;letter-spacing:.18em}
.hero-intro{color:#edf1f5;font-size:clamp(1rem,1.35vw,1.16rem);max-width:49ch;line-height:1.8;margin-bottom:36px}
.hero-actions{gap:22px}.hero .button--primary{background:#d8bc79;color:#0b223b}.hero .button--primary:hover{background:#ead39b}.button{border-radius:2px;min-height:54px;padding:16px 23px;font-weight:600}
.hero .text-link{color:#fff}.scroll-cue{position:absolute;bottom:27px;left:var(--gutter);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;text-decoration:none}.scroll-cue span{display:inline-block;margin-left:18px;color:#e2c98c}
.content-surface{background:#fff}.chapter{padding-block:clamp(55px,7vw,110px)}.chapter h2{font-size:clamp(2rem,3.65vw,4rem);max-width:24ch;line-height:1.2}.eyebrow{font:600 .68rem/1.5 var(--font);letter-spacing:.15em;color:#80601f}.intro{font-size:1.12rem;line-height:1.8}
.sector-grid{border:0;background:transparent;gap:32px}.sector{min-height:320px;background:#f2f5f7;padding:45px;transition:background .25s,transform .25s}.sector:after{display:none}.sector:hover{background:#e8edf1;transform:translateY(-4px)}.sector h3{font-size:2.1rem}.sector p{color:var(--quiet)}
.service-grid{gap:22px 38px}.service{padding-top:27px;border-top:2px solid #c7ae74}.service h3{font-size:1.35rem;line-height:1.4}.service p{color:var(--quiet);font-size:.95rem}
.chapter--ink{background:#0b223b;color:#fff;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter)}.chapter--ink .service p{color:#e0e7ee}.chapter--ink h2{color:#fff}
.profile{gap:70px}.profile img{border-radius:2px}.profile h2{font-size:clamp(2.5rem,4vw,4.2rem)}.numbered h3{font-size:1.5rem}.feature-note{background:#f6f4ed;border-color:#b3934b}
.faq{max-width:100%}.faq summary{padding-block:22px;font-size:1.03rem;font-weight:600}.faq details>p{line-height:1.8}
.photo-window{min-height:520px;display:flex;align-items:center;color:#fff;background:#071b3033;padding:70px 0}.photo-window p{font-family:var(--serif);font-size:clamp(2.3rem,4.5vw,4.8rem);line-height:1.3;margin:0;max-width:25ch}.photo-window em{color:#e2c98c;font-style:normal}
.contact-section{background:#eef2f5;color:var(--ink)}.contact-inner{gap:clamp(35px,6vw,100px);grid-template-columns:1fr 1fr;padding-block:100px}.contact-inner .eyebrow{color:#80601f}.contact-inner h2{font-size:clamp(2rem,3.2vw,3.3rem);line-height:1.25}.contact-phone{color:var(--ink);font-size:clamp(1.5rem,2vw,2rem)}.contact-wa{color:var(--accent)}.contact-address{margin-top:30px;color:var(--quiet);font-size:.87rem}
.contact-form{background:#fff;padding:35px;border-top:3px solid #b99a53;box-shadow:0 20px 50px #0b223b08}.contact-form input,.contact-form select,.contact-form textarea{background:#fff!important;color:#0b223b!important;border-color:#aab7c4!important}.contact-form .advocar-form__submit{background:#0b223b;color:#fff}.contact-form .advocar-form__consent,.contact-form small{color:#485668}.contact-form a{color:#5d4619}.site-footer{background:#071a2d}.footer-main{padding-block:55px}.footer-main address{font-size:.85rem}.footer-nav a{padding-block:6px;font-size:.87rem}.footer-meta{color:#d5dfe9;border-color:#ffffff26}
@media(min-width:1600px){.shell{width:min(calc(100% - var(--gutter)*2),1440px)}}
@media(max-width:1050px){.site-header__inner{flex-wrap:wrap;gap:0 20px;padding-top:12px}.site-nav{order:3;width:100%;justify-content:center;border-top:1px solid var(--line)}.header-tools{margin-left:auto}.hero{min-height:730px}.hero-copy{padding:0}.scene:after{background:linear-gradient(90deg,#071b30ed,#071b3080)}.hero h1{font-size:clamp(2.8rem,6vw,4.8rem)}}
@media(max-width:740px){.site-header__inner,.is-scrolled .site-header__inner{min-height:72px}.brand{font-size:1rem;gap:10px}.brand-symbol{font-size:2rem;padding-right:10px}.brand small{font-size:.47rem}.header-phone{font-size:.65rem}.header-tools{gap:8px}.language-switch{padding:5px;font-size:.65rem}.site-nav{gap:17px;justify-content:flex-start;overflow-x:auto;white-space:nowrap}.site-nav a{font-size:.7rem;padding-block:13px}.hero{min-height:640px;padding:65px 0 85px}.hero h1,.hero--fleet h1,.hero--construction h1{font-size:clamp(2.65rem,8.6vw,4rem);letter-spacing:-.05em}.hero-copy{padding:0}.hero-intro{font-size:1rem;line-height:1.75}.scene{position:absolute;height:800px}.scene img{object-position:62% center}.scene:after{background:#071b30bc}.photo-window{min-height:350px;background:#102e48}.photo-window p{font-size:2rem}.sector{padding:28px;min-height:270px}.contact-inner{padding-block:60px}.contact-form{padding:24px}.profile{gap:30px}.chapter--ink{margin-inline:calc(-1 * var(--gutter))}.footer-meta{font-size:.68rem}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.contact-form .advocar-form__field,.contact-form .advocar-form__field>span,.contact-form .advocar-form__consent label{color:#304357}.contact-wa{color:#745619}
.privacy-page{background:#fff;padding:70px 0}.privacy-page>.shell{max-width:900px}.privacy-page h1{font-size:clamp(2.4rem,5vw,4rem);line-height:1.2}.privacy-page .chapter h2{font-size:2rem}
.nav-services{position:relative}.nav-services summary{font-size:.8rem;font-weight:600;cursor:pointer;padding:10px 0;list-style:none}.nav-services summary:after{content:'⌄';margin-left:5px}.nav-services>div{position:absolute;top:100%;left:-20px;min-width:220px;background:white;padding:15px 20px;border:1px solid var(--line);box-shadow:0 12px 25px #0b223b12}.nav-services>div a{display:block;white-space:normal}.practice-icon{color:var(--ink);margin-bottom:15px;transition:transform .3s}.sector:hover .practice-icon{transform:translateY(-3px)}.hero h1,.hero .hero-intro,.hero .hero-actions{animation:hero-reveal .8s cubic-bezier(.2,.7,.2,1) both}.hero .hero-intro{animation-delay:.1s}.hero .hero-actions{animation-delay:.2s}.contact-form .advocar-form__submit{border-color:#0b223b}.contact-form .advocar-form__submit:hover{background:#153b5d}.contact-form input[type=checkbox]{accent-color:#0b223b}@keyframes hero-reveal{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(max-width:740px){.nav-services summary{font-size:.7rem;padding:13px 0}.nav-services>div{position:fixed;top:110px;left:20px;right:20px;min-width:0}.site-nav{overflow:visible;gap:13px}.site-nav>a:last-child{display:none}}@media(prefers-reduced-motion:reduce){.hero h1,.hero .hero-intro,.hero .hero-actions{animation:none}}
.hero h1{animation:heading-arrive .65s cubic-bezier(.2,.7,.2,1) both}@keyframes heading-arrive{from{transform:translateY(10px)}to{transform:none}}@media(prefers-reduced-motion:reduce){.hero h1{animation:none}}
.practice-photo{color:#fff;background:#0b223b;isolation:isolate;min-height:350px}.practice-photo:hover{background:#0b223b}.practice-photo .sector-photo{position:absolute;inset:0;z-index:-2;overflow:hidden}.sector-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .65s}.practice-photo:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#071b30e8,#071b3070);z-index:-1}.practice-photo:hover .sector-photo img{transform:scale(1.035)}.practice-photo .eyebrow,.practice-photo>span:last-child{color:#e2c98c}.practice-photo p{color:#edf1f5}.practice-photo .practice-icon{color:#e2c98c}
.phone-icon{display:none}.sector h3{font-size:clamp(1.6rem,4vw,2.1rem)}.nav-services summary{min-height:44px;display:flex;align-items:center}@media(max-width:740px){.hero h1,.hero--fleet h1,.hero--construction h1{font-size:clamp(2.2rem,8.6vw,4rem)}}@media(max-width:380px){.header-phone{min-height:44px;min-width:36px;display:flex;align-items:center;justify-content:center}.phone-number{display:none}.phone-icon{display:block}.brand small{letter-spacing:.09em}.site-nav{gap:11px}}
.contact-inner>div{min-width:0}@media(max-width:740px){.contact-inner{grid-template-columns:minmax(0,1fr)}}
@media(max-width:740px){.hero h1,.hero--fleet h1,.hero--construction h1{font-size:clamp(2rem,8.6vw,4rem)}}
.hero h1,.hero .hero-intro,.hero .hero-actions{animation:heading-arrive .6s cubic-bezier(.2,.7,.2,1) both;animation-delay:0s}@media(prefers-reduced-motion:reduce){.hero h1,.hero .hero-intro,.hero .hero-actions{animation:none}}
.page-content>.chapter{content-visibility:auto;contain-intrinsic-size:auto 600px}
@media(max-width:740px){.hero h1{text-wrap:wrap}.hero h1,.hero .hero-intro,.hero .hero-actions{animation:none}}

