.lv{
  --navy: #101d2c;
  --navy-2: #172738;
  --navy-3: #22364b;
  --amber: #f68a25;
  --amber-dark: #d9711a;
  --white: #ffffff;
  --paper: #f5f3ef;
  --ink: #101d2c;
  --muted: #5b6876;
  --muted-on-dark: #a9b4c0;
  --line: #dcd8d0;
  --line-dark: rgba(255, 255, 255, 0.12);
  --font-display: "Archivo", "Helvetica Neue", Arial, sans-serif;
  --font-body: "Inter Tight", "Helvetica Neue", Arial, sans-serif;
  --container: 1240px;
  --gutter: clamp(20px, 4vw, 48px);
  --section: clamp(80px, 11vw, 150px);
  --radius: 2px;
  --ease: cubic-bezier(0.2, 0.7, 0.2, 1);
}
.lv *,.lv *::before,.lv *::after{ box-sizing: border-box; }
.lv{ -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
.lv{
  margin: 0;
  font-family: var(--font-body);
  font-size: 17px;
  line-height: 1.65;
  color: var(--ink);
  background: var(--white);
  -webkit-font-smoothing: antialiased;
}
.lv img{ max-width: 100%; display: block; height: auto; }
.lv a{ color: inherit; }
.lv h1,.lv h2,.lv h3,.lv h4{ font-family: var(--font-display); line-height: 1.05; margin: 0; letter-spacing: -0.02em; font-weight: 700; }
.lv p{ margin: 0 0 1em; }
.lv ul{ margin: 0; padding: 0; list-style: none; }
.lv :focus-visible{ outline: 3px solid var(--amber); outline-offset: 3px; }
.lv .skip-link{ position: absolute; left: -9999px; top: 0; background: var(--amber); color: var(--navy); padding: 12px 18px; z-index: 200; font-weight: 700; }
.lv .skip-link:focus{ left: 12px; top: 12px; }
.lv .sr-only{ position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.lv .container{ width: 100%; max-width: var(--container); margin: 0 auto; padding: 0 var(--gutter); }
.lv .section{ padding: var(--section) 0; }
.lv .section--dark{ background: var(--navy); color: var(--white); }
.lv .section--paper{ background: var(--paper); }
.lv .eyebrow{
  display: inline-flex; align-items: center; gap: 14px;
  font-family: var(--font-display); font-size: 12px; font-weight: 600;
  letter-spacing: 0.22em; text-transform: uppercase; color: var(--amber-dark);
  margin-bottom: 22px;
}
.lv .section--dark .eyebrow,.lv .hero .eyebrow{ color: var(--amber); }
.lv .eyebrow::before{ content: ""; width: 36px; height: 2px; background: currentColor; }
.lv .h2{ font-size: clamp(34px, 4.6vw, 58px); max-width: 16ch; }
.lv .lead{ font-size: clamp(18px, 1.6vw, 20px); color: var(--muted); max-width: 54ch; }
.lv .section--dark .lead{ color: var(--muted-on-dark); }
.lv .section-head{ display: grid; grid-template-columns: 1.1fr 1fr; gap: 48px; align-items: end; margin-bottom: clamp(48px, 6vw, 80px); }
.lv .section-head .lead{ margin: 0; }
.lv .btn{
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: 56px; padding: 0 28px; border: 2px solid transparent; border-radius: var(--radius);
  font-family: var(--font-display); font-weight: 600; font-size: 16px; letter-spacing: 0.01em;
  text-decoration: none; cursor: pointer; transition: background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease), transform .2s var(--ease);
}
.lv .btn svg{ width: 20px; height: 20px; flex: none; }
.lv .btn--primary{ background: var(--amber); color: var(--navy); }
.lv .btn--primary:hover{ background: var(--white); }
.lv .btn--ghost{ border-color: rgba(255,255,255,.35); color: var(--white); }
.lv .btn--ghost:hover{ border-color: var(--white); background: rgba(255,255,255,.06); }
.lv .btn--dark{ background: var(--navy); color: var(--white); }
.lv .btn--dark:hover{ background: var(--amber); color: var(--navy); }
.lv .btn--outline{ border-color: var(--navy); color: var(--navy); }
.lv .btn--outline:hover{ background: var(--navy); color: var(--white); }
.lv .topbar{ background: var(--navy-2); color: var(--muted-on-dark); font-size: 13px; }
.lv .topbar .container{ display: flex; justify-content: space-between; gap: 20px; padding-top: 9px; padding-bottom: 9px; }
.lv .topbar a{ color: var(--white); text-decoration: none; }
.lv .topbar a:hover{ color: var(--amber); }
.lv .topbar__dot{ display: inline-block; width: 7px; height: 7px; border-radius: 50%; background: var(--amber); margin-right: 8px; vertical-align: 1px; }
.lv .site-header{ position: sticky; top: 0; z-index: 100; background: var(--navy); color: var(--white); border-bottom: 1px solid var(--line-dark); }
.lv .site-header .container{ display: flex; align-items: center; justify-content: space-between; height: 84px; gap: 24px; }
.lv .brand{ display: inline-flex; align-items: center; }
.lv .brand img{ width: 220px; height: auto; }
.lv .nav{ display: flex; align-items: center; gap: 36px; }
.lv .nav__list{ display: flex; gap: 32px; }
.lv .nav__list a{ text-decoration: none; font-size: 15px; font-weight: 500; color: var(--muted-on-dark); padding: 6px 0; position: relative; transition: color .2s; }
.lv .nav__list a:hover,.lv .nav__list a[aria-current="page"]{ color: var(--white); }
.lv .nav__list a[aria-current="page"]::after{ content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 2px; background: var(--amber); }
.lv .nav__phone{ min-height: 46px; padding: 0 20px; font-size: 15px; }
.lv .menu-toggle{ display: none; background: none; border: 1px solid var(--line-dark); color: var(--white); width: 48px; height: 48px; border-radius: var(--radius); cursor: pointer; align-items: center; justify-content: center; }
.lv .menu-toggle span,.lv .menu-toggle span::before,.lv .menu-toggle span::after{ display: block; width: 20px; height: 2px; background: currentColor; position: relative; transition: transform .25s var(--ease), background .2s; }
.lv .menu-toggle span::before,.lv .menu-toggle span::after{ content: ""; position: absolute; left: 0; }
.lv .menu-toggle span::before{ top: -6px; }
.lv .menu-toggle span::after{ top: 6px; }
.lv .menu-toggle[aria-expanded="true"] span{ background: transparent; }
.lv .menu-toggle[aria-expanded="true"] span::before{ transform: translateY(6px) rotate(45deg); }
.lv .menu-toggle[aria-expanded="true"] span::after{ transform: translateY(-6px) rotate(-45deg); }
.lv .hero{ position: relative; background: var(--navy); color: var(--white); overflow: hidden; }
.lv .hero::before{ 
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background-image: linear-gradient(var(--line-dark) 1px, transparent 1px), linear-gradient(90deg, var(--line-dark) 1px, transparent 1px);
  background-size: 120px 120px; opacity: .35;
  mask-image: linear-gradient(90deg, #000 0%, transparent 60%);
  -webkit-mask-image: linear-gradient(90deg, #000 0%, transparent 60%);
}
.lv .hero__grid{ position: relative; display: grid; grid-template-columns: 1.15fr 0.85fr; gap: clamp(32px, 5vw, 80px); align-items: center; padding-top: clamp(64px, 9vw, 120px); padding-bottom: clamp(72px, 10vw, 140px); }
.lv .hero h1{ font-size: clamp(44px, 7vw, 96px); letter-spacing: -0.035em; line-height: 0.98; margin-bottom: 32px; }
.lv .hero h1 em{ font-style: normal; color: var(--amber); }
.lv .hero__intro{ font-size: clamp(18px, 1.7vw, 21px); color: var(--muted-on-dark); max-width: 50ch; margin-bottom: 40px; }
.lv .hero__actions{ display: flex; flex-wrap: wrap; gap: 14px; }
.lv .hero__meta{ display: grid; grid-template-columns: repeat(3, auto); justify-content: start; gap: 0; margin-top: 56px; border-top: 1px solid var(--line-dark); }
.lv .hero__meta li{ padding: 20px 24px 0 0; margin-right: 24px; font-size: 14px; color: var(--muted-on-dark); border-right: 1px solid var(--line-dark); }
.lv .hero__meta li:last-child{ border-right: 0; }
.lv .hero__meta strong{ display: block; font-family: var(--font-display); color: var(--white); font-size: 16px; font-weight: 600; }
.lv .hero__visual{ position: relative; }
.lv .hero__frame{ position: relative; z-index: 1; aspect-ratio: 4 / 5; overflow: hidden; border-radius: var(--radius); }
.lv .hero__frame img{ width: 100%; height: 100%; object-fit: cover; object-position: 60% center; }
.lv .hero__visual::before{ content: ""; position: absolute; z-index: 0; top: -28px; right: -28px; width: 62%; height: 58%; border-top: 2px solid var(--amber); border-right: 2px solid var(--amber); }
.lv .hero__visual::after{ content: ""; position: absolute; z-index: 0; bottom: -28px; left: -28px; width: 44%; height: 40%; background-image: radial-gradient(rgba(246,138,37,.55) 1.5px, transparent 1.5px); background-size: 14px 14px; }
.lv .photo-label{ position: absolute; z-index: 2; right: 12px; bottom: 12px; font-size: 11px; letter-spacing: .06em; color: rgba(255,255,255,.85); background: rgba(16,29,44,.7); padding: 3px 8px; border-radius: var(--radius); }
.lv .hero__badge{ position: absolute; z-index: 2; left: -40px; top: 12%; background: var(--white); color: var(--navy); padding: 20px 24px; max-width: 230px; box-shadow: 0 24px 50px -20px rgba(0,0,0,.5); border-left: 4px solid var(--amber); }
.lv .hero__badge small{ display: block; font-size: 11px; letter-spacing: .18em; text-transform: uppercase; color: var(--muted); margin-bottom: 4px; }
.lv .hero__badge strong{ font-family: var(--font-display); font-size: 20px; line-height: 1.2; }
.lv .band{ background: var(--amber); color: var(--navy); }
.lv .band .container{ display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 32px; padding-top: 18px; padding-bottom: 18px; font-family: var(--font-display); font-weight: 600; font-size: 15px; letter-spacing: .04em; text-transform: uppercase; }
.lv .band .container>span{display:flex;align-items:center;gap:10px}
.lv .band .icon{width:25px;height:25px;flex:none}
.lv .services{ display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.lv .service-card{
  position: relative; display: flex; flex-direction: column; min-height: 340px; padding: 40px 36px 36px;
  border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--white);
  text-decoration: none; color: var(--ink); overflow: hidden; transition: background .3s var(--ease), color .3s var(--ease);
}
.lv .service-card::before{ content: ""; position: absolute; left: 0; top: 0; height: 3px; width: 0; background: var(--amber); transition: width .4s var(--ease); }
.lv .service-card:hover,.lv .service-card:focus-visible{ background: var(--navy); color: var(--white); }
.lv .service-card:hover::before,.lv .service-card:focus-visible::before{ width: 100%; }
.lv .service-card__num{ font-family: var(--font-display); font-size: 13px; font-weight: 600; letter-spacing: .14em; color: var(--muted); margin-bottom: 40px; display: flex; justify-content: space-between; align-items: center; }
.lv .service-card__icon{ width: 44px; height: 44px; color: var(--amber); }
.lv .service-card h3{ font-size: 26px; margin-bottom: 14px; }
.lv .service-card p{ color: var(--muted); font-size: 16px; margin-bottom: 28px; }
.lv .service-card:hover p,.lv .service-card:focus-visible p,.lv .service-card:hover .service-card__num{ color: var(--muted-on-dark); }
.lv .service-card__link{ margin-top: auto; display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-display); font-weight: 600; font-size: 15px; }
.lv .service-card__link svg{ width: 18px; height: 18px; transition: transform .3s var(--ease); color: var(--amber); }
.lv .service-card:hover .service-card__link svg{ transform: translateX(6px); }
.lv .split{ display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px, 7vw, 110px); align-items: center; }
.lv .checklist li{ position: relative; padding: 18px 0 18px 40px; border-bottom: 1px solid var(--line); }
.lv .section--dark .checklist li{ border-color: var(--line-dark); }
.lv .checklist li::before{ content: ""; position: absolute; left: 0; top: 27px; width: 18px; height: 2px; background: var(--amber); }
.lv .checklist strong{ font-family: var(--font-display); display: block; font-size: 18px; }
.lv .checklist span{ color: var(--muted); font-size: 15px; }
.lv .section--dark .checklist span{ color: var(--muted-on-dark); }
.lv .process{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; counter-reset: step; position: relative; }
.lv .step{ position: relative; padding: 0 40px 0 0; }
.lv .step__num{ font-family: var(--font-display); font-weight: 800; font-size: clamp(64px, 8vw, 110px); line-height: 1; color: transparent; -webkit-text-stroke: 1.5px var(--amber); margin-bottom: 28px; display: block; }
.lv .step__rule{ height: 1px; background: var(--line-dark); margin-bottom: 28px; position: relative; }
.lv .step__rule::before{ content: ""; position: absolute; left: 0; top: -4px; width: 9px; height: 9px; background: var(--amber); }
.lv .step h3{ font-size: 24px; margin-bottom: 14px; }
.lv .step p{ color: var(--muted-on-dark); font-size: 16px; max-width: 34ch; }
.lv .process-cta{ margin-top: 72px; display: flex; flex-wrap: wrap; gap: 24px; align-items: center; justify-content: space-between; padding-top: 40px; border-top: 1px solid var(--line-dark); }
.lv .process-cta p{ margin: 0; font-size: 20px; font-family: var(--font-display); }
.lv .areas{ display: grid; grid-template-columns: 1fr 1fr; gap: 0; border-top: 2px solid var(--navy); }
.lv .area{ padding: 40px 40px 40px 0; }
.lv .area + .area{ padding-left: 40px; border-left: 1px solid var(--line); }
.lv .area h3{ font-size: 32px; margin-bottom: 8px; }
.lv .area > p{ color: var(--muted); }
.lv .tags{ display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.lv .tags li{ font-size: 14px; padding: 7px 14px; border: 1px solid var(--line); border-radius: var(--radius); background: var(--white); }
.lv .areas-note{ margin-top: 32px; font-size: 15px; color: var(--muted); }
.lv .faq{ border-top: 1px solid var(--line); }
.lv .faq details{ border-bottom: 1px solid var(--line); }
.lv .faq summary{ list-style: none; cursor: pointer; display: flex; justify-content: space-between; gap: 24px; align-items: center; padding: 28px 0; font-family: var(--font-display); font-weight: 600; font-size: clamp(18px, 1.8vw, 22px); }
.lv .faq summary::-webkit-details-marker{ display: none; }
.lv .faq summary::after{ content: ""; flex: none; width: 36px; height: 36px; border: 1px solid var(--line); border-radius: 50%;
  background: linear-gradient(var(--navy), var(--navy)) center / 12px 2px no-repeat, linear-gradient(var(--navy), var(--navy)) center / 2px 12px no-repeat; transition: transform .3s var(--ease), background-color .2s; }
.lv .faq details[open] summary::after{ transform: rotate(45deg); background-color: var(--amber); border-color: var(--amber); }
.lv .faq summary:hover{ color: var(--amber-dark); }
.lv .faq__body{ padding: 0 60px 28px 0; color: var(--muted); max-width: 70ch; }
.lv .cta{ position: relative; background: var(--navy); color: var(--white); overflow: hidden; }
.lv .cta::after{ content: ""; position: absolute; right: -80px; top: 50%; width: 420px; height: 420px; transform: translateY(-50%); border: 2px solid rgba(246,138,37,.35); border-radius: 50%; box-shadow: 0 0 0 60px rgba(246,138,37,.05), 0 0 0 120px rgba(246,138,37,.03); }
.lv .cta .container{ position: relative; z-index: 1; display: grid; grid-template-columns: 1.3fr 1fr; gap: 48px; align-items: center; padding-top: clamp(72px, 9vw, 120px); padding-bottom: clamp(72px, 9vw, 120px); }
.lv .cta h2{ font-size: clamp(36px, 5vw, 64px); }
.lv .cta__phone{ display: block; font-family: var(--font-display); font-weight: 700; font-size: clamp(36px, 4.6vw, 60px); color: var(--amber); text-decoration: none; letter-spacing: -0.02em; line-height: 1; margin: 14px 0 22px; }
.lv .cta__phone:hover{ color: var(--white); }
.lv .cta__mail{ color: var(--muted-on-dark); }
.lv .cta__mail a{ color: var(--white); }
.lv .site-footer{ background: #0b1520; color: var(--muted-on-dark); font-size: 15px; }
.lv .footer__grid{ display: grid; grid-template-columns: 1.5fr 1fr 1fr 1.2fr; gap: 48px; padding-top: 88px; padding-bottom: 64px; }
.lv .footer__brand img{ width: 230px; margin-bottom: 24px; }
.lv .footer__brand p{ max-width: 36ch; }
.lv .site-footer h4{ font-size: 12px; letter-spacing: .2em; text-transform: uppercase; color: var(--white); margin-bottom: 22px; font-weight: 600; }
.lv .site-footer li{ margin-bottom: 10px; }
.lv .site-footer a{ text-decoration: none; transition: color .2s; }
.lv .site-footer a:hover{ color: var(--amber); }
.lv .footer__phone{ font-family: var(--font-display); font-size: 24px; font-weight: 700; color: var(--white); }
.lv .footer__bottom{ border-top: 1px solid var(--line-dark); }
.lv .footer__bottom .container{ display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding-top: 24px; padding-bottom: 24px; font-size: 13px; }
.lv .mobile-call{ display: none; }
.lv .page-hero{ background: var(--navy); color: var(--white); padding: clamp(64px, 8vw, 110px) 0 clamp(56px, 7vw, 90px); position: relative; overflow: hidden; }
.lv .page-hero::after{ content: ""; position: absolute; right: 0; bottom: 0; width: 40%; height: 2px; background: var(--amber); }
.lv .page-hero h1{ font-size: clamp(40px, 6vw, 76px); max-width: 18ch; margin-bottom: 20px; }
.lv .page-hero p{ color: var(--muted-on-dark); font-size: 19px; max-width: 58ch; }
.lv .breadcrumb{ display: flex; flex-wrap: wrap; gap: 10px; font-size: 13px; color: var(--muted-on-dark); margin-bottom: 28px; }
.lv .breadcrumb a{ color: var(--white); text-decoration: none; }
.lv .breadcrumb li + li::before{ content: "/"; margin-right: 10px; color: var(--amber); }
.lv .service-detail{ display: grid; grid-template-columns: 1fr 340px; gap: clamp(40px, 6vw, 90px); align-items: start; }
.lv .prose h2{ font-size: clamp(28px, 3vw, 38px); margin: 56px 0 18px; }
.lv .prose h2:first-child{ margin-top: 0; }
.lv .prose h3{ font-size: 22px; margin: 32px 0 12px; }
.lv .prose p,.lv .prose li{ color: #374452; }
.lv .prose ul{ margin: 0 0 1.4em; }
.lv .prose ul li{ position: relative; padding-left: 28px; margin-bottom: 10px; }
.lv .prose ul li::before{ content: ""; position: absolute; left: 0; top: 13px; width: 14px; height: 2px; background: var(--amber); }
.lv .prose img{ margin: 32px 0; border-radius: var(--radius); }
.lv .aside-card{ position: sticky; top: 110px; background: var(--navy); color: var(--white); padding: 36px 32px; border-top: 4px solid var(--amber); }
.lv .aside-card h3{ font-size: 22px; margin-bottom: 12px; }
.lv .aside-card p{ color: var(--muted-on-dark); font-size: 15px; }
.lv .aside-card .btn{ width: 100%; margin-top: 8px; }
.lv .aside-list{ margin-top: 28px; border-top: 1px solid var(--line-dark); }
.lv .aside-list a{ display: flex; justify-content: space-between; padding: 14px 0; border-bottom: 1px solid var(--line-dark); text-decoration: none; color: var(--muted-on-dark); font-size: 15px; }
.lv .aside-list a:hover,.lv .aside-list a[aria-current="page"]{ color: var(--amber); }
.lv .gallery{ display: grid; grid-template-columns: repeat(12, 1fr); gap: 16px; }
.lv .gallery__item{ position: relative; grid-column: span 4; overflow: hidden; background: var(--paper); aspect-ratio: 4 / 3; margin: 0; }
.lv .gallery__item--wide{ grid-column: span 8; aspect-ratio: auto; }
.lv .gallery__item--tall{ grid-row: span 2; aspect-ratio: auto; }
.lv .gallery__item img{ width: 100%; height: 100%; object-fit: cover; transition: transform .6s var(--ease); }
.lv .gallery__item:hover img{ transform: scale(1.04); }
.lv .gallery__item figcaption{ position: absolute; left: 0; right: 0; bottom: 0; padding: 40px 20px 16px; color: var(--white); font-size: 14px; background: linear-gradient(transparent, rgba(16,29,44,.85)); }
.lv .gallery__item figcaption strong{ display: block; font-family: var(--font-display); font-size: 17px; }
.lv .filters{ display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 32px; }
.lv .filters button{ font: inherit; font-size: 14px; padding: 9px 18px; border: 1px solid var(--line); background: var(--white); border-radius: var(--radius); cursor: pointer; }
.lv .filters button[aria-pressed="true"],.lv .filters button:hover{ background: var(--navy); color: var(--white); border-color: var(--navy); }
.lv .contact-grid{ display: grid; grid-template-columns: 1fr 1.3fr; gap: clamp(40px, 6vw, 90px); align-items: start; }
.lv .contact-info li{ padding: 22px 0; border-bottom: 1px solid var(--line); }
.lv .contact-info small{ display: block; font-size: 12px; letter-spacing: .18em; text-transform: uppercase; color: var(--muted); margin-bottom: 4px; }
.lv .contact-info a,.lv .contact-info strong{ font-family: var(--font-display); font-size: 22px; font-weight: 600; text-decoration: none; }
.lv .contact-info a:hover{ color: var(--amber-dark); }
.lv .form{ background: var(--paper); padding: clamp(28px, 4vw, 48px); border-top: 4px solid var(--navy); }
.lv .form__row{ display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.lv .field{ display: flex; flex-direction: column; gap: 8px; margin-bottom: 22px; }
.lv .field label{ font-size: 14px; font-weight: 600; }
.lv .field input,.lv .field select,.lv .field textarea{ font: inherit; font-size: 16px; color: var(--ink); padding: 14px 16px; background: var(--white); border: 1px solid var(--line); border-radius: var(--radius); transition: border-color .2s, box-shadow .2s; }
.lv .field textarea{ min-height: 150px; resize: vertical; }
.lv .field input:focus,.lv .field select:focus,.lv .field textarea:focus{ outline: none; border-color: var(--navy); box-shadow: 0 0 0 3px rgba(246,138,37,.35); }
.lv .field__hint{ font-size: 13px; color: var(--muted); }
.lv .form-alert{ padding: 16px 20px; margin-bottom: 24px; border-left: 4px solid var(--amber); background: var(--white); font-size: 15px; }
.lv .form-alert--error{ border-color: #c0392b; }
.lv .reveal{ opacity: 0; transform: translateY(24px); transition: opacity .8s var(--ease), transform .8s var(--ease); }
.lv .reveal.is-visible{ opacity: 1; transform: none; }
.lv .reveal{ opacity: 1; transform: none; }
@media (max-width: 1080px){.lv .services{ grid-template-columns: repeat(2, 1fr); }
.lv .footer__grid{ grid-template-columns: 1fr 1fr; }
.lv .hero__badge{ left: 16px; top: auto; bottom: 24px; }
}
@media (max-width: 920px){.lv .menu-toggle{ display: inline-flex; }
.lv .nav{ position: fixed; inset: 84px 0 0 0; background: var(--navy); flex-direction: column; align-items: stretch; padding: 24px var(--gutter) 40px; gap: 24px; transform: translateX(100%); visibility: hidden; transition: transform .35s var(--ease), visibility .35s; overflow-y: auto; }
.lv .nav.is-open{ transform: none; visibility: visible; }
.lv .nav__list{ flex-direction: column; gap: 0; }
.lv .nav__list a{ display: block; padding: 18px 0; font-size: 22px; font-family: var(--font-display); color: var(--white); border-bottom: 1px solid var(--line-dark); }
.lv .nav__list a[aria-current="page"]::after{ display: none; }
.lv .nav__list a[aria-current="page"]{ color: var(--amber); }
.lv .hero__grid,.lv .split,.lv .section-head,.lv .cta .container,.lv .service-detail,.lv .contact-grid{ grid-template-columns: 1fr; }
.lv .hero__visual{ max-width: 520px; margin: 24px auto 0 0; }
.lv .process{ grid-template-columns: 1fr; gap: 56px; }
.lv .areas{ grid-template-columns: 1fr; }
.lv .area + .area{ padding-left: 0; border-left: 0; border-top: 1px solid var(--line); }
.lv .aside-card{ position: static; }
.lv .gallery__item,.lv .gallery__item--wide{ grid-column: span 6; }
}
@media (max-width: 640px){.lv{ font-size: 16px; padding-bottom: 76px; }
.lv .topbar{ display: none; }
.lv .site-header .container{ height: 72px; }
.lv .nav{ inset: 72px 0 0 0; }
.lv .brand img{ width: 170px; }
.lv .services{ grid-template-columns: 1fr; }
.lv .service-card{ min-height: 0; padding: 32px 24px; }
.lv .hero__actions .btn{ width: 100%; }
.lv .hero__meta{ grid-template-columns: 1fr; }
.lv .hero__meta li{ border-right: 0; padding-right: 0; width: 100%; margin-right: 0; padding-bottom: 4px; }
.lv .hero__visual::before{ right: -10px; top: -14px; }
.lv .hero__visual::after{ left: -10px; bottom: -14px; }
.lv .footer__grid{ grid-template-columns: 1fr; padding-top: 64px; }
.lv .form__row{ grid-template-columns: 1fr; }
.lv .gallery__item,.lv .gallery__item--wide{ grid-column: span 12; }
.lv .faq__body{ padding-right: 0; }
.lv .mobile-call{ display: flex; position: fixed; left: 12px; right: 12px; bottom: 12px; z-index: 150; min-height: 56px; align-items: center; justify-content: center; gap: 12px; background: var(--amber); color: var(--navy); font-family: var(--font-display); font-weight: 700; font-size: 17px; text-decoration: none; border-radius: var(--radius); box-shadow: 0 12px 30px -8px rgba(16,29,44,.55); }
.lv .mobile-call svg{ width: 20px; height: 20px; }
}
@media (prefers-reduced-motion: reduce){.lv{ scroll-behavior: auto; }
.lv *,.lv *::before,.lv *::after{ transition-duration: .01ms !important; animation-duration: .01ms !important; }
.lv .reveal{ opacity: 1; transform: none; }
}

.lv{--font-display:Manrope,Arial,sans-serif;--font-body:DM,Arial,sans-serif;--amber-dark:#a74a00;font-family:var(--font-body);font-size:17px;line-height:1.65;scroll-padding-top:120px}
.lv .service-card{border-radius:0;border-top:0;border-left:0;box-shadow:none;transform:none;align-items:stretch}
.lv .service-card:hover{transform:none;box-shadow:none}
.lv .service-card h3{color:inherit}
.lv .section-head .lead{font-size:18px}
.lv .reveal{opacity:1;transform:none}
.lv .hero__frame picture{display:block;width:100%;height:100%}
.lv .hero__actions{position:relative;z-index:3}
.lv .cta .eyebrow{color:#ffad5c}
.lv .lv-alba-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:40px}
.lv .work-card{border-radius:2px}
.lv .work-card figcaption{color:#101d2c}
.lv .work-card .photo{aspect-ratio:.82}
.lv .work-card img{width:100%;height:100%;object-fit:cover}
.lv .gallery-intro{max-width:560px;margin-top:24px;color:var(--muted)}
.lv .section--dark .eyebrow{color:var(--amber)}
@media(max-width:920px){.lv .hero h1{max-width:13ch}.lv .hero__grid{padding-top:56px}.lv .hero__visual{width:min(100%,520px)}.lv .hero__frame{aspect-ratio:1.2}.lv .hero__frame img{object-position:center}}
@media(max-width:640px){.lv{padding-bottom:0}.lv .container{padding-inline:20px}.lv .hero h1{font-size:clamp(40px,11.5vw,60px)}.lv .hero__meta{grid-template-columns:1fr 1fr;margin-top:30px;gap:14px}.lv .hero__meta li{font-size:12px;margin:0;padding:15px 0 0}.lv .hero__meta strong{font-size:13px}.lv .hero__meta li:last-child{display:none}.lv .hero__intro{font-size:17px}.lv .hero__badge{max-width:200px;padding:15px 18px}.lv .hero__badge strong{font-size:16px}.lv .hero__visual{margin-top:10px}.lv .section{padding-block:65px}.lv .lv-alba-gallery{grid-template-columns:1fr 1fr;gap:12px}.lv .work-card figcaption{font-size:12px;padding:12px}.lv .band .container{font-size:11px;gap:9px 20px}.lv .cta__phone{font-size:clamp(30px,9vw,50px)}}
.lv .hero__grid{grid-template-columns:1.15fr .95fr;padding-block:72px 76px;gap:60px}
.lv .hero h1{font-size:clamp(46px,4.8vw,70px);line-height:1.06;margin-bottom:26px;max-width:12.5ch}
.lv .hero__intro{font-size:18px;margin-bottom:28px}
.lv .hero__frame{aspect-ratio:1.02}
.lv .hero__meta{margin-top:35px}
.lv .hero__meta li{padding-right:18px;margin-right:18px;font-size:12px}
.lv .hero__meta strong{font-size:13px}
.lv .hero__badge{top:auto;bottom:28px;left:-25px;max-width:218px;padding:18px 22px}
@media(max-width:920px){.lv .hero__grid{grid-template-columns:1fr;gap:38px;padding-block:50px 60px}.lv .hero h1{max-width:15ch;font-size:clamp(44px,7vw,64px)}.lv .hero__frame{aspect-ratio:1.3}.lv .hero__badge{left:12px;bottom:16px}}
@media(max-width:640px){.lv .hero h1{font-size:clamp(39px,10.7vw,54px)}.lv .hero__grid{padding-block:38px 45px}.lv .hero__intro{font-size:16px}.lv .hero__meta li{padding:13px 0 0;margin:0}.lv .hero__badge{padding:12px 16px;max-width:205px}.lv .hero__meta{margin-top:26px}.lv .hero__actions .btn{font-size:14px;padding:12px 18px}}
.lv .hero__grid{grid-template-columns:.95fr 1.15fr;gap:44px}
.lv .hero__frame{aspect-ratio:auto}
.lv .hero__frame picture{height:auto}
.lv .hero__frame img{display:block;height:auto;object-fit:contain}
.lv .hero__frame .photo-label{position:static;display:block;padding:10px 0 0;font-size:11px;line-height:1.5;background:none;color:var(--muted-on-dark)}
.lv .hero__badge{position:relative;inset:auto;margin-top:20px;max-width:none;box-shadow:none;padding:16px 20px}
.lv .hero__badge strong{font-size:18px}
@media(max-width:920px){.lv .hero__grid{grid-template-columns:1fr}.lv .hero__visual{max-width:none;width:100%;margin-top:0}}
@media(max-width:640px){.lv .hero__grid{gap:28px}.lv .hero__badge{margin-top:16px}.lv .hero__frame .photo-label{font-size:10px;letter-spacing:.02em}}
.lv .reviews-section{scroll-margin-top:110px}
.lv .reviews-section .section-head{align-items:center;margin-bottom:36px}
.lv .google-rating{display:flex;align-items:center;gap:20px;justify-self:end;color:var(--ink);text-decoration:none}
.lv .google-rating>strong{font:700 56px/1 var(--font-display);letter-spacing:-.05em}
.lv .google-rating>strong>span{font-size:20px;color:var(--muted);letter-spacing:0}
.lv .google-rating>span{font-size:14px;line-height:1.8}
.lv .review-stars{color:#a95108;letter-spacing:3px;font-size:20px}
.lv .review-track{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#c6bfb4 transparent;padding:4px 2px 16px}
.lv .review-card{flex:0 0 calc((100% - 44px)/3);min-width:0;margin:0;display:flex;flex-direction:column;padding:28px;background:#fff;border:1px solid #dedbd5;border-radius:6px;scroll-snap-align:start}
.lv .review-person{display:flex;gap:12px;align-items:center;margin-bottom:22px}
.lv .review-avatar{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:#f8e5d2;color:#6f3608;font-size:14px;font-weight:700}
.lv .review-person figcaption{min-width:0}
.lv .review-person strong{display:block;font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.lv .review-person figcaption>span{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.lv .review-card blockquote{margin:18px 0 24px;font-size:17px;line-height:1.65;color:var(--ink);flex:1}
.lv .review-card>a{font-size:12px;color:var(--muted);text-underline-offset:4px}
.lv .review-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:18px}
.lv .review-controls[hidden]{display:none}
.lv .review-position{font-size:13px;color:var(--muted);margin:0}
.lv .review-controls>div{display:flex;gap:10px}
.lv .review-controls button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #aeb2b4;border-radius:50%;background:#fff;color:var(--navy);font-size:23px;cursor:pointer}
.lv .review-controls button:hover:not(:disabled){background:var(--navy);color:#fff}
.lv .review-controls button:disabled{opacity:.35;cursor:default}
.lv .reviews-source{font-size:12px;color:var(--muted);margin-top:24px;max-width:80ch}
.lv .reviews-source a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.lv .review-track:focus-visible,.lv .review-controls button:focus-visible{outline:3px solid #b85b0e;outline-offset:4px}
.alba-socials{padding:28px 0;border-top:1px solid #344353;display:flex;align-items:center;justify-content:space-between;gap:22px}
.alba-socials>strong{font-size:15px;color:#fff}
.alba-socials>div{display:flex;flex-wrap:wrap;gap:10px}
.alba-socials a{display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 13px;border:1px solid #536170;border-radius:4px;color:#fff;font-size:13px;text-decoration:none}
.alba-socials a:hover{background:#24374b;border-color:#f68a25}
.social-symbol{display:grid;place-items:center;width:22px;height:22px;font-size:17px;font-weight:700;color:#f8a34e}
@media(max-width:1000px){.lv .review-card{flex-basis:calc((100% - 22px)/2)}}
@media(max-width:920px){.lv .google-rating{justify-self:start}.alba-socials{align-items:flex-start;flex-direction:column}}
@media(max-width:640px){.lv .review-card{flex-basis:100%;padding:24px}.lv .review-track{gap:16px}.lv .google-rating>strong{font-size:44px}.lv .reviews-section .section-head{gap:24px}.alba-socials>div{display:grid;grid-template-columns:1fr 1fr;width:100%}.alba-socials a{justify-content:flex-start}}
.photo-carousel{min-width:0}
.photo-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#9aa6ae transparent;padding:4px 2px 16px}
.photo-track .work-card{flex:0 0 calc((100% - 60px)/4);min-width:0;scroll-snap-align:start}
.photo-track .work-card .photo{aspect-ratio:3/4;max-height:450px;background:#e8edf0}
.photo-track .work-card img{width:100%;height:100%;object-fit:contain}
.photo-track .work-card figcaption{padding:18px;font-size:14px}
.photo-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px}
.photo-controls[hidden]{display:none}
.photo-position{margin:0;color:#52616d;font-size:13px}
.photo-controls>div{display:flex;gap:10px}
.photo-controls button{display:grid;place-items:center;width:48px;height:48px;border:1px solid #aeb2b4;border-radius:50%;background:white;color:#132c46;font-size:23px;cursor:pointer}
.photo-controls button:hover:not(:disabled){background:#132c46;color:white}
.photo-controls button:disabled{opacity:.35;cursor:default}
.photo-track:focus-visible,.photo-controls button:focus-visible{outline:3px solid #b85b0e;outline-offset:4px}
#interventions{scroll-margin-top:110px}
@media(max-width:1000px){.photo-track .work-card{flex-basis:calc((100% - 20px)/2)}}
@media(max-width:640px){.photo-track{gap:16px}.photo-track .work-card{flex-basis:100%}.lv .band .container{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;letter-spacing:0;font-size:11px}.lv .band .icon{width:23px;height:23px}.lv .band .container>span{gap:8px}}
