@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/local-0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/local-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/local-0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/assets/fonts/local-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/local-0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/assets/fonts/local-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/local-0.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonts/local-1.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Serif Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/local-2.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Serif Display';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/local-3.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: 'DM Serif Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/local-4.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Serif Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonts/local-5.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
    :root{--navy:#061b31;--ink:#0b2340;--blue:#1767c6;--bright:#3f95f5;--paper:#f3f7fb;--white:#fbfdff;--muted:#5c706b;--line:rgba(11,35,64,.14);--sans:"DM Sans",Arial,sans-serif;--serif:"DM Serif Display",Georgia,serif}
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;scroll-padding-top:78px}
    body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);overflow-x:hidden}
    body.modal-open,body.menu-open{overflow:hidden}
    img{max-width:100%;display:block}
    a{color:inherit;text-decoration:none}
    button,input,textarea{font:inherit}
    button{color:inherit}
    ::selection{background:var(--bright);color:#fff}
    .nav{position:absolute;z-index:30;top:0;left:0;width:100%;height:92px;padding:0 clamp(24px,5.5vw,86px);display:flex;align-items:center;justify-content:space-between;color:#fff;transition:background .3s ease,box-shadow .3s ease,backdrop-filter .3s ease}
    .nav.scrolled{position:fixed;background:rgba(5,24,43,.78);box-shadow:0 8px 30px rgba(0,10,25,.16);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
    .brand{display:flex;align-items:center;z-index:2}
    .brand img{position:relative;z-index:1;width:76px;height:76px;object-fit:contain;filter:contrast(1.055) saturate(1.04) drop-shadow(0 8px 18px rgba(0,0,0,.2))}
    .header-brand{position:relative;width:94px;height:88px;align-self:flex-start;justify-content:center;padding:8px;border-radius:0 0 21px 21px;background:transparent;box-shadow:none;transition:transform .25s ease}
    .header-brand:before{content:"";position:absolute;inset:7px 8px 5px;border:1px solid rgba(118,174,230,.3);border-radius:50%;background:rgba(251,253,255,.96);box-shadow:0 12px 34px rgba(0,12,30,.24),inset 0 1px 0 #fff;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);transition:background .25s ease,box-shadow .25s ease,border-color .25s ease}
    .header-brand img{width:70px;height:70px;filter:contrast(1.075) saturate(1.05) drop-shadow(0 5px 12px rgba(6,27,49,.14));transition:filter .25s ease,transform .25s ease}
    .header-brand:hover{transform:translateY(2px)}
    .nav.scrolled .header-brand:before{background:#fff;border-color:rgba(23,103,198,.2);box-shadow:0 13px 34px rgba(0,12,30,.28)}
    .nav.scrolled .header-brand img{filter:contrast(1.09) saturate(1.06) drop-shadow(0 5px 12px rgba(6,27,49,.12))}
    .nav-links{display:flex;align-items:center;gap:34px;font-size:13px}
    .nav-links>a:not(.nav-cta){opacity:.76;transition:opacity .25s}
    .nav-links>a:hover{opacity:1}
    .nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;border-radius:999px;border:0;background:var(--blue);color:#fff;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}
    .icon-arrow{width:18px;height:18px;display:grid;place-items:center;flex:0 0 18px;font-style:normal;line-height:1}
    .icon-arrow:before{content:"\2197\FE0E";font-family:"Helvetica Neue",Arial,sans-serif;font-size:19px;font-weight:300;line-height:1}
    .icon-arrow:after{display:none}
    .service-cta-arrow{width:20px;height:20px;display:grid;place-items:center;flex:0 0 20px;font-style:normal;line-height:1}
    .service-cta-arrow:before{content:"\2197\FE0E";font-family:"Helvetica Neue",Arial,sans-serif;font-size:21px;font-weight:300;line-height:1}
    .icon-down{position:relative;width:13px;height:15px;display:inline-block;flex:0 0 auto}
    .icon-down:before{content:"";position:absolute;left:6px;top:0;width:1.5px;height:12px;background:currentColor}
    .icon-down:after{content:"";position:absolute;left:3px;bottom:1px;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg)}
    .nav-cta{padding:13px 19px}
    .btn{padding:17px 25px;font-size:13px}
    .btn:hover,.nav-cta:hover{transform:scale(1.02);box-shadow:0 12px 30px rgba(0,0,0,.2);background:#2074d4}
    .btn-call{border:1px solid rgba(255,255,255,.38);background:rgba(255,255,255,.07)}
    .btn-call:hover{background:rgba(255,255,255,.14);box-shadow:0 12px 30px rgba(0,0,0,.18)}
    .hamburger{display:none;z-index:3;border:0;background:transparent;padding:10px;cursor:pointer}
    .hamburger span{display:block;width:26px;height:2px;margin:6px;background:#fff;transition:transform .3s}
    .hero{position:relative;min-height:760px;height:100vh;padding:110px 8vw 70px;display:flex;align-items:center;overflow:hidden;background:var(--navy);color:#fff}
    .grid{position:absolute;inset:-10% 0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,#000,transparent 86%);will-change:transform}
    .hero:after{content:"";position:absolute;width:58vw;height:58vw;right:-18vw;bottom:-33vw;background:radial-gradient(circle,rgba(63,149,245,.22),transparent 68%)}
    .hero-copy{position:relative;z-index:2;width:min(58%,680px)}
    .eyebrow,.kicker{text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:2.2px}
    .eyebrow{display:flex;align-items:center;gap:12px;color:rgba(255,255,255,.62);margin-bottom:30px}
    .eyebrow:before{content:"";width:31px;height:1px;background:var(--bright)}
    h1,h2{margin:0;font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:.94}
    h1{font-size:clamp(66px,8.3vw,132px)}
    h1 em,h2 em{font-weight:400;color:var(--bright)}
    .hero-copy>p{max-width:555px;margin:31px 0 34px;color:rgba(255,255,255,.69);font-size:17px;line-height:1.72}
    .hero-actions{display:flex;align-items:center;gap:32px}
    .text-link{padding:13px 0;border-bottom:1px solid rgba(255,255,255,.27);font-size:12px}
    .text-link span{margin-left:14px;color:var(--bright)}
    .hero-visual{position:absolute;z-index:1;right:7%;top:17%;width:34vw;height:66%}
    .logo-stage{position:absolute;top:22%;left:19%;width:21vw;height:21vw;perspective:1300px;filter:drop-shadow(0 28px 46px rgba(0,10,28,.34))}
    .logo-stage:before{content:"";position:absolute;inset:-10%;border-radius:50%;background:radial-gradient(circle,rgba(77,157,241,.22),rgba(24,104,198,.08) 45%,transparent 72%);filter:blur(11px);pointer-events:none}
    .logo-turn{position:absolute;inset:0;transform-style:preserve-3d;animation:logoTurn 14s cubic-bezier(.45,.04,.3,1) infinite;will-change:transform}
    .logo-face{position:absolute;inset:0;display:grid;place-items:center;padding:12px;border:1px solid rgba(118,174,230,.48);border-radius:50%;background:radial-gradient(circle at 34% 26%,#fff 0,#f8fbff 48%,#e7f2fd 100%);box-shadow:inset 0 1px 0 #fff,0 0 0 7px rgba(255,255,255,.035);backface-visibility:hidden;-webkit-backface-visibility:hidden;overflow:hidden}
    .logo-face.back{transform:rotateY(180deg)}
    .logo-face img{width:100%;height:100%;object-fit:contain;filter:contrast(1.075) saturate(1.04) drop-shadow(0 8px 14px rgba(7,29,52,.12))}
    .orbit{position:absolute;border:1px solid rgba(106,176,246,.22);border-radius:50%;animation:spin 18s linear infinite}
    .orbit.one{inset:4% -1%}
    .orbit.two{inset:16% 11%;animation-direction:reverse;animation-duration:13s}
    .orbit b{position:absolute;top:18%;right:11%;width:7px;height:7px;border-radius:50%;background:var(--bright);box-shadow:0 0 16px var(--bright)}
    .mail-card{position:absolute;right:-2%;bottom:3%;display:flex;align-items:center;gap:13px;min-width:235px;padding:16px 20px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(5,24,43,.78);backdrop-filter:blur(12px);transition:transform .25s}
    .mail-card:hover{transform:translateY(-3px)}
    .mail-card:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--bright);box-shadow:0 0 0 5px rgba(63,149,245,.13);animation:pulse 2s infinite}
    .mail-card div{display:flex;flex-direction:column}.mail-card small{font-size:8px;text-transform:uppercase;letter-spacing:1.5px;opacity:.55}.mail-card strong{margin-top:4px;font-size:12px}.mail-card i{margin-left:auto;color:var(--bright);font-style:normal}
    section{position:relative;overflow:hidden}
    .intro,.services,.contact{padding:clamp(82px,9vw,120px) 8vw}
    .kicker{margin:0 0 35px;color:var(--blue)}
    .intro{background:#f4f8fc}
    .intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw}
    .intro h2,.section-head h2,.contact h2{font-size:clamp(48px,5.5vw,82px)}
    .intro-copy{padding-top:12px}.intro-copy>p{margin:0 0 42px;color:#51645e;font-size:17px;line-height:1.75}
    .facts{display:flex;gap:50px;padding-top:24px;border-top:1px solid var(--line)}
    .facts div{display:flex;flex-direction:column}.facts strong{font-family:var(--serif);font-size:33px;font-weight:400}.facts span{margin-top:5px;color:#7f918b;font-size:10px}
    .services{background:#f8fbfe;border-top:8px solid #091d43}
    .section-head{margin-bottom:58px}
    .service-list{border-top:1px solid var(--line)}
    .service{width:100%;display:grid;grid-template-columns:70px minmax(230px,1fr) 1.1fr 45px;gap:25px;align-items:center;padding:32px 5px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;cursor:pointer;transition:background .3s}
    .service:hover{background:rgba(23,103,198,.045)}
    .service>span{color:var(--blue);font-size:10px;font-weight:700}
    .service h3{margin:0;font-family:var(--serif);font-size:29px;font-weight:400}
    .service p{max-width:480px;margin:0;color:#65766f;font-size:13px;line-height:1.65}
    .service i{width:26px;height:26px;display:grid;place-items:center;justify-self:end;align-self:center;margin:0 3mm 0 0;color:var(--blue);font-style:normal}.service i:before{content:"\2197\FE0E";font-family:"Helvetica Neue",Arial,sans-serif;font-size:26px;font-weight:300;line-height:1}.service i:after{display:none}
    .service:focus-visible,.hamburger:focus-visible{outline:3px solid var(--bright);outline-offset:4px}
    .process{display:grid;grid-template-columns:1fr 1fr;gap:12vw;padding:clamp(82px,9vw,120px) 8vw;background:var(--navy);color:#fff}
    .process .kicker{color:rgba(255,255,255,.46)}
    .process h2{font-size:clamp(48px,5.4vw,80px)}
    .process-copy>p:last-child{max-width:430px;margin-top:32px;color:rgba(255,255,255,.57);font-size:14px;line-height:1.72}
    .steps{border-top:1px solid rgba(255,255,255,.15)}
    .step{display:grid;grid-template-columns:55px 1fr;gap:14px;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.15)}
    .step>span{margin-top:6px;color:var(--bright);font-size:10px}.step h3{margin:0 0 8px;font-family:var(--serif);font-size:23px;font-weight:400}.step p{margin:0;color:rgba(255,255,255,.52);font-size:12px;line-height:1.6}
    .contact{display:grid;grid-template-columns:1fr 1fr;gap:12vw;background:#f7faff}
    .contact-info>p:nth-of-type(2){max-width:460px;margin:28px 0 42px;color:#65766f;line-height:1.68}
    .contact-lines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 34px;padding-top:22px;border-top:1px solid rgba(23,103,198,.27)}
    .contact-item{display:flex;flex-direction:column;align-items:flex-start;min-width:0;color:var(--ink);font-size:13px;line-height:1.55}.contact-item>span{display:block;margin-bottom:8px;color:#81948e;font-size:8px;text-transform:uppercase;letter-spacing:1.4px}.contact-item strong,.contact-item address{font-style:normal;font-weight:500}.contact-site{transform:translateX(-6px)}.contact-call{position:static;display:inline-flex;margin-top:10px;padding:7px 11px;border-radius:999px;background:var(--blue);color:#fff;font-size:8px;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.7px}
    .form{padding:40px;border-top:5px solid var(--blue);border-radius:22px;background:#edf4fa;box-shadow:0 25px 70px rgba(23,62,91,.09)}
    .form label{display:block;margin-bottom:23px;color:#6f817b;font-size:8px;text-transform:uppercase;letter-spacing:1.2px}
    .form label small{text-transform:none;letter-spacing:0}.form input,.form textarea{width:100%;padding:11px 0;border:0;border-bottom:1px solid #bcc8d2;outline:0;background:transparent;color:var(--ink);font-size:13px;resize:none}.form input:focus,.form textarea:focus{border-color:var(--blue)}
    .form .btn{width:100%}.form .btn:disabled{opacity:.65;cursor:wait;transform:none}.form-note{margin:13px 0 0;color:#87969e;font-size:8px;text-align:center}.form-message{margin:14px 0 0;font-size:11px;text-align:center;line-height:1.55}.success{color:#39703d}.error{color:#a33b3b}.error a{text-decoration:underline;font-weight:700}.honey{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}
    footer{display:grid;grid-template-columns:.8fr 1.35fr .65fr;gap:38px;align-items:start;padding:68px 8vw 30px;background:#05182b;color:#fff}
    footer .brand{position:relative;width:112px;height:112px;display:grid;place-items:center;border:1px solid rgba(118,174,230,.24);border-radius:50%;background:rgba(251,253,255,.97);box-shadow:0 18px 45px rgba(0,8,20,.26),inset 0 1px 0 #fff}footer .brand img{width:96px;height:96px;filter:contrast(1.075) saturate(1.04) drop-shadow(0 6px 12px rgba(7,29,52,.1))}.footer-summary{display:flex;flex-direction:column;align-items:flex-start}.footer-summary>p{margin:0 0 20px;font-family:var(--serif);font-size:25px;color:rgba(255,255,255,.78)}.footer-company-name{max-width:350px;color:#fff;font-size:12px;font-weight:600;line-height:1.55}.footer-summary address{margin-top:7px;color:rgba(255,255,255,.56);font-size:11px;font-style:normal;line-height:1.55}footer nav{display:flex;flex-direction:column;gap:10px;justify-self:end;font-size:12px}footer small{grid-column:1/-1;margin-top:34px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.42);font-size:8px;line-height:1.6}
    .section-reveal,.reveal{opacity:0;transform:translateY(20px);transition:opacity .3s ease,transform .3s ease}
    .section-reveal.visible,.reveal.visible{opacity:1;transform:none}
    .modal-backdrop{position:fixed;z-index:100;inset:0;display:none;place-items:center;padding:28px;background:rgba(3,18,34,.74);backdrop-filter:blur(12px)}
    .modal-backdrop.open{display:grid;animation:fade .25s ease both}
    .modal{position:relative;width:min(1120px,100%);max-height:90vh;display:grid;grid-template-columns:1.08fr .92fr;overflow:auto;border:1px solid rgba(118,174,230,.32);border-radius:30px;background:var(--white);box-shadow:0 35px 110px rgba(0,11,28,.42);animation:modalIn .38s cubic-bezier(.2,.75,.25,1) both}
    .modal-media{position:relative;min-height:610px;overflow:hidden;background:#dfe9f2}.modal-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(5,24,43,.48))}.modal-media img{width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .22s ease}.modal-media img.is-ready{opacity:1}.modal-tag{position:absolute;z-index:1;left:24px;bottom:22px;padding:9px 13px;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(5,24,43,.48);color:#fff;font-size:8px;font-weight:700;text-transform:uppercase;letter-spacing:1.4px}
    .modal-content{display:flex;flex-direction:column;justify-content:center;padding:70px 56px 56px}.modal-content .kicker{margin-bottom:23px}.modal-content h2{font-size:clamp(42px,4.3vw,64px)}.modal-content>p:not(.kicker){margin:29px 0 26px;color:#526862;font-size:15px;line-height:1.75}.modal-content ul{display:grid;gap:14px;margin:0;padding:22px 0 0;border-top:1px solid var(--line);list-style:none}.modal-content li{position:relative;display:flex;align-items:center;gap:12px;color:#334c45;font-size:12px;line-height:1.5}.modal-content li:before{content:"";flex:0 0 auto;width:23px;height:23px;border-radius:50%;background:rgba(23,103,198,.1)}.modal-content li:after{content:"";position:absolute;left:8px;top:5px;width:5px;height:9px;border-right:1.5px solid var(--blue);border-bottom:1.5px solid var(--blue);transform:rotate(45deg)}.modal-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:24px;margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}.modal-prompt{max-width:310px;margin:0;color:#183a5a;font-size:12px;font-weight:600;line-height:1.65}.modal-actions .btn{justify-self:end;white-space:nowrap;font-size:11px}.close{position:absolute;z-index:4;top:20px;right:20px;width:46px;height:46px;border:0;border-radius:0;background:transparent;color:var(--blue);cursor:pointer}.close:focus-visible{outline:0}.close span{position:absolute;left:50%;top:50%;width:20px;height:2px;background:var(--blue);box-shadow:0 1px 5px rgba(255,255,255,.7);transform-origin:center}.close span:first-child{transform:translate(-50%,-50%) rotate(45deg)}.close span:last-child{transform:translate(-50%,-50%) rotate(-45deg)}
    .hero,.intro,.services,.process,.contact{position:relative;isolation:isolate;overflow:hidden}.circuit-art{position:absolute;z-index:0;left:-2%;top:5%;width:clamp(230px,25vw,390px);height:clamp(410px,46vw,700px);background:url('/la-al-circuit-pattern-transparent.png') left center/contain no-repeat;opacity:.1;filter:blur(.55px);pointer-events:none}.services .circuit-art,.contact .circuit-art{left:auto;right:-2%;transform:scaleX(-1)}.hero .circuit-art,.process .circuit-art{opacity:.16;filter:blur(.65px) brightness(0) saturate(100%) invert(53%) sepia(91%) saturate(1861%) hue-rotate(187deg) brightness(101%) contrast(92%)}.hero-copy,.hero-visual,.intro-grid,.services .section-head,.service-list,.process>div:not(.circuit-art),.contact-info,.form{z-index:1}
    .chat-launcher{position:fixed;z-index:90;right:24px;bottom:max(22px,env(safe-area-inset-bottom));display:flex;align-items:center;gap:11px;min-height:64px;padding:6px 18px 6px 6px;border:1px solid rgba(255,255,255,.2);border-radius:999px;background:var(--navy);color:#fff;box-shadow:0 18px 52px rgba(0,18,42,.28);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.chat-launcher:before,.chat-character{content:"";display:block;flex:0 0 auto;width:52px;height:52px;border:2px solid rgba(255,255,255,.74);border-radius:50%;background:#dbe9f6 url('/video-assets/la-al-pomocnik-exact-logo.webp') 72% 9%/auto 170% no-repeat;box-shadow:inset 0 0 0 2px rgba(23,103,198,.18)}.chat-launcher:hover{transform:scale(1.02);box-shadow:0 22px 60px rgba(0,18,42,.34)}.chat-launcher[aria-expanded="true"]{transform:translateY(8px);opacity:0;pointer-events:none}.chat-launcher .chat-label{font-size:12px;font-weight:700;letter-spacing:.1px}
    .chat-panel{position:fixed;z-index:91;right:24px;bottom:max(22px,env(safe-area-inset-bottom));width:min(390px,calc(100vw - 32px));height:min(620px,calc(100dvh - 48px));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(94,158,222,.3);border-radius:26px;background:#f8fbfe;box-shadow:0 30px 90px rgba(0,16,40,.32);opacity:0;visibility:hidden;transform:translateY(18px) scale(.98);transform-origin:right bottom;transition:opacity .24s ease,transform .24s ease,visibility .24s}.chat-panel.open{opacity:1;visibility:visible;transform:none}.chat-header{position:relative;display:flex;align-items:center;gap:12px;min-height:82px;padding:13px 58px 13px 14px;background:var(--navy);color:#fff}.chat-header .chat-character{width:54px;height:54px}.chat-title{display:flex;flex-direction:column;min-width:0}.chat-title strong{font-family:var(--serif);font-size:20px;font-weight:400}.chat-title small{margin-top:3px;color:rgba(255,255,255,.58);font-size:9px;line-height:1.35}.chat-close{position:absolute;top:18px;right:15px;width:44px;height:44px;border:0;background:transparent;color:var(--bright);cursor:pointer}.chat-close:before,.chat-close:after{content:"";position:absolute;left:12px;top:21px;width:20px;height:2px;background:currentColor}.chat-close:before{transform:rotate(45deg)}.chat-close:after{transform:rotate(-45deg)}.chat-close:focus-visible,.chat-launcher:focus-visible,.chat-quick:focus-visible,.chat-send:focus-visible{outline:3px solid var(--bright);outline-offset:3px}
    .chat-messages{flex:1;display:flex;flex-direction:column;gap:12px;overflow-y:auto;padding:18px 16px 12px;scroll-behavior:smooth}.chat-message{max-width:88%;padding:12px 14px;border-radius:17px;color:#38504a;font-size:12px;line-height:1.58;white-space:pre-line}.chat-message.bot{align-self:flex-start;border:1px solid rgba(11,35,64,.09);border-bottom-left-radius:5px;background:#fff}.chat-message.user{align-self:flex-end;border-bottom-right-radius:5px;background:var(--blue);color:#fff}.chat-actions{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.chat-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 12px;border-radius:999px;background:#e8f2fc;color:var(--blue);font-size:10px;font-weight:700}.chat-quick-list{display:flex;gap:7px;overflow-x:auto;padding:0 16px 11px;scrollbar-width:none}.chat-quick-list::-webkit-scrollbar{display:none}.chat-quick{flex:0 0 auto;min-height:34px;padding:8px 11px;border:1px solid rgba(23,103,198,.18);border-radius:999px;background:#fff;color:var(--ink);font-size:9px;font-weight:600;cursor:pointer}.chat-form{display:grid;grid-template-columns:1fr 46px;gap:8px;padding:11px 12px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#edf4fa}.chat-form input{min-width:0;height:46px;padding:0 15px;border:1px solid rgba(11,35,64,.13);border-radius:999px;outline:0;background:#fff;color:var(--ink);font-size:12px}.chat-form input:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(23,103,198,.09)}.chat-send{position:relative;width:46px;height:46px;border:0;border-radius:50%;background:var(--blue);color:#fff;cursor:pointer}.chat-send .icon-arrow{transform:translate(1px,1px)}
    .cookie-banner{position:fixed;z-index:96;left:22px;bottom:max(22px,env(safe-area-inset-bottom));width:min(410px,calc(100vw - 44px));padding:22px;border:1px solid rgba(91,155,220,.3);border-radius:22px;background:rgba(5,24,43,.97);color:#fff;box-shadow:0 24px 72px rgba(0,16,40,.34);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);opacity:0;visibility:hidden;transform:translateY(18px);transition:opacity .28s ease,transform .28s ease,visibility .28s}.cookie-banner.open{opacity:1;visibility:visible;transform:none}.cookie-banner .kicker{margin:0 0 12px;color:var(--bright)}.cookie-banner h2{font-family:var(--serif);font-size:27px;letter-spacing:-.025em}.cookie-banner p{margin:13px 0 18px;color:rgba(255,255,255,.7);font-size:11px;line-height:1.65}.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.cookie-actions button{min-height:43px;padding:10px 13px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:transparent;color:#fff;font-size:10px;font-weight:700;cursor:pointer;transition:transform .2s ease,background .2s ease}.cookie-actions button:first-child{border-color:var(--blue);background:var(--blue)}.cookie-actions button:hover{transform:scale(1.02);background:#2074d4}.cookie-settings{padding:0;border:0;background:transparent;color:inherit;font-size:12px;text-align:left;cursor:pointer}.cookie-settings:hover{text-decoration:underline}.cookie-settings:focus-visible,.cookie-actions button:focus-visible{outline:3px solid var(--bright);outline-offset:3px}
    @keyframes spin{to{transform:rotate(360deg)}}@keyframes logoTurn{0%,12%{transform:rotateY(0deg)}45%,57%{transform:rotateY(180deg)}90%,100%{transform:rotateY(360deg)}}@keyframes pulse{50%{opacity:.45;box-shadow:0 0 0 9px rgba(63,149,245,0)}}@keyframes fade{from{opacity:0}}@keyframes modalIn{from{opacity:0;transform:translateY(24px) scale(.985)}}
    @media(max-width:1024px){.nav-links{gap:22px}.hero{padding-left:6vw}.hero-copy{width:61%}.hero-visual{right:2%;width:38vw}.logo-stage{width:23vw;height:23vw}.intro,.services,.contact,.process{padding-left:6vw;padding-right:6vw}.intro-grid,.contact,.process{gap:7vw}.contact-lines{grid-template-columns:1fr 1fr}.service{grid-template-columns:55px minmax(210px,.8fr) 1.2fr 30px}}
    @media(max-width:900px){html{scroll-padding-top:72px}.nav{height:76px;padding:0 22px}.header-brand{width:78px;height:74px;padding:5px}.header-brand:before{inset:5px 6px 3px}.header-brand img{width:60px;height:60px}.hamburger{display:block;min-width:46px;min-height:46px}.hamburger.active span:first-child{transform:translateY(4px) rotate(45deg)}.hamburger.active span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav-links{position:fixed;inset:0;min-height:100dvh;display:flex;flex-direction:column;justify-content:center;gap:28px;padding:90px 28px 40px;background:rgba(6,27,49,.98);font-size:24px;transform:translateX(100%);transition:transform .35s;overflow-y:auto}.nav-links.open{transform:none}.nav-cta{min-width:190px;min-height:50px;font-size:14px}.hero{min-height:760px;height:auto;padding:128px 23px 88px;align-items:flex-start}.hero-copy{width:100%;z-index:3}.hero-copy>p{max-width:620px;font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:13px}.hero-actions .btn{min-height:50px}.hero-visual{top:51%;right:-10%;width:56vw;height:45%;opacity:.72}.logo-stage{top:12%;left:16%;width:40vw;height:40vw}.mail-card{display:none}.intro,.services,.contact,.process{padding:86px 6vw}.intro-grid,.contact,.process{grid-template-columns:1fr;gap:52px}.facts{gap:27px}.facts strong{font-size:28px}.section-head{margin-bottom:42px}.service{grid-template-columns:42px 1fr 24px;gap:18px;padding:28px 0}.service p{grid-column:2/4}.service i{grid-column:3;grid-row:1;align-self:start;margin-top:4px}.contact-lines{grid-template-columns:repeat(2,minmax(0,1fr))}.form{padding:34px 30px}footer{grid-template-columns:120px 1fr;padding:58px 6vw 28px}footer .brand{width:98px;height:98px}footer .brand img{width:84px;height:84px}.footer-summary{grid-column:2}.footer-summary>p{font-size:23px}footer nav{grid-column:2;justify-self:start;margin-top:6px}footer small{margin-top:18px}.modal-backdrop{align-items:end;padding:10px}.modal{grid-template-columns:1fr;max-height:94vh;border-radius:22px}.modal-media{min-height:0;aspect-ratio:16/9}.modal-content{padding:31px 25px 28px}.modal-content h2{font-size:38px}.modal-content>p:not(.kicker){margin:21px 0 20px;font-size:14px}.modal-actions{grid-template-columns:1fr;align-items:stretch;gap:14px}.modal-prompt{max-width:none}.modal-actions .btn{width:100%;justify-self:stretch}.close{top:13px;right:13px;width:42px;height:42px}.modal-tag{left:16px;bottom:14px}}
    /* Logo brez zunanjega belega roba: vidni obod je moder krog originalnega znaka. */
    .header-brand:before{inset:50% auto auto 50%;width:65px;height:65px;transform:translate(-50%,-50%);border:0;background:#fff;box-shadow:0 11px 30px rgba(0,12,30,.24)}
    .header-brand img{transform:scale(1.07)}
    .header-brand:hover img{transform:scale(1.09)}
    .logo-face{padding:0;border:0;background:transparent;box-shadow:none;clip-path:none;overflow:visible;isolation:isolate}
    .logo-face:before{content:"";position:absolute;z-index:0;inset:3.6%;border-radius:50%;background:#fff;box-shadow:0 26px 65px rgba(0,9,25,.28)}
    .logo-face:after{display:none}
    .logo-face img{position:relative;z-index:1;max-width:none;transform:scale(1.07);filter:contrast(1.085) saturate(1.04) drop-shadow(0 8px 14px rgba(7,29,52,.1))}
    footer .brand{position:relative;border:0;background:transparent;box-shadow:none}
    footer .brand:before{content:"";position:absolute;width:89px;height:89px;border-radius:50%;background:#fff;box-shadow:0 17px 42px rgba(0,8,20,.25)}
    footer .brand img{transform:scale(1.07)}
    @media(min-width:561px) and (max-width:900px){.hero{min-height:100svh;height:auto;padding:480px 6vw 52px;align-items:flex-end}.hero-copy{width:100%;max-width:680px;margin:0 auto;text-align:center;text-shadow:0 3px 22px rgba(1,13,28,.72)}.eyebrow{justify-content:center;margin-bottom:18px}.hero h1{font-size:clamp(58px,9.7vw,78px)}.hero-copy>p{max-width:640px;margin:24px auto 26px;color:rgba(255,255,255,.82);font-size:15px}.hero-actions{width:min(100%,560px);margin:0 auto;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(150px,.75fr);gap:10px;text-shadow:none}.hero-actions .btn{width:100%;min-height:50px}.text-link{grid-column:1/-1;justify-self:center}.hero-visual{display:block;inset:62px 0 auto;width:100%;height:390px;opacity:1;filter:none;pointer-events:none}.hero-visual .orbit.one{inset:2% 18%}.hero-visual .orbit.two{inset:14% 28%}.logo-stage{top:24px;left:50%;width:250px;height:250px;transform:translateX(-50%);opacity:.96}.mail-card{display:none}}
    @media(max-width:560px){.nav{padding:0 16px}.hero{min-height:100svh;height:auto;padding:315px 20px 30px;align-items:flex-end}.hero-copy{width:100%;transform:none;text-align:center;text-shadow:0 3px 22px rgba(1,13,28,.82)}.hero h1{max-width:350px;margin:0 auto;font-size:clamp(42px,12vw,52px);line-height:.94}.eyebrow{justify-content:center;margin-bottom:13px;font-size:8px;letter-spacing:1.55px}.hero-copy>p{max-width:355px;margin:16px auto 18px;color:rgba(255,255,255,.86);font-size:12.5px;line-height:1.52;text-shadow:0 2px 15px rgba(1,13,28,.94)}.hero-actions{width:100%;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(108px,.75fr);gap:8px;text-shadow:none}.hero-actions .btn{width:100%;max-width:none;min-height:46px;padding:14px 12px;font-size:11px}.hero-actions .btn-call{gap:8px}.text-link{grid-column:1/-1;justify-self:center;padding:9px 0}.hero-visual{display:block;inset:54px -6px auto;width:calc(100% + 12px);height:250px;opacity:1;filter:none;transform:none;transform-origin:center top;pointer-events:none}.hero-visual:after{content:"";position:absolute;z-index:2;inset:0;background:linear-gradient(180deg,rgba(6,27,49,0) 18%,rgba(6,27,49,.04) 58%,rgba(6,27,49,.18) 100%);pointer-events:none}.hero-visual .orbit{display:block;opacity:.34;filter:blur(1px)}.hero-visual .mail-card{display:none}.hero-visual .orbit.one{inset:0 4%}.hero-visual .orbit.two{inset:13% 17%}.logo-stage{top:4px;right:auto;left:calc(50% - 86px);width:172px;height:172px;opacity:.96;filter:drop-shadow(0 20px 34px rgba(0,10,28,.3))}.intro,.services,.contact,.process{padding:74px 20px}.intro h2,.section-head h2,.contact h2,.process h2{font-size:clamp(43px,13vw,58px)}.intro-copy>p{font-size:15px}.facts{display:grid;grid-template-columns:1fr 1fr;gap:20px}.service{grid-template-columns:28px 1fr 28px;gap:12px;padding:24px 0}.service h3{font-size:24px}.service p{font-size:12px}.step{grid-template-columns:37px 1fr}.circuit-art{top:4%;width:190px;height:360px;opacity:.09;filter:blur(.65px)}.hero .circuit-art,.process .circuit-art{opacity:.13}.intro .circuit-art,.process .circuit-art{left:-18%}.services .circuit-art,.contact .circuit-art{right:-18%}.contact-lines{grid-template-columns:1fr}.contact-item{min-height:44px}.contact-site{transform:none}.form{padding:28px 20px}.form input,.form textarea{font-size:16px}.form .btn{min-height:50px}footer{grid-template-columns:82px 1fr;gap:24px;padding-left:20px;padding-right:20px}footer .brand{width:78px;height:78px}footer .brand:before{width:63px;height:63px}footer .brand img{width:68px;height:68px}.footer-summary{grid-column:2}.footer-summary>p{margin-bottom:15px;font-size:21px}.footer-company-name{font-size:10px}.footer-summary address{font-size:10px}footer nav{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,max-content);gap:10px 24px;margin-top:8px}footer small{grid-column:1/-1}.modal-content h2{font-size:34px}.chat-launcher{right:52px;bottom:max(13px,env(safe-area-inset-bottom));min-width:58px;min-height:58px;padding:5px}.chat-launcher:before{flex-basis:48px;width:48px;height:48px;min-width:48px}.chat-launcher .chat-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.chat-panel{right:10px;bottom:max(10px,env(safe-area-inset-bottom));width:calc(100vw - 20px);height:min(650px,calc(100dvh - 20px));border-radius:22px}.chat-header{min-height:76px}.chat-messages{padding-top:15px}.chat-message{max-width:91%;font-size:11.5px}.chat-form input{font-size:16px}}
    @media(max-width:560px){.modal-backdrop{align-items:center;padding:18px 14px}.modal{width:100%;max-height:88dvh;border-radius:24px}.modal-media{max-height:170px;aspect-ratio:16/7.7}.modal-content{padding:23px 20px 21px}.modal-content .kicker{margin-bottom:12px}.modal-content h2{font-size:clamp(29px,9vw,34px);line-height:1}.modal-content>p:not(.kicker){margin:15px 0 16px;font-size:12.5px;line-height:1.55}.modal-content ul{gap:8px;padding-top:14px}.modal-content li{font-size:10.5px}.modal-content li:before{width:20px;height:20px}.modal-content li:after{left:7px;top:4px}.modal-actions{gap:12px;margin-top:18px;padding-top:15px}.modal-prompt{font-size:10.8px;line-height:1.55}.modal-actions .btn{min-height:45px;padding:13px 16px;font-size:10.5px}.close{top:9px;right:9px;width:38px;height:38px}.modal-tag{left:12px;bottom:10px;padding:7px 10px;font-size:7px}}
    @media(max-width:560px){.chat-launcher{right:13px;min-width:148px;padding:5px 13px 5px 5px}.chat-launcher .chat-label{position:static;width:auto;height:auto;overflow:visible;clip:auto;font-size:10px;white-space:nowrap}.cookie-banner{left:10px;bottom:max(10px,env(safe-area-inset-bottom));width:calc(100vw - 20px);padding:19px;border-radius:20px}.cookie-banner h2{font-size:25px}.cookie-banner p{font-size:10.5px}}
    @media(max-width:560px){.eyebrow{width:100%;justify-content:center;text-align:center}.eyebrow:before{display:none}.hero-visual{inset:72px -6px auto}.logo-stage{top:26px}.modal-media{min-height:210px;max-height:none;aspect-ratio:16/9}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.section-reveal,.reveal{opacity:1;transform:none;transition:none!important}.logo-turn,.orbit,.mail-card:before{animation:none}.modal,.modal-backdrop,.modal-media img,.chat-panel,.chat-launcher{animation:none;transition:none}.grid{transform:none!important}}
  /* SEO additions preserve the original navy, blue, serif headings and circular logo. */
.section-reveal,.reveal{opacity:1;transform:none}
.hero{height:auto;min-height:740px}.hero h1{font-size:clamp(54px,6.5vw,96px);line-height:1.02}.hero-copy{width:60%}.hero-actions{flex-wrap:wrap;gap:16px}.hero .eyebrow{line-height:1.7}
.seo-section{padding:80px 8vw;background:#f8fbfe;line-height:1.8}.seo-section h2{font-size:clamp(34px,4.5vw,60px);line-height:1.1;max-width:850px;margin-bottom:30px}.seo-section h3{font-family:var(--serif);font-weight:400;font-size:28px;line-height:1.2}.seo-section p{max-width:760px;color:#455b69}.seo-section ul{padding-left:22px;color:#455b69}.scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.scope-grid article{padding:26px;border:1px solid var(--line);border-radius:16px;background:#fff}.scope-grid article:first-child{grid-column:1/-1}.scope-grid h3{margin:0 0 15px}.inline-link,.form-note a,.legal-copy a{color:#1259ab;text-decoration:underline;text-underline-offset:4px}.inline-link{font-weight:700}.faq{border-top:1px solid var(--line)}.faq details{max-width:960px;border-bottom:1px solid var(--line);padding:20px 0}.faq summary{cursor:pointer;font-weight:700;font-size:18px}.faq details p{margin-bottom:0}.subpage .nav{position:relative;background:var(--navy)}.subpage .nav.scrolled{position:relative}.subpage .seo-section>h1{font-size:clamp(42px,6vw,76px);line-height:1.05;max-width:900px;margin:26px 0}.subpage .hero{min-height:0;padding:70px 8vw}.subpage .hero-copy{width:100%;max-width:920px}.subpage .hero h1{font-size:clamp(44px,6vw,82px)}.breadcrumb{font-size:13px;color:#b2cee9;margin-bottom:28px}.breadcrumb a{text-decoration:underline}.service-lead{display:grid;grid-template-columns:1.15fr .85fr;gap:50px;align-items:center}.service-lead img{width:100%;height:auto;border-radius:22px}.service-lead figcaption{font-size:12px;color:#5c6f7e}.service-lead figure{margin:0}.legal-copy{max-width:960px;margin:auto}.legal-copy h2{font-size:30px;margin-top:42px}.contact .contact-info>p{line-height:1.7}.form-note{line-height:1.7}.form-note a{color:inherit}.cookie-banner p{font-size:13px;line-height:1.6}.cookie-actions button{min-height:44px}.skip-link{position:absolute;left:12px;top:-90px;z-index:1000;background:#fff;padding:15px;color:#061b31}.skip-link:focus{top:10px}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #3f95f5;outline-offset:5px}footer nav{flex-wrap:wrap}footer{padding-bottom:105px}.chat-launcher{right:16px;bottom:16px;min-width:58px;padding:5px}.chat-launcher .chat-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
@media(max-width:900px){.hero{padding:290px 6vw 48px;min-height:0}.hero-copy{width:100%}.hero h1{font-size:clamp(46px,8vw,70px)}.hero-visual{inset:76px 0 auto;width:100%;height:190px}.logo-stage{top:0;left:calc(50% - 85px);width:170px;height:170px;transform:none}.hero-visual .orbit{display:none}.hero-copy>p{font-size:16px}.seo-section{padding:56px 6vw}.service-lead{grid-template-columns:1fr}.service-lead figure{max-width:560px}.scope-grid{grid-template-columns:1fr}.scope-grid article:first-child{grid-column:auto}.subpage .hero{padding:45px 6vw}.subpage .hero-actions{display:flex;flex-wrap:wrap;flex-direction:row}.subpage .hero-actions .btn{width:auto}.subpage .nav-links{z-index:40}.subpage .hamburger{z-index:41}.subpage .header-brand{z-index:41}}
@media(max-width:560px){.hero{padding:235px 20px 38px;min-height:0}.hero-visual{inset:78px 0 auto;width:100%;height:140px}.logo-stage{top:0;left:calc(50% - 65px);width:130px;height:130px}.hero h1{font-size:42px;max-width:100%;line-height:1.03}.hero-copy>p{font-size:15px;line-height:1.65}.hero .eyebrow{font-size:9px;letter-spacing:1px}.hero-actions{display:flex;flex-wrap:wrap;flex-direction:row;justify-content:center}.hero-actions .btn{width:auto;flex:1 1 140px;font-size:12px}.hero-actions .text-link{flex:1 0 100%;text-align:center}.chat-launcher{right:12px;bottom:12px;min-width:54px;padding:4px}.chat-launcher:before{width:44px;height:44px;min-width:44px;flex-basis:44px}.chat-launcher .chat-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.scope-grid article{padding:22px}.seo-section h3{font-size:25px}.faq summary{font-size:16px}.cookie-banner{z-index:200}.cookie-banner p{font-size:12px}.form input,.form textarea{font-size:16px}}
@media(max-width:400px){.hero h1,.subpage .hero h1{font-size:clamp(30px,10.5vw,42px)}.hero-actions .btn{min-height:52px}}
/* Proposal 2: one clear service hierarchy, editorial photos and compact content. */
.nav.site-header{position:relative;inset:auto;height:94px;padding:0 5vw;background:#fff;color:#102b43;border-bottom:1px solid #e1e8ed;gap:28px}.site-brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.site-brand img{width:64px;height:64px;object-fit:contain}.site-brand>span{font-size:15px;font-weight:700;line-height:1.4}.site-brand>span>span{display:block;color:#667b88;font-size:11px;font-weight:400}.site-header .nav-links{font-size:13px;gap:28px}.site-header .nav-links>a:not(.nav-cta){opacity:1}.site-header .nav-cta{border-radius:7px;padding:15px 20px;gap:20px}.site-header .hamburger span{background:#102b43}.site-header .hamburger.active span{background:white}.site-header .hamburger{z-index:45}
.proposal{background:#fff;color:#102b43}.proposal h1,.proposal h2,.proposal h3{letter-spacing:-.045em}.proposal h1,.proposal h2{font-family:'DM Sans',Arial,sans-serif;font-weight:500}.proposal em{font-family:'DM Serif Display',Georgia,serif;font-weight:400;color:#6ba7ea}.proposal .btn{border-radius:7px;font-size:13px;padding:17px 22px;min-height:52px;gap:30px}.proposal .section-label{font-size:10px;letter-spacing:1.7px;font-weight:700;line-height:1.6;color:#2168b7;margin:0 0 22px}.new-hero{display:grid;grid-template-columns:1fr 1fr;min-height:590px;background:#081f34;color:white;isolation:isolate}.hero-text{padding:76px 5vw 54px;display:flex;flex-direction:column;justify-content:center}.hero-text .section-label{color:#99b9d7}.section-label>span{display:inline-block;width:6px;height:6px;background:#5fa5f2;border-radius:50%;margin-right:8px;vertical-align:middle}.proposal h1{font-size:clamp(48px,5.3vw,80px);line-height:1.08;margin:0}.hero-text .lead{max-width:465px;margin:28px 0 34px;font-size:16px;line-height:1.8;color:#c2d0dc}.new-actions{display:flex;flex-wrap:wrap;align-items:center;gap:24px}.plain-call{font-size:14px;font-weight:500;white-space:nowrap}.plain-call span{margin-left:14px;color:#8ab7e9}.service-area{margin:36px 0 0;font-size:12px;color:#b3c5d3}.service-area>span{margin-right:8px;font-size:18px}.hero-photo{position:relative;min-width:0;margin:0;overflow:hidden}.hero-photo picture{display:block;height:100%}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:57% center}.hero-photo:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(3,14,25,.62));pointer-events:none}.hero-photo figcaption{position:absolute;z-index:2;bottom:16px;right:20px;font-size:10px;color:#fff;background:rgba(3,14,25,.6);padding:5px 8px;border-radius:4px}.photo-label{position:absolute;z-index:1;bottom:52px;left:34px;font-family:var(--serif);font-size:29px;font-style:italic;color:white}.brand-note{padding:37px 5vw;display:flex;align-items:center;justify-content:space-between;gap:40px;border-bottom:1px solid #dde5eb;background:#f8fafb}.brand-note p{max-width:770px;font-size:16px;line-height:1.7;margin:0;color:#657687}.brand-note strong{color:#102b43;font-weight:500}.brand-note>a{flex-shrink:0;font-size:12px;font-weight:700}.brand-note>a span{margin-left:24px;color:#2168b7}
.new-services{padding:80px 5vw 90px;max-width:1500px;margin:auto}.proposal .section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:35px;gap:30px}.proposal .section-heading>p{margin:0 0 6px;color:#657687;font-size:14px}.proposal h2{font-size:clamp(36px,4vw,56px);line-height:1.12}.proposal h2 em{color:#266bb7}.featured-service{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e0e7ed;border-radius:10px;overflow:hidden;background:#f5f8fb}.featured-service figure{position:relative;margin:0;min-width:0;min-height:330px}.featured-service img{width:100%;height:100%;object-fit:cover}.featured-service figcaption{position:absolute;bottom:12px;left:14px;background:rgba(255,255,255,.91);padding:5px 9px;border-radius:4px;font-size:10px;color:#33485b}.featured-service>div{padding:48px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.featured-service h3{font-family:'DM Sans',Arial,sans-serif;font-size:35px;font-weight:500;line-height:1.2;margin:0 0 16px}.featured-service p:not(.section-label){font-size:15px;line-height:1.8;color:#5e7281;margin:0 0 27px}.service-accordion{margin-top:24px}.service-accordion details{border-bottom:1px solid #dce5ec;scroll-margin-top:25px}.service-accordion summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:45px 1fr 1fr 30px;align-items:center;gap:20px;padding:29px 0}.service-accordion summary::-webkit-details-marker{display:none}.service-index{font-size:11px;color:#6c8395}.service-accordion h3{font-family:'DM Sans',Arial,sans-serif;font-size:23px;font-weight:500;margin:0;letter-spacing:-.025em}.service-hint{font-size:13px;color:#708291}.expand{font-size:28px;color:#236abc;line-height:1;transition:transform .2s}.service-accordion details[open] .expand{transform:rotate(45deg)}.service-answer{margin:0 50px 25px 65px;max-width:780px}.service-answer p{font-size:15px;color:#5e7281;line-height:1.8;margin-top:0}.service-answer>a{font-size:13px;font-weight:700;color:#1b62ad;text-decoration:underline;text-underline-offset:5px}
.new-process{padding:70px 5vw 80px;background:#f1f5f8}.new-process .section-heading{margin-bottom:40px}.new-process ol{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.new-process li{border-top:1px solid #b9cddd;padding-top:25px}.new-process li>span{font-size:12px;color:#236abc}.new-process h3{font-family:'DM Sans',Arial,sans-serif;font-size:20px;font-weight:500;margin:24px 0 12px;letter-spacing:-.025em}.new-process li p{color:#647a8c;font-size:14px;line-height:1.8;margin:0;max-width:340px}
.new-contact{background:#081f34;color:white;display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:85px 5vw}.contact-intro .section-label{color:#91b9df}.contact-intro h2{font-size:clamp(35px,3.8vw,54px);line-height:1.2}.contact-intro h2 em{color:#8bb5e5}.contact-intro>p:not(.section-label){color:#bbcbd9;line-height:1.8;font-size:15px;max-width:390px;margin:26px 0}.big-phone{font-size:clamp(25px,3vw,38px);font-weight:500;display:block;margin-top:38px;letter-spacing:-1px}.big-phone span{font-size:26px;margin-left:20px;color:#83b5ee}.office-hours{display:block;color:#a4b9cb;font-size:13px;margin:10px 0 26px}.contact-mail{font-size:17px;border-bottom:1px solid #456782;padding-bottom:6px}.contact-intro .visit-note{font-size:12px!important;margin-top:30px!important}.new-form.form{background:white;color:#102b43;border-radius:10px;padding:35px;box-shadow:none;display:block}.new-form h3{margin:0;font-family:'DM Sans';font-size:23px;font-weight:500;letter-spacing:-.02em}.required-note{font-size:11px;color:#697e8c;margin:10px 0 26px}.new-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.new-form label{display:block;margin:0 0 20px;text-transform:none;font-weight:500;letter-spacing:0;font-size:12px;color:#274359}.new-form input,.new-form textarea{border:1px solid #dce5ec;background:#f9fbfc;border-radius:5px;margin-top:8px;padding:12px;color:#102b43;font-size:14px;width:100%;outline-offset:2px}.new-form input:focus,.new-form textarea:focus{border-color:#1767c6;outline:1px solid #1767c6}.new-form .btn{width:100%;justify-content:space-between}.new-form .form-note{font-size:10px;color:#6e8291;line-height:1.6;margin-bottom:0}.new-form .honey{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.form-message.success{color:#155f45}.form-message.error{color:#9e2525}
footer.site-footer{background:#fff;color:#163449;padding:34px 5vw 24px;display:grid;grid-template-columns:1fr auto;gap:20px 40px;border-top:1px solid #dbe5ed}.footer-identity{display:flex;gap:18px;align-items:center}.footer-identity>img{width:60px;height:60px;object-fit:contain}.footer-identity strong{font-size:12px;font-weight:600}.footer-identity address{font-size:11px;font-style:normal;color:#657d8e;margin-top:5px}.footer-identity p{font-size:10px;color:#768997;margin:5px 0 0}.site-footer nav{display:flex;flex-wrap:wrap;align-items:center;gap:20px;font-size:11px;grid-column:auto;margin:0}.site-footer .cookie-settings{font-size:11px;color:#567185}.site-footer small{grid-column:1/-1;margin:10px 0 0;padding-top:18px;border-top:1px solid #edf1f4;font-size:10px;color:#748896}.proposal .chat-launcher{box-shadow:0 3px 15px #0002;bottom:12px}.proposal .chat-launcher:before{width:38px;height:38px;min-width:38px;flex-basis:38px}.proposal .chat-launcher{min-width:46px;min-height:46px}.subpage .site-header .site-brand{z-index:42}.proposal .skip-link{z-index:1000}.proposal .cookie-banner{color:#102b43}
@media(max-width:1000px){.new-hero{min-height:560px}.hero-text{padding:52px 5vw}.proposal h1{font-size:51px}.hero-text .lead{font-size:15px}.featured-service>div{padding:30px}.site-brand>span{display:none}.new-contact{gap:35px}.new-form.form{padding:25px}.service-accordion summary{grid-template-columns:30px 1fr 1fr 24px;gap:15px}.service-accordion h3{font-size:20px}}
@media(max-width:900px){.site-header .nav-links{background:#081f34;color:#fff;z-index:44;font-size:22px;gap:30px}.site-header .site-brand{z-index:43}.site-header .hamburger{z-index:45}.nav.site-header{height:80px}.site-brand img{width:58px;height:58px}.new-process ol{gap:25px}.new-contact{grid-template-columns:1fr 1.1fr}.new-form .form-row{grid-template-columns:1fr;gap:0}.site-footer nav{max-width:220px}}
@media(max-width:700px){.new-hero{grid-template-columns:1fr}.hero-text{padding:45px 6vw 35px}.proposal h1{font-size:clamp(39px,8.6vw,56px)}.hero-text .lead{font-size:15px;max-width:500px;margin:22px 0 25px}.service-area{margin-top:24px}.hero-photo{height:310px}.photo-label{font-size:26px;left:24px;bottom:47px}.brand-note{padding:27px 6vw;display:block}.brand-note p{font-size:14px}.brand-note>a{display:none}.new-services{padding:48px 6vw}.proposal .section-heading{display:block;margin-bottom:25px}.proposal .section-heading>p{margin-top:18px;font-size:13px}.proposal h2{font-size:36px}.featured-service{grid-template-columns:1fr}.featured-service figure{height:245px;min-height:0}.featured-service>div{padding:28px}.featured-service h3{font-size:28px}.featured-service .section-label{font-size:9px;margin-bottom:16px}.featured-service p:not(.section-label){font-size:14px}.service-accordion summary{grid-template-columns:23px 1fr 22px;gap:12px;padding:24px 0}.service-hint{display:none}.service-accordion h3{font-size:20px}.service-answer{margin:0 0 22px 35px}.service-answer p{font-size:14px}.new-process{padding:48px 6vw}.new-process ol{grid-template-columns:1fr;gap:26px}.new-process h3{margin-top:15px}.new-process li p{max-width:none}.new-contact{grid-template-columns:1fr;padding:48px 6vw;gap:30px}.contact-intro h2{font-size:36px}.contact-intro>p:not(.section-label){margin:20px 0}.big-phone{margin-top:25px;font-size:32px}.new-form .form-row{grid-template-columns:1fr 1fr;gap:14px}.new-form input,.new-form textarea{font-size:16px}.new-form.form{padding:26px 22px}.new-form h3{font-size:22px}footer.site-footer{grid-template-columns:1fr;padding:30px 6vw 70px;gap:20px}.site-footer nav{max-width:none;justify-self:start;grid-column:1;gap:18px}.site-footer small{margin-top:0}.site-header .nav-cta{font-size:15px}.proposal .btn{font-size:12px;padding:16px 18px;gap:20px}}
@media(max-width:380px){.new-form .form-row{grid-template-columns:1fr;gap:0}.new-actions{gap:18px}.plain-call{font-size:13px}.hero-photo{height:255px}.service-accordion h3{font-size:18px}.contact-intro h2{font-size:32px}.proposal h1{font-size:37px}}
@media(prefers-reduced-motion:reduce){.expand{transition:none}}
/* Persistent navigation and lightweight interaction feedback. */
html{scroll-padding-top:110px}.nav.site-header,.subpage .nav.site-header{position:sticky;top:0;z-index:50;transition:box-shadow .25s ease;background:#fff}.site-header.has-scrolled{box-shadow:0 5px 24px #081f3417}.proposal [id],.subpage main [id]{scroll-margin-top:20px}.proposal .btn,.site-header .nav-cta{transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}.proposal .btn span,.nav-cta span,.plain-call span{display:inline-block;transition:transform .2s ease}.site-header .nav-links>a:not(.nav-cta){transition:color .2s ease}.service-accordion summary{transition:background-color .2s ease}.service-accordion summary:focus-visible{outline-offset:-3px}.featured-service img{transition:transform .6s ease}.featured-service figure{overflow:hidden}.service-area{max-width:400px;line-height:1.7}
@media(hover:hover){.proposal .btn:hover,.site-header .nav-cta:hover{transform:translateY(-2px);box-shadow:0 6px 18px #2168b72b}.proposal .btn:hover span,.nav-cta:hover span,.plain-call:hover span{transform:translate(3px,-3px)}.site-header .nav-links>a:not(.nav-cta):hover{color:#2168b7}.service-accordion summary:hover{background:#f5f8fb}.featured-service:hover img{transform:scale(1.025)}}
@media(max-width:900px){html{scroll-padding-top:96px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}.featured-service:hover img,.proposal .btn:hover,.site-header .nav-cta:hover{transform:none}}

/* Service illustrations from the existing public LA-AL site. */
.service-answer{display:grid;grid-template-columns:minmax(200px,.85fr) minmax(0,1fr);gap:28px;max-width:none;align-items:center}.service-character{display:block;width:100%;height:auto;aspect-ratio:1672/941;object-fit:contain;border-radius:8px}.service-answer-copy>a{font-size:13px;font-weight:700;color:#1b62ad;text-decoration:underline;text-underline-offset:5px}.featured-service img{object-fit:contain;background:#edf0f2}.featured-service figure{display:flex;align-items:center}.featured-service img{height:auto}
@media(max-width:700px){.service-answer{grid-template-columns:1fr;gap:18px;margin-left:35px}.service-character{max-width:480px}.featured-service figure{height:auto}.featured-service img{width:100%}}

/* Compact contact launcher with a disclosure panel. */
.contact-dock{position:fixed;right:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:45;color:#102b43}.contact-toggle{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;border:3px solid white;background:#2168b7;color:white;box-shadow:0 4px 20px #081f3433;cursor:pointer;transition:background .2s,transform .2s}.contact-toggle:hover{background:#184e8a;transform:translateY(-2px)}.contact-bubble{position:absolute;right:0;bottom:70px;width:215px;padding:10px 13px;border-radius:10px;background:white;border:1px solid #dce5ec;box-shadow:0 3px 16px #081f341a;font-size:12px;font-weight:500;line-height:1.5}.contact-bubble:after{content:'';position:absolute;right:22px;bottom:-6px;width:10px;height:10px;background:white;border-right:1px solid #dce5ec;border-bottom:1px solid #dce5ec;transform:rotate(45deg)}.contact-options{position:absolute;right:0;bottom:73px;width:300px;max-width:calc(100vw - 32px);padding:17px;border:1px solid #dce5ec;border-radius:12px;background:#fff;box-shadow:0 5px 26px #081f3426}.contact-options[hidden]{display:none}.contact-options p{font-size:13px;line-height:1.6;margin:0 0 13px;font-weight:600}.contact-options a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 12px;min-height:46px;border-radius:6px;font-size:12px;font-weight:600}.contact-options a+a{margin-top:8px}.dock-call{background:#2168b7;color:white}.dock-inquiry{background:#eef4fa;color:#164f8e}.contact-options a:hover{filter:brightness(.95)}.contact-options .dock-call span{font-size:11px;font-weight:400}.is-open .contact-bubble{display:none}.is-open .contact-options{animation:contact-appear .2s ease-out}footer.site-footer{padding-bottom:20px}html{scroll-padding-bottom:155px}@keyframes contact-appear{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
/* Decorative logo stays behind an opaque-enough navy layer and all text. */
.hero-text{position:relative;overflow:hidden;isolation:isolate}.hero-text:before{content:'';position:absolute;z-index:-2;width:540px;height:540px;max-width:none;right:-180px;top:20px;background:url('/assets/logo.png') center/contain no-repeat;opacity:.14;filter:blur(4px);animation:logo-orbit 75s linear infinite;pointer-events:none}.hero-text:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(8,31,52,.72),rgba(8,31,52,.25));pointer-events:none}@keyframes logo-orbit{to{transform:rotate(360deg)}}
@media(max-width:700px){.hero-text:before{width:400px;height:400px;right:-150px;top:30px;opacity:.12}.contact-bubble{width:190px;font-size:11px}}
@media(prefers-reduced-motion:reduce){.hero-text:before,.is-open .contact-options{animation:none}.contact-toggle:hover{transform:none}}
/* Shared, restrained visual system for the complete static site. */
:root{--paper:#f7f8f7;--ink:#102b43;--muted:#526a7d;--accent:#2168b7}
body{background:var(--paper)}.nav.site-header{height:88px;padding-inline:5vw}.site-header .nav-links{gap:38px}.site-header .nav-cta{border-radius:4px}.site-brand>span>span{font-size:12px}.new-hero{min-height:640px}.hero-text{padding-top:80px;padding-bottom:65px}.hero-text .lead{max-width:410px;font-size:16px;line-height:1.9}.proposal h1{font-size:clamp(42px,4.8vw,74px);letter-spacing:-.055em}.proposal .btn,.subpage .btn{border-radius:4px;font-size:13px;font-weight:600;min-height:50px}.hero-text:before{width:min(65%,360px);height:auto;aspect-ratio:1;inset:0;margin:auto;max-width:360px;opacity:.3;filter:grayscale(1) brightness(3) blur(2px);animation:logo-orbit 85s linear infinite}.hero-text:after{background:linear-gradient(90deg,rgba(8,31,52,.48),rgba(8,31,52,.12))}.hero-text h1,.hero-text .lead{text-shadow:0 2px 12px #081f3470}.hero-photo img{object-position:55% center}.new-services{padding-top:100px;padding-bottom:100px}.proposal .section-heading{margin-bottom:42px}.featured-service{border-radius:5px;background:#f2f5f6;border-color:#e2e8eb}.featured-service>div{padding:45px}.service-accordion{margin-top:32px}.service-accordion summary{padding-block:30px}.service-accordion h3{font-size:22px}.service-character{border-radius:4px}.new-process{padding-block:85px;background:#eef2f3}.new-process ol{gap:50px}.new-process h3{font-size:21px}.new-contact{padding-block:100px;gap:7vw}.new-form.form{border-radius:5px;border:0;padding:36px}.new-form.form:before{display:none}.proposal h2{letter-spacing:-.045em}.site-footer nav{flex-direction:row;justify-content:flex-end}.site-footer small{letter-spacing:.02em}.contact-dock.is-contextual-hidden{display:none}
.subpage h1,.subpage h2,.subpage h3{font-family:'DM Sans',Arial,sans-serif;font-weight:500;letter-spacing:-.04em}.subpage h1 em{font-family:'DM Serif Display',Georgia,serif;font-weight:400}.subpage .hero{padding:65px 8vw 75px;background:#081f34}.subpage .hero h1{font-size:clamp(40px,4.8vw,68px);line-height:1.1;margin-block:26px}.subpage .hero-copy>p{font-size:16px;line-height:1.85;max-width:650px}.subpage .eyebrow{font-size:10px;letter-spacing:1.8px}.subpage .breadcrumb{font-size:12px}.subpage .seo-section{padding:72px 8vw;background:var(--paper)}.subpage .seo-section h2{font-size:clamp(30px,3vw,44px);line-height:1.2}.subpage .seo-section h3{font-size:24px;line-height:1.25}.subpage .scope-grid{grid-template-columns:repeat(3,1fr);gap:28px}.subpage .scope-grid article,.subpage .scope-grid article:first-child{grid-column:auto;background:transparent;border:0;border-top:1px solid #ccd7df;border-radius:0;padding:26px 0}.subpage .scope-grid p{font-size:15px}.subpage .service-lead{gap:60px;border-bottom:1px solid #e1e7eb}.subpage .service-lead img{border-radius:5px}.subpage .faq summary{font-size:16px}.subpage .faq{border-top:1px solid #e1e7eb}.service-next{padding:60px 8vw 75px;background:#eaf0f4}.service-next h2{font-size:clamp(30px,3vw,44px);margin:15px 0 28px}.service-next .inline-link{display:inline-block;margin:18px 0 0 24px;font-size:13px}.subpage .legal-copy{max-width:830px}.subpage .legal-copy h1{font-size:clamp(36px,4vw,54px);line-height:1.15;margin:25px 0}.subpage .legal-copy h2{font-size:25px;margin-top:38px}.subpage .legal-copy p{font-size:15px;line-height:1.85}.subpage .legal-copy .kicker{font-size:10px}
@media(min-width:1500px){.new-services{max-width:1380px}.hero-text{padding-left:max(5vw,calc((100vw - 1380px)/2))}}
@media(max-width:900px){.nav.site-header{height:76px}.new-hero{min-height:550px}.proposal h1{font-size:clamp(34px,4.8vw,44px)}.new-contact{gap:30px}.subpage .scope-grid{grid-template-columns:1fr}.site-header .nav-links{gap:28px}}
@media(max-width:700px){.hero-text{padding:48px 6vw 40px}.proposal h1{font-size:clamp(34px,8.5vw,54px)}.hero-text:before{width:64%;max-width:270px;opacity:.28}.hero-text .lead{font-size:15px;line-height:1.8;max-width:440px}.hero-photo{height:285px}.new-services{padding:58px 6vw}.proposal .section-heading{margin-bottom:28px}.featured-service>div{padding:28px}.service-accordion summary{padding-block:24px}.service-accordion h3{font-size:20px}.new-process{padding:55px 6vw}.new-contact{padding:55px 6vw}.new-form.form{padding:28px 22px}.subpage .hero{padding:38px 6vw 48px}.subpage .hero h1{font-size:40px}.subpage .seo-section{padding:48px 6vw}.subpage .service-lead{gap:25px}.subpage .legal-copy h1{font-size:38px}.site-footer nav{justify-content:flex-start}.service-next{padding:45px 6vw 60px}.service-next .inline-link{display:block;margin-left:0}.hero-text:after{background:linear-gradient(90deg,rgba(8,31,52,.4),rgba(8,31,52,.15))}}
@media(prefers-reduced-motion:reduce){.hero-text:before{animation:none}}
.subpage .hero-copy{text-align:left}.subpage .hero-actions{justify-content:flex-start}.subpage .hero .eyebrow{font-size:11px;font-weight:600;letter-spacing:1.5px}.subpage .hero .eyebrow:before{display:none}
@media(max-width:380px){.subpage .hero h1{font-size:36px}.proposal h1{font-size:32px}.new-form .form-row{grid-template-columns:1fr}.contact-bubble{width:165px}.subpage .hero-actions .btn{font-size:11px}}
/* Service directory and project inspiration gallery. */
.overview-row{display:grid;grid-template-columns:35px 1fr 1fr 24px;gap:25px;align-items:center;padding:28px 0;border-top:1px solid #d6e0e6;transition:background .2s}.overview-row:last-child{border-bottom:1px solid #d6e0e6}.overview-row>span{font-size:12px;color:#547288}.overview-row>span:last-child{font-size:22px;color:#2168b7}.overview-row h3{font-family:'DM Sans',sans-serif;font-weight:500;font-size:22px;margin:0;letter-spacing:-.03em}.overview-row p{margin:0;font-size:14px;line-height:1.7;color:#526a7d}.overview-row:hover{background:#f3f6f7}.gallery-teaser{display:grid;grid-template-columns:1fr 1.2fr;gap:6vw;padding:70px 5vw;background:#eef2f3;align-items:center}.gallery-teaser h2{font-size:clamp(34px,3.6vw,52px);line-height:1.15}.gallery-teaser p:not(.section-label){font-size:15px;line-height:1.8;color:#526a7d;max-width:370px;margin:24px 0}.gallery-teaser img{display:block;width:100%;height:auto;border-radius:5px}.gallery-section{padding:40px 8vw 80px}.gallery-notice{font-size:13px;color:#526a7d;line-height:1.8;border-bottom:1px solid #d6e0e6;padding-bottom:25px;margin:0 0 40px}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:55px 35px}.project-gallery figure{margin:0}.project-gallery figure:first-child{grid-column:1/-1}.gallery-link{display:block;position:relative;overflow:hidden;border-radius:4px}.gallery-link img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;transition:transform .6s}.project-gallery figure:first-child img{aspect-ratio:16/9}.gallery-link:hover img{transform:scale(1.02)}.gallery-link>span{position:absolute;right:18px;bottom:18px;background:white;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;color:#2168b7}.project-gallery figcaption{display:flex;gap:18px;padding-top:22px}.project-gallery figcaption>span{font-size:11px;color:#708494;padding-top:6px}.project-gallery h2{font-size:24px;margin:0 0 10px}.project-gallery p{font-size:14px;line-height:1.7;color:#526a7d;margin:0}.gallery-dialog{border:0;border-radius:8px;padding:16px;background:#081f34;color:white;width:min(1100px,94vw);max-height:94dvh}.gallery-dialog::backdrop{background:#04111de8}.gallery-dialog img{display:block;width:100%;max-height:73dvh;object-fit:contain}.gallery-close{display:block;margin:0 0 12px auto;min-height:44px;padding:8px 18px;border:1px solid #94acc0;background:transparent;color:white;border-radius:4px;cursor:pointer}.gallery-dialog p{margin:14px 0 2px;font-size:14px}.subpage .new-services h2{font-size:42px}.subpage .section-heading{margin-bottom:35px}.subpage .section-label{font-size:10px;letter-spacing:1.7px;color:#2168b7;font-weight:600}.subpage .featured-service{margin-bottom:26px}
.hero-text:before{inset:auto 28px 28px auto;margin:0;width:min(44%,270px);height:auto;opacity:.32;animation:public-logo-turn 14s cubic-bezier(.45,.04,.3,1) infinite;transform-origin:center;filter:grayscale(1) brightness(3) blur(2px)}@keyframes public-logo-turn{0%,12%{transform:perspective(900px) rotateY(0deg)}45%,57%{transform:perspective(900px) rotateY(180deg)}90%,100%{transform:perspective(900px) rotateY(360deg)}}
@media(max-width:900px){.site-header .nav-links{gap:24px}}
@media(max-width:700px){.overview-row{grid-template-columns:22px 1fr 20px;gap:12px;padding:22px 0}.overview-row h3{font-size:20px}.overview-row p{grid-column:2;grid-row:2;font-size:13px}.overview-row>span:last-child{grid-column:3;grid-row:1}.gallery-teaser{grid-template-columns:1fr;padding:48px 6vw;gap:28px}.gallery-teaser h2{font-size:36px}.gallery-section{padding:30px 6vw 50px}.project-gallery{grid-template-columns:1fr;gap:35px}.project-gallery figure:first-child{grid-column:auto}.project-gallery figure:first-child img{aspect-ratio:3/2}.project-gallery h2{font-size:23px}.hero-text:before{width:43%;right:18px;bottom:20px;opacity:.3}.subpage .new-services h2{font-size:34px}}
@media(prefers-reduced-motion:reduce){.hero-text:before{animation:none}.gallery-link:hover img{transform:none}}
/* In-place enquiry flow: no route change and no jump to the homepage. */
.inquiry-dialog{border:1px solid #dbe5ec;border-radius:10px;padding:18px;width:min(660px,calc(100vw - 28px));max-height:calc(100dvh - 28px);background:#fff;color:#102b43;overscroll-behavior:contain}.inquiry-dialog::backdrop{background:rgba(4,17,29,.78);backdrop-filter:blur(4px)}.inquiry-close{display:block;margin:0 0 4px auto;padding:10px 14px;min-height:44px;border:1px solid #d9e3eb;background:#f4f7f9;border-radius:5px;color:#102b43;font:inherit;font-size:13px;cursor:pointer}.inquiry-dialog .new-form.form{padding:8px 18px 18px;border:0;box-shadow:none;border-radius:0}.inquiry-dialog .new-form h3{font-size:26px;margin:8px 0}.inquiry-dialog .inquiry-context{color:#2168b7;font-size:13px;margin:12px 0}.inquiry-dialog .required-note{margin-bottom:20px}.inquiry-dialog .form-note a{color:#365b78}.inquiry-dialog .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.inquiry-dialog .form-note a{display:inline-block}.inquiry-open{overflow:hidden}.inquiry-placeholder{width:100%;min-width:0}.inquiry-placeholder:empty:not([style]){display:none}.service-more{font-size:12px;margin-top:18px;color:#2168b7;text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.inquiry-dialog{padding:12px;max-height:calc(100dvh - 20px)}.inquiry-dialog .new-form.form{padding:4px 8px 14px}.inquiry-dialog .new-form h3{font-size:23px}.inquiry-dialog .form-row{grid-template-columns:1fr;gap:0}.inquiry-dialog .new-form label{margin-bottom:14px}.inquiry-dialog input,.inquiry-dialog textarea{font-size:16px}.inquiry-dialog .new-form .btn{min-height:48px}}
.hint-dismissed .contact-bubble{display:none}.new-form select{display:block;width:100%;margin-top:8px;border:1px solid #dce5ec;border-radius:5px;background:#f9fbfc;color:#102b43;padding:12px;font:inherit;font-size:14px;min-height:46px}.new-form select:focus{outline:2px solid #2168b7;outline-offset:2px}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px}.gallery-controls button{min-height:44px;border:1px solid #8aa5bb;border-radius:5px;background:transparent;color:#fff;padding:10px 16px;font:inherit;font-size:13px;cursor:pointer}.gallery-controls button:hover{background:#193b57}.gallery-count{font-size:13px;color:#c5d5e1}.gallery-dialog img{max-height:63dvh}@media(max-width:700px){.new-form select{font-size:16px}.gallery-controls button{font-size:12px;padding:10px}.inquiry-dialog{overflow-y:auto}}

/* Stable service presentation; media can later be replaced by a captioned video. */
.service-directory{max-width:1380px;margin:auto;padding:24px 6vw 70px}.service-editorial{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,5vw,76px);align-items:center;padding:64px 0;border-bottom:1px solid #d6e0e6;scroll-margin-top:110px}.service-editorial:last-child{border-bottom:0}.service-media{margin:0;min-width:0}.service-media img,.service-media video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:6px}.service-copy h2{font-size:clamp(28px,3vw,40px);line-height:1.18;margin:16px 0 22px}.service-copy>p:not(.section-label){font-size:16px;line-height:1.85;color:var(--muted);margin-bottom:28px}.service-copy .btn{display:inline-flex}.home-services .overview-row{grid-template-columns:35px 1fr 1fr}.home-services .overview-row:hover{background:transparent}.home-services .overview-row>span:last-child{font-size:12px;color:#547288}
@media(max-width:700px){.service-directory{padding:0 6vw 36px}.service-editorial{grid-template-columns:1fr;gap:26px;padding:38px 0}.service-copy h2{font-size:29px;margin:12px 0 16px}.service-copy>p:not(.section-label){font-size:15px;margin-bottom:22px}.home-services .overview-row{grid-template-columns:22px 1fr}.service-copy .section-label{margin-top:0}}

.service-media video{object-fit:contain;background:#081f34}.service-media figcaption{font-size:12px;color:var(--muted);margin-top:12px;line-height:1.6}

/* Restore direct service links on the homepage. */
.home-services a.overview-row{grid-template-columns:35px 1fr 1fr 24px}.home-services a.overview-row>span:last-child{font-size:22px;color:#2168b7}.home-services a.overview-row:hover{background:#eef2f3}.home-services a.overview-row:focus-visible{outline:2px solid #2168b7;outline-offset:4px}@media(max-width:700px){.home-services a.overview-row{grid-template-columns:22px 1fr 20px}}

/* Homepage services are readable in place, with no route changes. */
.home-service-directory{padding-top:72px}.home-service-directory .section-heading{margin-bottom:0}.home-service-directory .service-copy h3{font-family:'DM Sans',Arial,sans-serif;font-weight:500;letter-spacing:-.04em;font-size:clamp(28px,3vw,40px);line-height:1.18;margin:16px 0 22px}.home-service-directory .section-label{font-size:10px;letter-spacing:1.7px;color:#2168b7;font-weight:600}.home-service-directory .service-editorial .section-label{display:none}.site-footer{margin-bottom:0;padding-bottom:20px}html,body{overscroll-behavior-y:none}body{margin-bottom:0;padding-bottom:0}#storitve{scroll-margin-top:88px}@media(max-width:700px){.home-service-directory{padding-top:48px}.home-service-directory .service-copy h3{font-size:29px}.site-footer{padding-bottom:18px}#storitve{scroll-margin-top:76px}}

/* Gentle motion on every screen; no animated layout dimensions. */
@keyframes panel-enter{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
@keyframes backdrop-enter{from{opacity:0}to{opacity:1}}
.inquiry-dialog[open],.gallery-dialog[open]{animation:panel-enter .3s cubic-bezier(.2,.7,.2,1)}
.inquiry-dialog[open]::backdrop,.gallery-dialog[open]::backdrop{animation:backdrop-enter .25s ease-out}
.contact-dock.is-open .contact-options{animation:panel-enter .24s ease-out}
.btn,.contact-toggle,.gallery-controls button{transition:transform .2s ease,background-color .2s ease,box-shadow .2s ease}
.btn:active,.contact-toggle:active,.gallery-controls button:active{transform:scale(.97)}
.btn>span{display:inline-block;transition:transform .2s ease}
.site-header{transition:box-shadow .25s ease,background-color .25s ease}
.new-form input,.new-form textarea,.new-form select{transition:border-color .2s ease,box-shadow .2s ease}
.new-form input:focus,.new-form textarea:focus,.new-form select:focus{box-shadow:0 0 0 3px #2168b718}
@media(hover:hover) and (pointer:fine){.btn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #102b4320}.btn:hover>span{transform:translate(3px,-2px)}.contact-toggle:hover{transform:translateY(-3px)}}
@media(max-width:700px){.inquiry-dialog[open],.gallery-dialog[open]{animation-duration:.24s}}
@media(prefers-reduced-motion:reduce){.inquiry-dialog[open],.gallery-dialog[open],.inquiry-dialog[open]::backdrop,.gallery-dialog[open]::backdrop,.contact-dock.is-open .contact-options{animation:none}.btn,.btn>span,.contact-toggle,.gallery-controls button,.site-header,.new-form input,.new-form textarea,.new-form select{transition:none}.btn:hover,.btn:active,.btn:hover>span,.contact-toggle:hover,.contact-toggle:active,.gallery-controls button:active{transform:none}}

/* Short, skippable welcome curtain; homepage content is never hidden by default. */
.brand-intro-active{overflow:hidden}
.brand-intro{position:fixed;inset:0;margin:0;padding:0;border:0;width:100%;height:100%;max-width:none;max-height:none;background:radial-gradient(ellipse at 50% 40%,#193f62 0%,#081f34 65%);color:#fff;overflow:hidden;z-index:10000}
.brand-intro::backdrop{background:transparent}
.brand-intro-skip{width:100%;height:100%;border:0;background:transparent;color:inherit;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px;cursor:pointer;font:inherit;padding:30px}
.brand-intro-mark{display:grid;place-items:center;width:clamp(150px,24vw,240px);aspect-ratio:1;border-radius:50%;background:white;box-shadow:0 0 90px #7fbaff25;animation:intro-logo-turn 2.8s ease-in-out infinite}
.brand-intro-mark img{display:block;width:88%;height:88%;object-fit:contain;border-radius:50%}
.brand-intro-name{font-size:12px;letter-spacing:.28em;color:#d2e4f4}.brand-intro-hint{position:absolute;bottom:max(36px,env(safe-area-inset-bottom));font-size:12px;letter-spacing:.03em;color:#bbd1e3}.brand-intro-hint span{display:inline-block;margin-left:12px}
.brand-intro.is-leaving{animation:intro-curtain-up .65s cubic-bezier(.76,0,.24,1) forwards;pointer-events:none}
@keyframes intro-curtain-up{to{transform:translateY(-100%)}}
@keyframes intro-logo-turn{0%,12%{transform:perspective(900px) rotateY(0deg)}70%,100%{transform:perspective(900px) rotateY(360deg)}}
@media(max-width:700px){.brand-intro-mark{width:170px}.brand-intro-skip{gap:26px}}
@media(prefers-reduced-motion:reduce){.brand-intro-mark,.brand-intro.is-leaving,.hero-text:before{animation:none}}

/* Mobile hero mark: clearer and slightly larger, clear of the headline. */
@media(max-width:700px){.hero-text:before{inset:12px 12px auto auto;width:clamp(88px,24vw,114px);max-width:114px;height:auto;margin:0;opacity:.44;filter:grayscale(1) brightness(3) blur(.6px);z-index:-2;border-radius:0;background-color:transparent;background-size:contain;box-shadow:none;animation:public-logo-turn 14s cubic-bezier(.45,.04,.3,1) infinite}}
@media(max-width:700px) and (prefers-reduced-motion:reduce){.hero-text:before{animation:none}}
