/* United Protection Security — site styles
   Palette: brand brown from the original theme colour, brass badge accent, cool concrete neutrals. */
:root{
  --brown:#432f24; --brown-deep:#2a1d16; --brass:#c39a3e; --brass-dark:#a37f2c;
  --ink:#231c18; --text:#3b342f; --muted:#6f6760; --line:#d9d8d4;
  --stone:#ecebe8; --white:#fff; --ok:#2f6b3a; --err:#a1302a;
  --head:"Barlow Condensed","Arial Narrow",Arial,sans-serif;
  --body:"Source Sans 3","Segoe UI",Roboto,Arial,sans-serif;
  --wrap:1200px; --r:6px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:var(--body);font-size:1.0625rem;line-height:1.6;color:var(--text);background:var(--white)}
img,video{max-width:100%;display:block}
a{color:var(--brown)}
a:hover{color:var(--brass-dark)}
:focus-visible{outline:3px solid var(--brass);outline-offset:2px}
h1,h2,h3{font-family:var(--head);color:var(--ink);line-height:1.1;margin:0 0 .5em;font-weight:700;letter-spacing:.01em}
p{margin:0 0 1em}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 20px}
.sr-only,.hp{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip-link{position:absolute;left:-999px;top:0;background:var(--brass);color:var(--ink);padding:10px 16px;z-index:100}
.skip-link:focus{left:10px}
.muted{color:var(--muted)}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4em;font-family:var(--head);font-weight:600;font-size:1.125rem;letter-spacing:.02em;
  padding:.6em 1.3em;border-radius:var(--r);border:2px solid transparent;text-decoration:none;cursor:pointer;transition:background .15s,color .15s,border-color .15s}
.btn--lg{font-size:1.25rem;padding:.7em 1.5em}
.btn--brass{background:var(--brass);color:var(--brown-deep)}
.btn--brass:hover{background:#d4ad54;color:var(--brown-deep)}
.btn--brown{background:var(--brown);color:#fff}
.btn--brown:hover{background:var(--brown-deep);color:#fff}
.btn--outline{border-color:var(--brown);color:var(--brown)}
.btn--outline:hover{background:var(--brown);color:#fff}
.btn--ghost-light{border-color:rgba(255,255,255,.7);color:#fff}
.btn--ghost-light:hover{background:#fff;color:var(--brown-deep)}
.link-arrow{font-weight:700;text-decoration:none;border-bottom:2px solid var(--brass)}

/* ================= Header ================= */
:root{--hdr-bar:#181d24;--slab:"Roboto Slab",Georgia,serif}
.hdr__wrap{max-width:1600px;margin:0 auto;padding:0 40px}
/* Whole header is sticky with a negative top, so only the menu bar stays on screen (set by JS; fallback below) */
.hdr{position:sticky;top:var(--hdr-stick,-210px);z-index:60}

/* Top bar */
.hdr__top{background:#120d0a;color:#cbbfb5;font-size:.86rem;border-bottom:1px solid rgba(195,154,62,.22)}
.hdr__top-inner{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:42px}
.hdr__top-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;flex-wrap:wrap}
.hdr__top-list li{display:flex;align-items:center;gap:8px;padding:0 18px;border-left:1px solid rgba(255,255,255,.12)}
.hdr__top-list li:first-child{padding-left:0;border-left:0}
.hdr__top-list svg{flex:0 0 auto;color:var(--brass)}
.hdr__top-list a{display:flex;align-items:center;gap:8px;color:#efe8e2;text-decoration:none}
.hdr__top-list a:hover{color:var(--brass)}
.hdr__top-social{display:flex;align-items:center;gap:12px}
.hdr__top-follow{font-size:.74rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8f8379}
.hdr__top .social{gap:4px}
.hdr__top .social a{width:30px;height:30px;color:#d8cec5;border-radius:50%}
.hdr__top .social a:hover{background:var(--brass);color:var(--brown-deep)}
.hdr__top .social svg{width:14px;height:14px}

/* Brand band */
.hdr__band{position:relative;background:
  radial-gradient(420px 180px at 50% 50%,rgba(195,154,62,.12),transparent 70%),
  linear-gradient(180deg,#fffdfa 0%,#f7f3ee 100%);border-bottom:1px solid #ebe4dc}
.hdr__band::before{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;
  background-image:radial-gradient(rgba(42,29,22,.07) 1px,transparent 1px);background-size:18px 18px;
  mask-image:linear-gradient(90deg,#000,transparent 30%,transparent 70%,#000);-webkit-mask-image:linear-gradient(90deg,#000,transparent 30%,transparent 70%,#000)}
.hdr__band-inner{position:relative;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;min-height:168px;padding-top:14px;padding-bottom:14px}

.hdr__info{justify-self:start;display:flex;align-items:center;gap:0}
.hdr__tile{display:flex;align-items:center;gap:12px;padding:0 22px}
.hdr__tile:first-child{padding-left:0}
.hdr__tile+.hdr__tile{border-left:1px solid #e3dbd2}
.hdr__tile[hidden]{display:none}
.hdr__tile-ico{flex:0 0 42px;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#fff;border:1px solid #ece4da;color:var(--brass-dark);
  box-shadow:0 6px 16px rgba(42,29,22,.06)}
.hdr__tile-ico svg{width:20px;height:20px}
.hdr__tile-ico--sun{color:#d79a1e}
.hdr__tile-txt{display:flex;flex-direction:column;line-height:1.25}
.hdr__tile-txt strong{font-size:1rem;font-weight:700;color:var(--ink);white-space:nowrap}
.hdr__tile-txt small{font-size:.84rem;color:var(--muted);white-space:nowrap}

.hdr__crest{position:relative;justify-self:center;display:grid;place-items:center;width:138px;height:138px;border-radius:50%;text-decoration:none;
  background:radial-gradient(circle,#fff 58%,#f6efe4 100%);box-shadow:0 14px 34px rgba(42,29,22,.16),inset 0 0 0 1px rgba(195,154,62,.35);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
.hdr__crest-ring{position:absolute;inset:-7px;border-radius:50%;border:1.5px dashed rgba(195,154,62,.55);animation:crestSpin 40s linear infinite}
@keyframes crestSpin{to{transform:rotate(360deg)}}
.hdr__crest img{width:118px;height:118px;object-fit:contain;border-radius:50%}
.hdr__crest-text{font-family:var(--head);font-weight:700;font-size:2rem;color:var(--brown)}
.hdr__crest:hover{transform:translateY(-2px) scale(1.03);box-shadow:0 20px 44px rgba(42,29,22,.22),inset 0 0 0 1px rgba(195,154,62,.5)}

.hdr__phone{justify-self:end}
.hdr__phone-link{display:flex;align-items:center;gap:14px;padding:10px 22px 10px 10px;border-radius:999px;background:#fff;border:1px solid #ece4da;
  box-shadow:0 8px 22px rgba(42,29,22,.07);text-decoration:none;color:var(--ink);transition:box-shadow .3s,border-color .3s,transform .3s}
.hdr__phone-link:hover{border-color:var(--brass);box-shadow:0 14px 30px rgba(42,29,22,.12);transform:translateY(-1px);color:var(--ink)}
.hdr__phone-ico{position:relative;display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--brass);color:var(--brown-deep)}
.hdr__phone-ico::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--brass);animation:phonePulse 2.4s ease-out infinite}
@keyframes phonePulse{0%{transform:scale(1);opacity:.7}100%{transform:scale(1.55);opacity:0}}
.hdr__phone-txt{display:flex;flex-direction:column;line-height:1.15}
.hdr__phone-txt small{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-dark)}
.hdr__phone-txt strong{font-size:1.5rem;font-weight:800;letter-spacing:.01em;white-space:nowrap}
.hdr__mob{display:none}

/* Menu bar */
.hdr__overlay,.hdr__drawer-head,.hdr__drawer-foot{display:none}
.hdr__bar{position:relative;background:linear-gradient(180deg,#20262e 0%,var(--hdr-bar) 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.06),inset 0 -2px 0 var(--brass),0 10px 26px rgba(10,12,16,.18)}
.hdr__bar-inner{display:flex;align-items:center;justify-content:center;gap:16px;min-height:66px}
.hdr__mini{display:block;width:0;opacity:0;overflow:hidden;transition:width .35s ease,opacity .35s ease,margin .35s ease}
.hdr__mini img{width:44px;height:44px;border-radius:50%;background:#fff;object-fit:contain;display:block}
.hdr.is-stuck .hdr__mini{width:44px;opacity:1;margin-right:10px}
.menu{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:4px;flex-wrap:nowrap}
.menu>li{position:relative}
.menu__link{position:relative;display:flex;align-items:center;gap:8px;font-family:var(--body);font-weight:700;font-size:.93rem;letter-spacing:.15em;text-transform:uppercase;
  color:#ece7e1;text-decoration:none;background:none;border:0;cursor:pointer;padding:22px 16px;line-height:1.2;transition:color .25s}
.menu__link::after{content:"";position:absolute;left:16px;right:16px;bottom:13px;height:2px;border-radius:2px;background:var(--brass);transform:scaleX(0);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.menu__link:hover,.has-sub.is-open>.menu__link{color:#fff}
.menu__link:hover::after,.menu__link.is-active::after,.has-sub.is-open>.menu__link::after{transform:scaleX(1)}
.menu__link.is-active{color:var(--brass)}
.menu__caret{width:11px;height:11px;transition:transform .3s}
.has-sub.is-open>button .menu__caret{transform:rotate(180deg)}
.menu__cta-wrap{margin-left:12px}
.menu__cta{position:relative;overflow:hidden;display:flex;align-items:center;gap:10px;font-family:var(--body);font-weight:800;font-size:.93rem;letter-spacing:.14em;text-transform:uppercase;
  background:linear-gradient(135deg,#d4ad54,var(--brass) 55%,#b08732);color:var(--brown-deep);border:0;border-radius:999px;cursor:pointer;padding:13px 24px;
  box-shadow:0 8px 20px rgba(195,154,62,.3);transition:transform .25s,box-shadow .25s}
.menu__cta::before{content:"";position:absolute;top:0;bottom:0;left:-40%;width:30%;transform:skewX(-20deg);background:linear-gradient(90deg,transparent,rgba(255,255,255,.55),transparent);animation:ctaShine 5s ease-in-out infinite}
@keyframes ctaShine{0%,70%{left:-40%}100%{left:130%}}
.menu__cta:hover,.menu__cta.is-active{transform:translateY(-1px);box-shadow:0 12px 26px rgba(195,154,62,.42)}

/* Dropdowns: animated open */
.menu__sub{list-style:none;margin:0;padding:10px;position:absolute;left:50%;top:calc(100% - 4px);min-width:300px;background:#fff;border-radius:16px;
  box-shadow:0 24px 60px rgba(16,12,10,.22);border:1px solid #eee7df;z-index:70;
  opacity:0;visibility:hidden;transform:translate(-50%,10px);transition:opacity .25s ease,transform .3s cubic-bezier(.2,.7,.2,1),visibility 0s .3s}
.menu__sub::before{content:"";position:absolute;top:-6px;left:50%;width:12px;height:12px;background:#fff;border-left:1px solid #eee7df;border-top:1px solid #eee7df;transform:translateX(-50%) rotate(45deg)}
.menu__sub--right{left:auto;right:0;min-width:250px;transform:translateY(10px)}
.menu__sub--right::before{left:auto;right:30px;transform:rotate(45deg)}
.has-sub.is-open .menu__sub{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .25s ease,transform .3s cubic-bezier(.2,.7,.2,1)}
.has-sub.is-open .menu__sub--right{transform:translateY(0)}
@media (hover:hover) and (min-width:1101px){
  .has-sub:hover .menu__sub{opacity:1;visibility:visible;transform:translate(-50%,0);transition:opacity .25s ease,transform .3s cubic-bezier(.2,.7,.2,1)}
  .has-sub:hover .menu__sub--right{transform:translateY(0)}
  .has-sub:hover>.menu__link::after{transform:scaleX(1)}
}
.menu__sub a{display:flex;align-items:center;gap:12px;padding:9px 12px;border-radius:10px;font-weight:600;font-size:.95rem;color:var(--ink);text-decoration:none;transition:background .2s,color .2s,padding .2s}
.menu__sub-ico{flex:0 0 32px;display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#f6f0e6;color:var(--brass-dark);transition:background .2s,color .2s}
.menu__sub a:hover,.menu__sub a[aria-current]{background:#faf6f0;color:var(--brown);padding-left:16px}
.menu__sub a:hover .menu__sub-ico{background:var(--brown-deep);color:var(--brass)}
.menu__sub-all{margin-top:6px;padding-top:6px;border-top:1px solid #f0ebe5}
.menu__sub-all a{justify-content:space-between;color:var(--brass-dark)!important;font-weight:800!important}

/* "Services" = link to /services + small arrow button that opens the list */
.menu__split{display:flex;align-items:center}
.menu__split .menu__link{padding-right:6px}
.menu__split .menu__link::after{right:6px}
.menu__toggle{display:grid;place-items:center;width:28px;height:28px;margin-right:6px;border:0;border-radius:8px;background:transparent;color:#ece7e1;cursor:pointer;transition:background .2s,color .2s}
.menu__toggle:hover,.has-sub.is-open .menu__toggle{background:rgba(255,255,255,.08);color:var(--brass)}
.menu__toggle:focus-visible{outline:2px solid var(--brass);outline-offset:2px}
.has-sub.is-open .menu__toggle .menu__caret{transform:rotate(180deg)}
.has-sub.is-open>.menu__split>.menu__link::after{transform:scaleX(1)}
@media (hover:hover) and (min-width:1101px){
  .has-sub:hover>.menu__split>.menu__link::after{transform:scaleX(1)}
  .has-sub:hover .menu__toggle .menu__caret{transform:rotate(180deg)}
}

/* Mobile controls */
.nav-toggle{background:none;border:0;cursor:pointer}
.nav-toggle__bars,.nav-toggle__bars::before,.nav-toggle__bars::after{display:block;width:20px;height:2px;border-radius:2px;background:currentColor;position:relative;transition:transform .25s,background .25s}
.nav-toggle__bars::before,.nav-toggle__bars::after{content:"";position:absolute;left:0}
.nav-toggle__bars::before{top:-6px}.nav-toggle__bars::after{top:6px}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars{background:transparent}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars::before{transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle__bars::after{transform:translateY(-6px) rotate(-45deg)}

/* Social icons (shared) */
.social{list-style:none;display:flex;gap:6px;margin:0;padding:0}
.social a{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;color:inherit}
.social a:hover{background:var(--brass);color:var(--brown-deep)}

/* Laptop */
@media (max-width:1440px){
  .menu__link{padding:22px 12px;font-size:.86rem;letter-spacing:.12em}
  .menu__link::after{left:12px;right:12px}
  .menu__cta{padding:12px 20px;font-size:.86rem}
  .hdr__phone-txt strong{font-size:1.3rem}
}
@media (max-width:1240px){
  .hdr__tile+.hdr__tile{display:none}
  .menu__link{letter-spacing:.08em;padding:22px 10px}
}

/* Tablet & phone: compact sticky bar + slide-in drawer */
@media (max-width:1100px){
  .hdr{top:var(--hdr-stick,-42px)}
  .hdr__wrap{padding:0 18px}
  .hdr__band{background:#fffdfa;box-shadow:0 6px 20px rgba(42,29,22,.08)}
  .hdr__band::before{display:none}
  .hdr__band-inner{display:flex;justify-content:space-between;min-height:76px;padding-top:8px;padding-bottom:8px}
  .hdr__info,.hdr__phone{display:none}
  .hdr__crest{width:60px;height:60px;box-shadow:0 6px 16px rgba(42,29,22,.14),inset 0 0 0 1px rgba(195,154,62,.4)}
  .hdr__crest-ring{inset:-4px}
  .hdr__crest img{width:52px;height:52px}
  .hdr__mob{display:flex;align-items:center;gap:10px}
  .hdr__mob-btn{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;border:1px solid #e6ddd3;background:#fff;color:var(--ink);text-decoration:none}
  .hdr__mob-btn--call{background:var(--brass);border-color:var(--brass);color:var(--brown-deep)}
  .nav-toggle.hdr__mob-btn{background:var(--brown-deep);border-color:var(--brown-deep);color:#fff}

  .hdr__overlay{display:block;position:fixed;inset:0;z-index:90;background:rgba(14,10,8,.55);backdrop-filter:blur(2px);opacity:0;transition:opacity .3s}
  .hdr__overlay.is-on{opacity:1}
  .hdr__bar{position:fixed;top:0;right:0;bottom:0;z-index:100;width:min(400px,88vw);display:flex;flex-direction:column;
    background:#171310;box-shadow:-20px 0 60px rgba(0,0,0,.35);transform:translateX(105%);visibility:hidden;
    transition:transform .4s cubic-bezier(.2,.7,.2,1),visibility 0s .4s}
  .hdr__bar.is-open{transform:none;visibility:visible;transition:transform .4s cubic-bezier(.2,.7,.2,1)}
  .hdr__drawer-head{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
  .hdr__drawer-head img{width:52px;height:52px;border-radius:50%;background:#fff;object-fit:contain}
  .hdr__close{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;border:1px solid rgba(255,255,255,.15);background:transparent;color:#fff;cursor:pointer}
  .hdr__bar-inner{display:block;flex:1;overflow-y:auto;padding:8px 18px 18px;min-height:0}
  .hdr__mini{display:none}
  .menu{flex-direction:column;align-items:stretch;gap:0}
  .menu__link{justify-content:space-between;width:100%;padding:16px 4px;font-size:1rem;letter-spacing:.1em;border-bottom:1px solid rgba(255,255,255,.07)}
  .menu__link::after{display:none}
  .menu__link.is-active{color:var(--brass)}
  .menu__sub,.menu__sub--right{position:static;min-width:0;transform:none!important;opacity:1;visibility:visible;box-shadow:none;border:0;border-radius:12px;
    background:rgba(255,255,255,.04);padding:6px;margin:6px 0 10px;display:none;transition:none}
  .menu__sub::before{display:none}
  .has-sub.is-open .menu__sub{display:block}
  .menu__sub a{color:#e7dfd8;font-weight:500}
  .menu__sub-ico{background:rgba(195,154,62,.14);color:var(--brass)}
  .menu__sub a:hover,.menu__sub a[aria-current]{background:rgba(255,255,255,.06);color:#fff;padding-left:12px}
  .menu__sub-all{border-top-color:rgba(255,255,255,.08)}
  .menu__split{border-bottom:1px solid rgba(255,255,255,.07)}
  .menu__split .menu__link{flex:1;border-bottom:0;padding-right:4px}
  .menu__toggle{width:44px;height:44px;margin:0;border-radius:10px;background:rgba(255,255,255,.06)}
  .menu__cta-wrap{margin:18px 0 0}
  .menu__cta{width:100%;justify-content:center;padding:15px 20px}
  .hdr__drawer-foot{display:grid;gap:10px;padding:16px 18px 22px;border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.2)}
  .hdr__drawer-call{display:flex;flex-direction:column;text-decoration:none;color:#fff}
  .hdr__drawer-call small{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}
  .hdr__drawer-call strong{font-size:1.35rem}
  .hdr__drawer-mail{color:#cbbfb5;text-decoration:none;font-size:.92rem;word-break:break-all}
  .hdr__drawer-foot .social a{width:38px;height:38px;border:1px solid rgba(255,255,255,.15);color:#e7dfd8}
  body.nav-open{overflow:hidden}
}
@media (max-width:900px){.hdr__top-hide-md,.hdr__top-follow{display:none}}
@media (max-width:640px){
  .hdr__top{font-size:.8rem}
  .hdr__top-inner{min-height:38px;gap:10px}
  .hdr__top-hide-sm{display:none!important}
  .hdr__top-list li{padding:0}
  .hdr__top-list span{max-width:52vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .hdr__top .social a{width:28px;height:28px}
  .hdr__band-inner{min-height:68px}
  .hdr__crest{width:54px;height:54px}
  .hdr__crest img{width:46px;height:46px}
  .hdr__mob-btn{width:42px;height:42px;border-radius:12px}
}
@media (max-width:400px){.hdr__top .social li:nth-child(n+4){display:none}}
@media (prefers-reduced-motion:reduce){
  .hdr__crest-ring,.hdr__phone-ico::after,.menu__cta::before{animation:none}
  .hdr__bar,.menu__sub,.hdr__overlay{transition:none}
}

/* Image placeholders: brown panel with a faint shield, shown until real images are added */
.ph{position:relative;overflow:hidden;background:var(--brown) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 72'%3E%3Cpath d='M32 2 6 12v20c0 17 11 31 26 38 15-7 26-21 26-38V12z' fill='none' stroke='%23c39a3e' stroke-opacity='.35' stroke-width='2'/%3E%3C/svg%3E") center/64px no-repeat;border-radius:var(--r)}
.ph img{width:100%;height:100%;object-fit:cover}
.ph--tile{aspect-ratio:16/10}
.ph--wide{aspect-ratio:16/8;margin-bottom:28px}
.ph--tall{aspect-ratio:4/5}

/* ================= Home slider ================= */
.hs{position:relative;height:clamp(620px,88vh,920px);background:#1a1310;color:#fff;overflow:hidden;isolation:isolate}
.hs__track{position:absolute;inset:0}
.hs__slide{position:absolute;inset:0;overflow:hidden;opacity:0;visibility:hidden;transition:opacity 1.1s ease,visibility 0s 1.1s}
.hs__slide.is-active{opacity:1;visibility:visible;transition:opacity 1.1s ease}
.hs__bg{position:absolute;inset:0;background:var(--bg,none) center/cover no-repeat;transform:scale(1.12);transition:transform 9s ease-out}
.hs__slide.is-active .hs__bg{transform:scale(1)}
/* Styled background for slides without a photo */
.hs__bg--empty{background:
  radial-gradient(60% 80% at 80% 20%,rgba(195,154,62,.28),transparent 60%),
  radial-gradient(70% 90% at 10% 100%,rgba(90,62,42,.9),transparent 60%),
  linear-gradient(135deg,#2e2018 0%,#1a1310 60%,#14100d 100%)}
.hs__bg--empty::before{content:"";position:absolute;inset:0;opacity:.35;
  background-image:linear-gradient(rgba(195,154,62,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(195,154,62,.12) 1px,transparent 1px);
  background-size:64px 64px;mask-image:radial-gradient(70% 70% at 50% 50%,#000,transparent);-webkit-mask-image:radial-gradient(70% 70% at 50% 50%,#000,transparent)}
.hs__bg--empty::after{content:"";position:absolute;right:6%;top:50%;width:min(36vw,460px);aspect-ratio:64/72;transform:translateY(-50%);opacity:.12;
  background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 72'%3E%3Cpath d='M32 2 6 12v20c0 17 11 31 26 38 15-7 26-21 26-38V12z' fill='none' stroke='%23c39a3e' stroke-width='1.2'/%3E%3Cpath d='m21 36 8 8 15-16' fill='none' stroke='%23c39a3e' stroke-width='1.6'/%3E%3C/svg%3E") center/contain no-repeat}
.hs__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
/* Overlay: darker on the left where the text sits, photo stays visible on the right */
.hs__shade{position:absolute;inset:0;background:rgba(14,10,8,calc(var(--dim,.45) * .55))}
.hs__shade::before{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(14,10,8,.92) 0%,rgba(14,10,8,.78) 32%,rgba(14,10,8,.35) 62%,rgba(14,10,8,.1) 100%)}
.hs__shade::after{content:"";position:absolute;inset:auto 0 0 0;height:38%;background:linear-gradient(transparent,rgba(14,10,8,.8))}

/* Content: left-aligned, vertically centred, never overlaps the control bar */
.hs__content{position:absolute;inset:0;z-index:1;display:flex;align-items:center;
  padding:40px max(40px,calc((100% - 1320px) / 2)) 130px}
.hs__inner{max-width:720px}
.hs__kicker{display:flex;align-items:center;gap:14px;margin:0 0 22px;font-weight:700;font-size:.82rem;letter-spacing:.22em;text-transform:uppercase;color:var(--brass)}
.hs__kicker::before{content:"";flex:0 0 40px;height:2px;background:var(--brass)}
.hs__title{font-family:var(--body);font-weight:700;color:#fff;font-size:clamp(2.2rem,3.6vw,3.7rem);line-height:1.1;letter-spacing:-.02em;margin:0;text-shadow:0 2px 24px rgba(0,0,0,.35)}
.hs__text{margin:22px 0 0;max-width:54ch;font-size:clamp(1rem,1.2vw,1.15rem);line-height:1.7;color:#ddd4cb}
.hs__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.hs__actions .btn{border-radius:999px;padding:.95em 2.1em;font-family:var(--body);font-weight:700;font-size:1rem;letter-spacing:.01em}
.hs__actions .btn--brass{box-shadow:0 12px 30px rgba(195,154,62,.3)}
.hs__actions .btn--ghost-light{border-width:1.5px;background:rgba(255,255,255,.05);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hs__slide.is-active .hs__inner>*{animation:hsRise .9s cubic-bezier(.2,.7,.2,1) both}
.hs__slide.is-active .hs__inner>*:nth-child(1){animation-delay:.15s}
.hs__slide.is-active .hs__inner>*:nth-child(2){animation-delay:.27s}
.hs__slide.is-active .hs__inner>*:nth-child(3){animation-delay:.39s}
.hs__slide.is-active .hs__inner>*:nth-child(4){animation-delay:.51s}
@keyframes hsRise{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}

/* Control bar */
.hs__bar{position:absolute;left:0;right:0;bottom:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:24px;
  padding:0 max(40px,calc((100% - 1320px) / 2)) 44px}
.hs__count{display:flex;align-items:center;gap:16px;font-family:"Playfair Display",Georgia,serif;font-weight:800;color:#fff}
.hs__count b{font-size:1.5rem;min-width:2ch}
.hs__total{font-size:1rem;color:rgba(255,255,255,.5)}
.hs__progress{position:relative;display:block;width:180px;height:2px;background:rgba(255,255,255,.22);overflow:hidden;border-radius:2px}
.hs__progress span{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--brass)}
.hs__progress span.is-running{animation:hsProgress var(--hs-delay,6s) linear forwards}
.hs.is-paused .hs__progress span,.hs.is-hold .hs__progress span{animation-play-state:paused}
@keyframes hsProgress{from{width:0}to{width:100%}}
.hs__ctrl{display:flex;gap:10px}
.hs__btn{width:52px;height:52px;border-radius:50%;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.04);color:#fff;
  display:grid;place-items:center;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background .25s,border-color .25s,color .25s}
.hs__btn svg{width:15px;height:15px}
.hs__btn--pause svg{width:11px;height:11px}
.hs__btn:hover{background:var(--brass);border-color:var(--brass);color:var(--brown-deep)}
.hs__play-i,.hs.is-paused .hs__pause-i{display:none}
.hs.is-paused .hs__play-i{display:block}

/* ================= Stats band ================= */
.stats{background:linear-gradient(100deg,#3a2a1c 0%,#262019 45%,#1f2228 100%);border-top:3px solid var(--brass);border-bottom:3px solid var(--brass);padding:70px 20px}
.stats__list{list-style:none;margin:0 auto;padding:0;max-width:1380px;display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}
.stats__list[data-count-items="3"]{max-width:1380px;grid-template-columns:repeat(3,1fr);padding:0 6%}
.stats__item{text-align:center;padding:10px 24px 14px;border-left:1px solid rgba(255,255,255,.14)}
.stats__item:first-child{border-left:0}
.stats__value{margin:0;font-family:"Playfair Display",Georgia,serif;font-weight:800;font-size:clamp(2.6rem,4.2vw,3.6rem);line-height:1.1;color:#f4efe9;font-variant-numeric:lining-nums}
.stats__suffix{color:var(--brass);margin-left:2px}
.stats__label{margin:14px 0 0;font-size:.95rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:#d8cfc6}

/* Intro (single column under stats) */
.intro__inner{max-width:860px;text-align:center}
.intro__inner p{margin-left:auto;margin-right:auto}
.intro__licences{display:flex;justify-content:center;flex-wrap:wrap;gap:6px 28px;font-weight:700;color:var(--brown)}

/* Slider + stats: tablet */
@media (max-width:900px){
  .hs{height:clamp(560px,80vh,760px)}
  .hs__content{padding:32px 32px 120px}
  .hs__shade::before{background:linear-gradient(90deg,rgba(14,10,8,.88) 0%,rgba(14,10,8,.6) 60%,rgba(14,10,8,.3) 100%)}
  .hs__bar{padding:0 32px 36px}
  .hs__progress{width:120px}
  .hs__btn{width:46px;height:46px}
  .stats{padding:50px 16px}
  .stats__list,.stats__list[data-count-items="3"]{grid-template-columns:repeat(3,1fr);padding:0}
  .stats__list[data-count-items="4"]{grid-template-columns:repeat(2,1fr)}
  .stats__list[data-count-items="4"] .stats__item:nth-child(3){border-left:0}
  .stats__list[data-count-items="4"] .stats__item:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14);padding-top:26px;margin-top:16px}
  .stats__item{padding:8px 12px}
  .stats__label{font-size:.82rem;letter-spacing:.14em}
}
/* Slider + stats: phone */
@media (max-width:600px){
  .hs{height:auto;min-height:max(580px,84svh)}
  .hs__bg{background-image:var(--bg-m,var(--bg,none))}
  .hs__bg--empty{background-image:none}
  .hs__bg--empty::after{width:70vw;right:-14vw;opacity:.1}
  .hs__shade::before{background:linear-gradient(180deg,rgba(14,10,8,.25) 0%,rgba(14,10,8,.55) 40%,rgba(14,10,8,.92) 100%)}
  .hs__content{align-items:flex-end;padding:28px 20px 104px}
  .hs__kicker{font-size:.72rem;letter-spacing:.16em;gap:10px;margin-bottom:14px}
  .hs__kicker::before{flex-basis:24px}
  .hs__title{font-size:clamp(1.75rem,7.6vw,2.3rem);line-height:1.15}
  .hs__title br{display:none}
  .hs__text{font-size:.98rem;margin-top:12px;line-height:1.6}
  .hs__actions{flex-direction:column;gap:10px;margin-top:22px}
  .hs__actions .btn{width:100%;padding:.9em 1.4em}
  .hs__bar{padding:0 20px 28px}
  .hs__count{gap:10px}
  .hs__count b{font-size:1.2rem}
  .hs__total{font-size:.85rem}
  .hs__progress{width:64px}
  .hs__ctrl{gap:8px}
  .hs__btn{width:42px;height:42px}
  .hs__btn--pause{display:none}
  .stats{padding:34px 16px}
  .stats__list,.stats__list[data-count-items="3"],.stats__list[data-count-items="4"]{grid-template-columns:1fr}
  .stats__item,.stats__item:first-child,.stats__list[data-count-items="4"] .stats__item:nth-child(n){border-left:0;border-top:1px solid rgba(255,255,255,.12);padding:22px 8px;margin:0}
  .stats__item:first-child,.stats__list[data-count-items="4"] .stats__item:first-child{border-top:0}
}
@media (prefers-reduced-motion:reduce){
  .hs__slide,.hs__slide.is-active,.hs__bg{transition:none;animation:none}
  .hs__bg{transform:none}
  .hs__slide.is-active .hs__inner>*,.hs__progress span.is-running{animation:none}
}

/* Sections */
.section{padding:80px 0}
.section--stone{background:var(--stone)}
.h-section{font-size:clamp(1.9rem,3.4vw,2.6rem)}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap;margin-bottom:32px}



/* ================= Careers band ================= */
.careers{position:relative;overflow:hidden;isolation:isolate;color:#e9e1d9;padding:96px 0;
  background:radial-gradient(120% 140% at 0% 0%,#4a3426 0%,#2a1d16 48%,#1b1411 100%)}
.careers--photo{background:linear-gradient(100deg,rgba(27,20,17,.96) 0%,rgba(27,20,17,.88) 45%,rgba(27,20,17,.6) 100%),var(--careers-img) center/cover no-repeat}
.careers::before,.careers::after{content:"";position:absolute;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--brass) 20%,var(--brass) 80%,transparent)}
.careers::before{top:0}.careers::after{bottom:0}
.careers__glow{position:absolute;z-index:-1;right:-10%;top:-30%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.22),transparent 65%)}
.careers__mark{position:absolute;z-index:-1;left:-60px;bottom:-90px;width:380px;fill:none;stroke:rgba(195,154,62,.09);stroke-width:1.2}
.careers__inner{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.85fr);gap:64px;align-items:center}

.careers__badge{display:inline-flex;align-items:center;gap:10px;margin:0 0 22px;padding:7px 16px 7px 12px;border:1px solid rgba(195,154,62,.45);border-radius:999px;
  background:rgba(195,154,62,.1);color:var(--brass);font-size:.85rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.careers__pulse{position:relative;width:8px;height:8px;border-radius:50%;background:#5fd38d}
.careers__pulse::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid #5fd38d;opacity:0;animation:careersPulse 2s ease-out infinite}
@keyframes careersPulse{0%{transform:scale(.6);opacity:.8}100%{transform:scale(1.8);opacity:0}}
.careers__title{font-family:var(--body);font-weight:800;font-size:clamp(2rem,3.8vw,3.2rem);line-height:1.12;letter-spacing:-.01em;color:#fff;margin:0 0 18px;max-width:18ch}
.careers__title span{color:var(--brass)}
.careers__text{font-size:1.15rem;line-height:1.7;max-width:56ch;margin:0 0 26px;color:#d9cfc6}
.careers__perks{list-style:none;margin:0 0 34px;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;max-width:620px}
.careers__perks li{display:flex;align-items:flex-start;gap:10px;font-weight:600;color:#f1ebe5}
.careers__perks svg{flex:0 0 22px;width:22px;height:22px;padding:3px;border-radius:50%;background:rgba(195,154,62,.18);color:var(--brass);margin-top:1px}
.careers__actions{display:flex;flex-wrap:wrap;gap:14px}
.careers__btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 30px;border-radius:999px;font-weight:800;font-size:1.05rem;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s}
.careers__btn svg{width:18px;height:18px}
.careers__btn--main{background:var(--brass);color:var(--brown-deep);box-shadow:0 12px 30px rgba(195,154,62,.28)}
.careers__btn--main:hover{background:#d4ad54;color:var(--brown-deep);transform:translateY(-2px)}
.careers__btn--main:hover svg{transform:translateX(3px)}
.careers__btn--main svg{transition:transform .2s}
.careers__btn--ghost{border:1.5px solid rgba(255,255,255,.35);color:#fff}
.careers__btn--ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);color:#fff}

.careers__card{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:20px;padding:26px;
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 30px 60px rgba(0,0,0,.3)}
.careers__card-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.careers__card-title{margin:0;font-family:var(--body);font-size:.9rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#cbbfb5}
.careers__count{display:grid;place-items:center;min-width:30px;height:30px;padding:0 8px;border-radius:999px;background:var(--brass);color:var(--brown-deep);font-weight:800}
.careers__roles{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.careers__roles a{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:14px;padding:14px 16px;border-radius:12px;background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.06);color:#fff;text-decoration:none;transition:background .2s,border-color .2s,transform .2s}
.careers__roles a:hover{background:rgba(195,154,62,.14);border-color:rgba(195,154,62,.5);transform:translateX(3px)}
.careers__role-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:rgba(195,154,62,.16);color:var(--brass)}
.careers__role-name{font-weight:700;font-size:1.05rem}
.careers__role-meta{font-size:.8rem;font-weight:700;letter-spacing:.06em;color:#bfb3a8;padding:4px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.14);white-space:nowrap}
.careers__role-arrow{width:18px;height:18px;color:var(--brass)}
.careers__card-foot{margin:16px 0 0;text-align:center;font-size:.9rem;color:#a99d92}

@media (max-width:1024px){
  .careers{padding:76px 0}
  .careers__inner{grid-template-columns:1fr;gap:44px}
  .careers__title{max-width:22ch}
  .careers--photo{background:linear-gradient(180deg,rgba(27,20,17,.9),rgba(27,20,17,.95)),var(--careers-img) center/cover no-repeat}
}
@media (max-width:620px){
  .careers{padding:58px 0}
  .careers__badge{font-size:.75rem;letter-spacing:.12em;margin-bottom:16px}
  .careers__text{font-size:1.02rem}
  .careers__perks{grid-template-columns:1fr;gap:10px}
  .careers__actions{flex-direction:column}
  .careers__btn{width:100%;padding:15px 22px}
  .careers__card{padding:18px;border-radius:16px}
  .careers__roles a{grid-template-columns:auto 1fr auto;gap:12px;padding:12px}
  .careers__role-meta{display:none}
  .careers__mark{width:240px;left:-50px;bottom:-60px}
}
@media (prefers-reduced-motion:reduce){.careers__pulse::after{animation:none}.careers__btn,.careers__roles a{transition:none}}

/* ================= Testimonials ================= */
.tm{position:relative;padding:100px 0 96px;background:linear-gradient(180deg,#f6f3ef 0%,#efeae4 100%);overflow:hidden}
.tm::before{content:"";position:absolute;top:-180px;right:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.14),transparent 65%)}
.tm .wrap{position:relative}
.tm__head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;flex-wrap:wrap;margin-bottom:48px}
.tm__title{font-family:var(--body);font-weight:800;font-size:clamp(2rem,4vw,3.2rem);line-height:1.12;letter-spacing:-.01em;color:var(--ink);margin:0;max-width:20ch}
.tm__title span{color:var(--brass)}
.tm__score{display:flex;align-items:center;gap:16px;padding:16px 22px;background:#fff;border-radius:16px;box-shadow:0 14px 34px rgba(42,29,22,.08)}
.tm__score strong{font-family:"Playfair Display",Georgia,serif;font-size:2.6rem;line-height:1;color:var(--ink)}
.tm__score-note{display:block;margin-top:4px;font-size:.9rem;color:var(--muted)}
.tm__stars{display:inline-flex;gap:3px;margin:0}
.tm__stars svg{width:18px;height:18px;fill:var(--brass)}
.tm__stars .is-off svg{fill:#d9d3cc}
.tm__stars--lg svg{width:20px;height:20px}

.tm__viewport{overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;margin:0 -20px;padding:14px 20px 30px}
.tm__viewport::-webkit-scrollbar{display:none}
.tm__track{list-style:none;margin:0;padding:0;display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 56px) / 3);gap:28px}
.tm-card{scroll-snap-align:start;display:flex}
.tm-card figure{position:relative;margin:0;flex:1;display:flex;flex-direction:column;background:#fff;border-radius:22px;padding:38px 34px 30px;
  box-shadow:0 20px 50px rgba(42,29,22,.08);border:1px solid rgba(42,29,22,.05);transition:transform .3s ease,box-shadow .3s ease}
.tm-card figure::after{content:"";position:absolute;left:34px;right:34px;top:0;height:3px;border-radius:0 0 3px 3px;background:var(--brass);transform:scaleX(.25);transform-origin:left;transition:transform .4s ease}
.tm-card figure:hover{transform:translateY(-6px);box-shadow:0 30px 60px rgba(42,29,22,.14)}
.tm-card figure:hover::after{transform:scaleX(1)}
.tm-card__mark{position:absolute;top:30px;right:30px;width:46px;fill:var(--brass);opacity:.18}
.tm-card .tm__stars{margin-bottom:20px}
.tm-card__quote{margin:0 0 28px;flex:1}
.tm-card__quote p{margin:0;font-size:1.12rem;line-height:1.75;color:var(--text)}
.tm-card__who{display:flex;align-items:center;gap:14px;padding-top:22px;border-top:1px solid #ece7e2}
.tm-card__avatar{flex:0 0 56px;width:56px;height:56px;border-radius:50%;object-fit:cover;box-shadow:0 0 0 3px #fff,0 0 0 4px rgba(195,154,62,.5)}
.tm-card__avatar--initials{display:grid;place-items:center;background:linear-gradient(135deg,var(--brown),var(--brown-deep));color:var(--brass);font-weight:800;font-size:1.1rem;letter-spacing:.04em}
.tm-card__who strong{display:block;font-size:1.08rem;color:var(--ink)}
.tm-card__meta{display:block;font-size:.92rem;color:var(--muted)}

.tm__nav{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:6px}
.tm__nav[hidden]{display:none}
.tm__arrow{width:48px;height:48px;border-radius:50%;border:1px solid #d6cfc8;background:#fff;color:var(--ink);display:grid;place-items:center;cursor:pointer;transition:background .2s,color .2s,border-color .2s}
.tm__arrow svg{width:15px;height:15px}
.tm__arrow:hover:not(:disabled){background:var(--brass);border-color:var(--brass);color:#fff}
.tm__arrow:disabled{opacity:.35;cursor:default}
.tm__dots{display:flex;gap:8px}
.tm__dot{width:9px;height:9px;border-radius:5px;border:0;padding:0;background:#cfc7bf;cursor:pointer;transition:width .3s,background .3s}
.tm__dot.is-active{width:28px;background:var(--brass)}

@media (max-width:1024px){
  .tm{padding:76px 0}
  .tm__track{grid-auto-columns:calc((100% - 24px) / 2);gap:24px}
}
@media (max-width:640px){
  .tm{padding:58px 0 54px}
  .tm__head{margin-bottom:28px;align-items:flex-start}
  .tm__score{width:100%;padding:14px 18px}
  .tm__score strong{font-size:2.2rem}
  .tm__track{grid-auto-columns:86%;gap:16px}
  .tm-card figure{padding:30px 22px 24px;border-radius:18px}
  .tm-card figure:hover{transform:none}
  .tm-card__quote p{font-size:1.04rem}
  .tm-card__mark{width:38px;top:24px;right:22px}
  .tm__arrow{display:none}
}
@media (prefers-reduced-motion:reduce){.tm__viewport{scroll-behavior:auto}.tm-card figure,.tm-card figure::after{transition:none}}

/* ================= Free risk assessment ================= */
.ra{padding:100px 0;background:linear-gradient(180deg,#efeae4 0%,#f6f3ef 100%)}
.ra__panel{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.15fr);border-radius:28px;overflow:hidden;background:#fff;box-shadow:0 40px 90px rgba(42,29,22,.16)}

.ra__intro{position:relative;overflow:hidden;isolation:isolate;padding:60px 54px;color:#ddd2c8;
  background:radial-gradient(120% 100% at 0% 0%,#4a3426 0%,#2a1d16 55%,#1d1511 100%)}
.ra__intro::after{content:"";position:absolute;z-index:-1;right:-30%;bottom:-30%;width:80%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.2),transparent 65%)}
.ra__mark{position:absolute;z-index:-1;right:-40px;top:-30px;width:260px;fill:none;stroke:rgba(195,154,62,.1);stroke-width:1.2}
.ra__badge{display:inline-flex;align-items:center;gap:9px;margin:0 0 22px;padding:7px 15px 7px 11px;border-radius:999px;border:1px solid rgba(195,154,62,.45);
  background:rgba(195,154,62,.12);color:var(--brass);font-size:.82rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.ra__title{font-family:var(--body);font-weight:800;font-size:clamp(1.9rem,3.2vw,2.8rem);line-height:1.14;letter-spacing:-.01em;color:#fff;margin:0 0 16px}
.ra__title span{color:var(--brass)}
.ra__text{font-size:1.1rem;line-height:1.7;margin:0 0 30px;max-width:46ch}
.ra__steps{list-style:none;margin:0 0 34px;padding:0;display:grid;gap:0;counter-reset:none}
.ra__steps li{position:relative;display:flex;gap:16px;align-items:flex-start;padding:0 0 22px;color:#f1ebe5;font-weight:600}
.ra__steps li:not(:last-child)::before{content:"";position:absolute;left:21px;top:44px;bottom:2px;width:1px;background:linear-gradient(rgba(195,154,62,.6),rgba(195,154,62,.1))}
.ra__steps li:last-child{padding-bottom:0}
.ra__steps li>span:last-child{padding-top:10px;line-height:1.5}
.ra__step-num{flex:0 0 44px;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(195,154,62,.55);
  background:rgba(195,154,62,.1);color:var(--brass);font-family:"Playfair Display",Georgia,serif;font-weight:800;font-size:1rem}
.ra__call{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);
  text-decoration:none;color:#fff;transition:background .2s,border-color .2s}
.ra__call:hover{background:rgba(195,154,62,.15);border-color:rgba(195,154,62,.5);color:#fff}
.ra__call-ico{flex:0 0 50px;display:grid;place-items:center;width:50px;height:50px;border-radius:50%;background:var(--brass);color:var(--brown-deep)}
.ra__call small{display:block;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#a99d92}
.ra__call strong{display:block;font-size:1.35rem;letter-spacing:.01em}

.ra__form{padding:52px 54px}
.ra__form-head h3{font-family:var(--body);font-weight:800;font-size:1.55rem;color:var(--ink);margin:0 0 6px}
.ra__form-head p{margin:0 0 26px;color:var(--muted);font-size:.95rem}
.ra__types{border:0;padding:0;margin:0 0 24px}
.ra__types legend{font-weight:700;color:var(--ink);margin-bottom:10px;padding:0}
.ra__chips{display:flex;flex-wrap:wrap;gap:8px}
.ra__chip{position:relative;cursor:pointer}
.ra__chip input{position:absolute;opacity:0;width:1px;height:1px}
.ra__chip span{display:inline-block;padding:9px 18px;border-radius:999px;border:1.5px solid #ddd6cf;background:#fff;color:var(--text);font-weight:600;font-size:.95rem;transition:all .2s}
.ra__chip:hover span{border-color:var(--brass)}
.ra__chip input:checked+span{background:var(--brown);border-color:var(--brown);color:#fff}
.ra__chip input:focus-visible+span{outline:3px solid var(--brass);outline-offset:2px}

.ra__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 18px;margin-bottom:26px}
.ra__field--wide{grid-column:1/-1}
.ra__field label{display:block;font-weight:700;color:var(--ink);margin-bottom:8px;font-size:.97rem}
.ra__input{position:relative}
.ra__input>svg{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#a3988e;pointer-events:none;transition:color .2s}
.ra__input--area>svg{top:17px;transform:none}
.ra__input input,.ra__input textarea{width:100%;font:inherit;color:var(--ink);padding:14px 16px 14px 46px;border:1.5px solid #e2dcd5;border-radius:12px;background:#faf8f6;
  transition:border-color .2s,background .2s,box-shadow .2s}
.ra__input textarea{resize:vertical;min-height:128px;line-height:1.55}
.ra__input input::placeholder,.ra__input textarea::placeholder{color:#b3a99f}
.ra__input input:hover,.ra__input textarea:hover{border-color:#cfc6bd}
.ra__input input:focus,.ra__input textarea:focus{outline:0;border-color:var(--brass);background:#fff;box-shadow:0 0 0 4px rgba(195,154,62,.18)}
.ra__input:focus-within>svg{color:var(--brass)}
.ra__input [aria-invalid="true"]{border-color:var(--err);background:#fff8f7}
.ra__error{display:block;margin-top:6px;color:var(--err);font-weight:600;font-size:.9rem}
.ra__submit{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:17px 28px;border:0;border-radius:999px;cursor:pointer;
  background:var(--brass);color:var(--brown-deep);font:inherit;font-weight:800;font-size:1.08rem;box-shadow:0 14px 30px rgba(195,154,62,.32);transition:background .2s,transform .2s,box-shadow .2s}
.ra__submit:hover{background:#d4ad54;transform:translateY(-2px);box-shadow:0 18px 36px rgba(195,154,62,.4)}
.ra__submit svg{transition:transform .2s}
.ra__submit:hover svg{transform:translateX(3px)}
.ra__submit[disabled]{opacity:.7;cursor:wait;transform:none}
.ra__privacy{display:flex;align-items:center;justify-content:center;gap:8px;margin:16px 0 0;color:var(--muted);font-size:.88rem;text-align:center}
.ra__privacy svg{flex:0 0 auto;color:var(--brass)}
.ra .notice{border-radius:12px}

@media (max-width:1024px){
  .ra{padding:76px 0}
  .ra__panel{grid-template-columns:1fr;border-radius:24px}
  .ra__intro{padding:46px 40px}
  .ra__steps{grid-template-columns:repeat(3,1fr);gap:18px}
  .ra__steps li{flex-direction:column;gap:10px;padding:0}
  .ra__steps li::before{display:none}
  .ra__steps li>span:last-child{padding-top:0}
  .ra__call{max-width:420px}
  .ra__form{padding:42px 40px}
}
@media (max-width:640px){
  .ra{padding:44px 0}
  .ra .wrap{padding:0 12px}
  .ra__panel{border-radius:20px}
  .ra__intro{padding:34px 22px}
  .ra__text{font-size:1.02rem;margin-bottom:24px}
  .ra__steps{grid-template-columns:1fr;gap:0}
  .ra__steps li{flex-direction:row;gap:14px;padding:0 0 16px}
  .ra__steps li>span:last-child{padding-top:10px}
  .ra__step-num{flex-basis:40px;width:40px;height:40px}
  .ra__call{max-width:none}
  .ra__call strong{font-size:1.2rem}
  .ra__form{padding:30px 20px 26px}
  .ra__form-head h3{font-size:1.3rem}
  .ra__grid{grid-template-columns:1fr;gap:16px}
  .ra__chip span{padding:8px 14px;font-size:.9rem}
  .ra__input input,.ra__input textarea{font-size:16px} /* stops iOS zoom on focus */
}
@media (prefers-reduced-motion:reduce){.ra__submit,.ra__submit svg,.ra__chip span{transition:none}}

.cta-band{background:var(--brown-deep);color:#e7dfd8;padding:56px 0}
.cta-band__inner{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.cta-band h2{color:#fff;font-size:2rem}
.cta-band p{margin:0;max-width:60ch}
.cta-band__actions{display:flex;gap:12px;flex-wrap:wrap}

/* ================= Services cards (home) ================= */
.svc{padding:96px 0 104px;background:#fff}
.svc__head{text-align:center;margin-bottom:56px}
.svc__badge{display:inline-flex;align-items:center;gap:12px;margin:0 0 26px;padding:9px 22px 9px 9px;border:1px solid #e6e1dc;border-radius:999px;
  font-size:.92rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);background:#fff}
.svc__badge-ico{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--brass);color:#fff}
.svc__title{font-family:var(--body);font-weight:800;font-size:clamp(2rem,4vw,3.4rem);line-height:1.12;letter-spacing:-.01em;color:var(--ink);margin:0 auto;max-width:22ch}
.svc__accent{color:var(--brass)}
.svc__intro{max-width:60ch;margin:18px auto 0;color:var(--muted);font-size:1.1rem}

.svc__grid{list-style:none;margin:0 auto;padding:0;max-width:1440px;display:flex;flex-wrap:wrap;justify-content:center;gap:56px 38px}
.svc-card{flex:0 1 calc((100% - 76px) / 3);display:flex;flex-direction:column;min-width:0}
.svc-card__media{display:block;border-radius:22px;overflow:hidden;aspect-ratio:446/325;
  background:var(--brown) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 72'%3E%3Cpath d='M32 2 6 12v20c0 17 11 31 26 38 15-7 26-21 26-38V12z' fill='none' stroke='%23c39a3e' stroke-opacity='.4' stroke-width='2'/%3E%3C/svg%3E") center 30%/64px no-repeat}
.svc-card__media img{width:100%;height:100%;object-fit:cover}
.svc-card__body{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;
  margin:-76px 20px 0;padding:40px 32px 36px;background:#fff;border-radius:20px;box-shadow:0 26px 60px rgba(42,29,22,.12)}
.svc-card__icon{display:grid;place-items:center;width:64px;height:64px;border-radius:12px;background:var(--brass);color:#fff;margin-bottom:26px}
.svc-card__title{font-family:var(--body);font-weight:800;font-size:1.55rem;line-height:1.25;margin:0 0 14px;color:var(--ink)}
.svc-card__title a{color:inherit;text-decoration:none}
.svc-card__title a:hover{color:var(--brown)}
.svc-card__text{margin:0 0 28px;color:var(--muted);font-size:1.05rem;line-height:1.75;max-width:36ch}
.svc-card__btn{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;min-width:162px;padding:15px 34px;border-radius:999px;
  background:var(--brass);color:var(--brown-deep);font-weight:800;font-size:1.05rem;text-decoration:none;transition:background .2s,transform .2s}
.svc-card__btn:hover{transform:translateY(-2px)}
.svc__more{text-align:center;margin:56px 0 0}

@media (max-width:1200px){
  .svc__grid{gap:48px 26px}
  .svc-card{flex-basis:calc((100% - 52px) / 3)}
  .svc-card__body{margin:-64px 14px 0;padding:34px 22px 30px}
  .svc-card__title{font-size:1.35rem}
}
@media (max-width:960px){
  .svc{padding:70px 0 76px}
  .svc__head{margin-bottom:42px}
  .svc-card{flex-basis:calc((100% - 26px) / 2)}
}
@media (max-width:620px){
  .svc{padding:56px 0 60px}
  .svc__badge{font-size:.8rem;letter-spacing:.1em;padding:7px 16px 7px 7px;margin-bottom:18px}
  .svc__grid{gap:40px}
  .svc-card{flex-basis:100%}
  .svc-card__body{margin:-56px 12px 0;padding:30px 20px 28px}
  .svc-card__icon{width:56px;height:56px;margin-bottom:20px}
  .svc-card__text{font-size:1rem}
  .svc-card__btn{width:100%}
}
@media (prefers-reduced-motion:reduce){.svc-card__media img,.svc-card__btn{transition:none}}

/* ---------- Services: effects ---------- */
/* Scroll reveal (only hidden once JS has confirmed it can reveal them) */
.reveal-ready [data-reveal]{opacity:0;transform:translateY(36px);transition:opacity .8s cubic-bezier(.2,.7,.2,1) var(--d,0ms),transform .8s cubic-bezier(.2,.7,.2,1) var(--d,0ms)}
.reveal-ready [data-reveal].is-in{opacity:1;transform:none}

/* Card motion */
.svc-card__media{position:relative;isolation:isolate}
.svc-card__media img{transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .6s ease}
.svc-card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(26,19,16,.45));opacity:0;transition:opacity .5s ease}
.svc-card__shine{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.svc-card__shine::before{content:"";position:absolute;top:-20%;bottom:-20%;left:-60%;width:40%;transform:skewX(-20deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.28),transparent)}
/* No-photo cards: slow brass glow behind the shield */
.svc-card__media--empty::before{content:"";position:absolute;inset:-30%;z-index:-1;
  background:radial-gradient(35% 35% at 50% 32%,rgba(195,154,62,.35),transparent 70%);animation:svcGlow 5s ease-in-out infinite}
@keyframes svcGlow{0%,100%{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}

.svc-card__body{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s ease}
.svc-card__body::before{content:"";position:absolute;top:0;left:28px;right:28px;height:3px;border-radius:0 0 3px 3px;background:var(--brass);
  transform:scaleX(0);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.svc-card__icon{transition:transform .5s cubic-bezier(.34,1.56,.64,1),background .35s ease,color .35s ease,box-shadow .35s ease}
.svc-card__btn{gap:0;overflow:hidden;position:relative;transition:background .3s ease,color .3s ease,transform .3s ease,gap .3s ease,box-shadow .3s ease}
.svc-card__arrow{width:0;height:18px;opacity:0;transform:translateX(-6px);transition:width .3s ease,opacity .3s ease,transform .3s ease}

@media (hover:hover){
  .svc-card:hover .svc-card__media img,.svc-card:focus-within .svc-card__media img{transform:scale(1.07);filter:saturate(1.08)}
  .svc-card:hover .svc-card__media::after,.svc-card:focus-within .svc-card__media::after{opacity:1}
  .svc-card:hover .svc-card__shine::before{animation:svcShine .9s ease forwards}
  .svc-card:hover .svc-card__body,.svc-card:focus-within .svc-card__body{transform:translateY(-10px);box-shadow:0 36px 70px rgba(42,29,22,.2)}
  .svc-card:hover .svc-card__body::before,.svc-card:focus-within .svc-card__body::before{transform:scaleX(1)}
  .svc-card:hover .svc-card__icon,.svc-card:focus-within .svc-card__icon{transform:translateY(-4px) rotate(-8deg) scale(1.08);background:var(--brown-deep);color:var(--brass);
    box-shadow:0 14px 26px rgba(42,29,22,.28)}
  .svc-card:hover .svc-card__title a{color:var(--brown)}
  .svc-card:hover .svc-card__btn,.svc-card__btn:focus-visible{background:var(--brown-deep);color:#fff;gap:10px;box-shadow:0 12px 26px rgba(42,29,22,.25)}
  .svc-card:hover .svc-card__arrow,.svc-card__btn:focus-visible .svc-card__arrow{width:18px;opacity:1;transform:none}
}
@keyframes svcShine{from{left:-60%}to{left:130%}}
/* Touch screens: small press feedback instead of hover */
@media (hover:none){.svc-card__btn:active{transform:scale(.97)}.svc-card:active .svc-card__body{transform:translateY(-4px)}}

@media (prefers-reduced-motion:reduce){
  .reveal-ready [data-reveal]{opacity:1;transform:none;transition:none}
  .svc-card__media img,.svc-card__body,.svc-card__body::before,.svc-card__icon,.svc-card__btn,.svc-card__arrow{transition:none}
  .svc-card__media--empty::before,.svc-card:hover .svc-card__shine::before{animation:none}
  .svc-card:hover .svc-card__body,.svc-card:hover .svc-card__icon{transform:none}
}

/* ================= Services page ================= */
.sv-hero{position:relative;overflow:hidden;isolation:isolate;color:#ddd2c8;padding:84px 0 70px;
  background:radial-gradient(90% 120% at 100% 0%,#4a3426 0%,#2a1d16 45%,#1a1310 100%)}
.sv-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--brass) 20%,var(--brass) 80%,transparent)}
.sv-hero__glow{position:absolute;z-index:-1;left:-10%;top:-40%;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.18),transparent 65%)}
.sv-hero__mark{position:absolute;z-index:-1;right:4%;top:50%;width:min(30vw,380px);transform:translateY(-50%);fill:none;stroke:rgba(195,154,62,.12);stroke-width:1}
.sv-hero__inner{max-width:var(--wrap)}
.sv-crumbs{display:flex;align-items:center;gap:8px;margin:0 0 26px;font-size:.92rem;color:#a99d92}
.sv-crumbs a{color:#efe8e2;text-decoration:none}
.sv-crumbs a:hover{color:var(--brass)}
.sv-crumbs svg{width:12px;height:12px;color:var(--brass)}
.sv-hero__badge{display:inline-flex;align-items:center;gap:9px;margin:0 0 20px;padding:7px 15px 7px 11px;border-radius:999px;border:1px solid rgba(195,154,62,.45);
  background:rgba(195,154,62,.12);color:var(--brass);font-size:.82rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.sv-hero__title{font-family:var(--body);font-weight:800;font-size:clamp(2.2rem,4.6vw,4rem);line-height:1.08;letter-spacing:-.02em;color:#fff;margin:0 0 20px;max-width:17ch}
.sv-hero__title span{color:var(--brass)}
.sv-hero__text{font-size:clamp(1.02rem,1.3vw,1.2rem);line-height:1.7;max-width:62ch;margin:0 0 32px}
.sv-hero__actions{display:flex;flex-wrap:wrap;gap:14px}
.sv-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 28px;border-radius:999px;font-weight:800;text-decoration:none;transition:transform .2s,background .2s,color .2s,border-color .2s}
.sv-btn svg{width:18px;height:18px;transition:transform .2s}
.sv-btn--brass{background:var(--brass);color:var(--brown-deep);box-shadow:0 12px 30px rgba(195,154,62,.3)}
.sv-btn--brass:hover{background:#d4ad54;color:var(--brown-deep);transform:translateY(-2px)}
.sv-btn--brass:hover svg{transform:translateX(3px)}
.sv-btn--ghost{border:1.5px solid rgba(255,255,255,.35);color:#fff;background:rgba(255,255,255,.04)}
.sv-btn--ghost:hover{border-color:#fff;color:#fff;background:rgba(255,255,255,.1)}
.sv-hero__stats{list-style:none;margin:48px 0 0;padding:26px 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;border-top:1px solid rgba(255,255,255,.12)}
.sv-hero__stats li{padding-left:18px;border-left:2px solid rgba(195,154,62,.5)}
.sv-hero__stats strong{display:block;font-family:"Playfair Display",Georgia,serif;font-weight:800;font-size:clamp(1.6rem,2.6vw,2.3rem);color:#fff;line-height:1.1}
.sv-hero__stats span{display:block;margin-top:4px;font-size:.82rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#bfb3a8}

.sv-jump{position:sticky;top:var(--jump-top,74px);z-index:40;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid #ece7e2}
.sv-jump__inner{display:flex;align-items:center;gap:18px;padding-top:12px;padding-bottom:12px}
.sv-jump__label{flex:0 0 auto;font-size:.8rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--brass-dark)}
.sv-jump ul{list-style:none;margin:0;padding:2px 0;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;scroll-behavior:smooth;mask-image:linear-gradient(90deg,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,#000 92%,transparent)}
.sv-jump ul::-webkit-scrollbar{display:none}
.sv-jump a{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;padding:8px 15px;border-radius:999px;border:1px solid #e2dcd5;background:#fff;color:var(--text);font-weight:600;font-size:.9rem;text-decoration:none;transition:all .2s}
.sv-jump a svg{color:var(--brass)}
.sv-jump a:hover,.sv-jump a.is-current{background:var(--brown);border-color:var(--brown);color:#fff}
.sv-jump a:hover svg,.sv-jump a.is-current svg{color:var(--brass)}
.svc--page{padding-top:80px}
.svc--page .svc-card{scroll-margin-top:170px}
.svc-card:target .svc-card__body{box-shadow:0 0 0 3px var(--brass),0 30px 60px rgba(42,29,22,.16)}
.svc__more{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.sv-empty{text-align:center;color:var(--muted);font-size:1.1rem}

.sv-why{padding:90px 0;background:linear-gradient(180deg,#f6f3ef,#efeae4)}
.sv-why__title{font-family:var(--body);font-weight:800;font-size:clamp(1.8rem,3.2vw,2.6rem);color:var(--ink);text-align:center;margin:0 0 44px}
.sv-why__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.sv-why__item{background:#fff;border-radius:18px;padding:30px 26px;box-shadow:0 16px 40px rgba(42,29,22,.07);border:1px solid rgba(42,29,22,.05);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
.sv-why__item:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(42,29,22,.13)}
.sv-why__num{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--brown-deep);color:var(--brass);font-family:"Playfair Display",Georgia,serif;font-weight:800;margin-bottom:18px}
.sv-why__item h3{font-family:var(--body);font-weight:800;font-size:1.2rem;color:var(--ink);margin:0 0 8px}
.sv-why__item p{margin:0;color:var(--muted);line-height:1.65}

.menu__sub-all a{font-weight:800!important;color:var(--brass-dark)!important;border-bottom:1px solid #eee}

@media (max-width:1024px){
  .sv-hero{padding:64px 0 54px}
  .sv-hero__stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .sv-why__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:1100px){.sv-jump{position:static}}
@media (max-width:640px){
  .sv-hero{padding:44px 0 40px}
  .sv-crumbs{margin-bottom:18px}
  .sv-hero__mark{width:60vw;right:-20vw;opacity:.7}
  .sv-hero__actions{flex-direction:column}
  .sv-btn{width:100%}
  .sv-hero__stats{margin-top:34px;gap:18px 14px}
  .sv-jump__label{display:none}
  .sv-jump__inner{padding-top:10px;padding-bottom:10px}
  .svc--page{padding-top:54px}
  .svc--page .svc-card{scroll-margin-top:20px}
  .svc__more .btn{width:100%}
  .sv-why{padding:60px 0}
  .sv-why__grid{grid-template-columns:1fr;gap:14px}
  .sv-why__item{padding:24px 20px}
  .sv-why__item:hover{transform:none}
}
@media (prefers-reduced-motion:reduce){.sv-why__item,.sv-btn,.sv-jump a{transition:none}}

/* ================= Services page v2: light hero + 3D cards ================= */
.sp-hero{position:relative;overflow:hidden;isolation:isolate;background:#faf8f5;padding:90px 0 70px;text-align:center}
.sp-hero__blob{position:absolute;z-index:-1;border-radius:50%;filter:blur(10px);pointer-events:none}
.sp-hero__blob--a{left:-12%;top:-30%;width:58%;aspect-ratio:1;background:radial-gradient(circle,rgba(195,154,62,.22),transparent 65%);animation:spFloat 14s ease-in-out infinite}
.sp-hero__blob--b{right:-14%;bottom:-40%;width:60%;aspect-ratio:1;background:radial-gradient(circle,rgba(42,29,22,.08),transparent 65%);animation:spFloat 18s ease-in-out infinite reverse}
@keyframes spFloat{0%,100%{transform:translate(0,0)}50%{transform:translate(4%,6%)}}
.sp-hero__inner{max-width:980px}
.sp-hero__pill{display:inline-flex;align-items:center;gap:8px;margin:0 0 26px;padding:7px 16px;border-radius:999px;border:1px solid #e3dcd3;background:#fff;
  font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#5d544c}
.sp-hero__pill svg{color:var(--brass)}
.sp-hero__title{font-family:var(--body);font-weight:800;font-size:clamp(2.6rem,7vw,5.6rem);line-height:1;letter-spacing:-.035em;color:#1a1411;margin:0 0 24px}
.sp-hero__accent{color:var(--brass)}
.sp-hero__title .sp-hero__accent{display:block}
.sp-hero__dot{color:var(--brass)}
.sp-hero__text{max-width:52ch;margin:0 auto 32px;font-size:clamp(1.02rem,1.4vw,1.2rem);line-height:1.6;color:#5d554f}
.sp-hero__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.sp-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 30px;border-radius:999px;font-weight:700;font-size:1.02rem;text-decoration:none;
  transition:transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s,background .25s,color .25s,border-color .25s}
.sp-btn svg{width:17px;height:17px;transition:transform .25s}
.sp-btn--main{background:var(--brass);color:var(--brown-deep);box-shadow:0 12px 28px rgba(195,154,62,.32)}
.sp-btn--main:hover{background:#d4ad54;color:var(--brown-deep);transform:translateY(-2px);box-shadow:0 18px 34px rgba(195,154,62,.42)}
.sp-btn--main:hover svg{transform:translateX(4px)}
.sp-btn--line{background:#fff;color:#1a1411;border:1px solid #e1d9d0}
.sp-btn--line:hover{border-color:#1a1411;color:#1a1411;transform:translateY(-2px)}
.sp-scroll{display:inline-flex;flex-direction:column;align-items:center;gap:10px;margin-top:54px;text-decoration:none}
.sp-scroll__label{font-size:.7rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase;color:#8d847c}
.sp-scroll__mouse{position:relative;width:22px;height:34px;border:2px solid #cfc6bd;border-radius:12px;background:#fff}
.sp-scroll__mouse span{position:absolute;left:50%;top:6px;width:4px;height:7px;margin-left:-2px;border-radius:2px;background:var(--brass);animation:hsScroll 1.8s ease-in-out infinite}

.sp-grid-wrap{padding:30px 0 110px;background:linear-gradient(180deg,#faf8f5 0%,#fff 22%);perspective:1600px}
.sp-grid{list-style:none;margin:0 auto;padding:0;max-width:1180px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:56px 34px}
.sp-card{scroll-margin-top:110px}

/* 3D reveal: cards swing up from a tilt (left column leans left, right column leans right) */
.tilt-ready .sp-card{opacity:0;transform:translateY(80px) rotateX(22deg) rotateY(calc(var(--dir) * 16deg + var(--odd) * 2deg)) rotateZ(calc(var(--dir) * -2.5deg)) scale(.94);
  transform-origin:50% 100%;transition:opacity .9s ease calc(var(--col) * 120ms),transform 1.1s cubic-bezier(.16,.84,.24,1) calc(var(--col) * 120ms)}
.tilt-ready .sp-card.is-in{opacity:1;transform:none}

.sp-card__inner{--rx:0deg;--ry:0deg;--gx:50%;--gy:0%;position:relative;height:100%;display:flex;flex-direction:column;border-radius:24px;background:#fff;
  border:1px solid #eee8e2;box-shadow:0 22px 50px rgba(42,29,22,.08);transform:rotateX(var(--rx)) rotateY(var(--ry));transform-style:preserve-3d;
  transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s ease}
.sp-card__inner.is-tilting{transition:transform .08s linear,box-shadow .5s ease}
.sp-card__media{position:relative;display:block;aspect-ratio:446/330;border-radius:23px 23px 0 0;overflow:hidden;
  background:linear-gradient(115deg,#4a4542 0%,#8d8783 45%,#e9e6e3 100%)}
.sp-card__media img{width:100%;height:100%;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.sp-card__media--cover img{object-fit:cover}
.sp-card__media--contain img{object-fit:contain;object-position:50% 100%;padding:18px 18px 0}
.sp-card__media--empty{background:linear-gradient(115deg,#2a1d16 0%,#5a4030 55%,#a1855e 100%)}
.sp-card__ph{position:absolute;inset:0;display:grid;place-items:center;color:rgba(255,255,255,.55)}
.sp-card__glare{position:absolute;inset:0;pointer-events:none;opacity:0;transition:opacity .4s;
  background:radial-gradient(60% 60% at var(--gx) var(--gy),rgba(255,255,255,.38),transparent 70%)}
.sp-card__body{flex:1;display:flex;flex-direction:column;padding:26px 26px 26px;transform:translateZ(30px)}
.sp-card__tag{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-dark)}
.sp-card__tag span{width:6px;height:6px;border-radius:50%;background:var(--brass);box-shadow:0 0 0 3px rgba(195,154,62,.2)}
.sp-card__title{font-family:var(--body);font-weight:700;font-size:1.6rem;line-height:1.2;letter-spacing:-.01em;color:#1a1411;margin:0 0 12px}
.sp-card__title a{color:inherit;text-decoration:none}
.sp-card__title a:hover{color:var(--brown)}
.sp-card__text{margin:0 0 18px;color:#77706a;font-size:1rem;line-height:1.55}
.sp-card__chips{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.sp-card__chips li{padding:5px 11px;border-radius:999px;background:#f5f2ee;border:1px solid #ece6df;font-size:.78rem;font-weight:600;color:#6b625b}
.sp-card__btn{margin-top:auto;display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:999px;background:var(--brass);
  color:var(--brown-deep);font-weight:800;text-decoration:none;box-shadow:0 10px 22px rgba(195,154,62,.28);transition:background .25s,color .25s,box-shadow .25s}
.sp-card__btn svg{width:17px;height:17px;transition:transform .25s}
.sp-card__btn:hover{background:var(--brown-deep);color:#fff;box-shadow:0 14px 28px rgba(42,29,22,.3)}
.sp-card__btn:hover svg{transform:translateX(4px)}
@media (hover:hover){
  .sp-card__inner:hover{box-shadow:0 40px 80px rgba(42,29,22,.18)}
  .sp-card__inner:hover .sp-card__glare{opacity:1}
  .sp-card__inner:hover .sp-card__media img{transform:scale(1.06)}
}
.sp-card:target .sp-card__inner{box-shadow:0 0 0 3px var(--brass),0 30px 60px rgba(42,29,22,.16)}

/* Dark CTA */
.sp-cta{position:relative;overflow:hidden;isolation:isolate;background:#14100d;color:#cfc5bb;padding:110px 0;text-align:center}
.sp-cta__glow{position:absolute;z-index:-1;left:50%;top:-60%;width:70%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.16),transparent 62%)}
.sp-cta__inner{max-width:760px}
.sp-cta h2{font-family:var(--body);font-weight:800;font-size:clamp(2rem,4.6vw,3.6rem);line-height:1.08;letter-spacing:-.03em;color:#fff;margin:0 0 18px}
.sp-cta p{font-size:1.15rem;line-height:1.6;margin:0 auto 34px;max-width:52ch}

@media (max-width:1024px){
  .sp-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 26px}
  .tilt-ready .sp-card{transform:translateY(70px) rotateX(18deg) rotateY(calc(var(--odd) * 12deg)) scale(.95);transition-delay:0ms}
}
@media (max-width:640px){
  .sp-hero{padding:56px 0 46px}
  .sp-hero__pill{font-size:.66rem;letter-spacing:.1em;padding:6px 12px;margin-bottom:20px}
  .sp-hero__text{margin-bottom:26px}
  .sp-hero__actions{flex-direction:column}
  .sp-btn{width:100%}
  .sp-scroll{margin-top:34px}
  .sp-grid-wrap{padding:20px 0 70px}
  .sp-grid{grid-template-columns:1fr;gap:30px}
  .tilt-ready .sp-card{transform:translateY(60px) rotateX(16deg) rotateY(calc(var(--odd) * 8deg)) scale(.96)}
  .sp-card__inner{border-radius:20px}
  .sp-card__media{border-radius:19px 19px 0 0}
  .sp-card__body{padding:22px 20px}
  .sp-card__title{font-size:1.4rem}
  .sp-cta{padding:70px 0}
  .sp-cta p{font-size:1.02rem}
}
@media (prefers-reduced-motion:reduce){
  .tilt-ready .sp-card{opacity:1;transform:none;transition:none}
  .sp-hero__blob,.sp-scroll__mouse span{animation:none}
  .sp-card__inner,.sp-card__media img{transition:none}
}

/* ================= Single service page ================= */
.sd-hero{position:relative;overflow:hidden;isolation:isolate;color:#d9cec3;padding:70px 0 90px;
  background:radial-gradient(80% 120% at 0% 0%,#4a3426 0%,#2a1d16 50%,#17110e 100%)}
.sd-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--brass) 20%,var(--brass) 80%,transparent)}
.sd-hero__glow{position:absolute;z-index:-1;right:-10%;top:-30%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.22),transparent 65%)}
.sd-hero__grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:64px;align-items:center}
.sd-hero__tag{display:inline-flex;align-items:center;gap:10px;margin:0 0 18px;padding:6px 16px 6px 6px;border-radius:999px;border:1px solid rgba(195,154,62,.45);
  background:rgba(195,154,62,.1);color:var(--brass);font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.sd-hero__tag-ico{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--brass);color:var(--brown-deep)}
.sd-hero__title{font-family:var(--body);font-weight:800;font-size:clamp(2.2rem,4.6vw,3.9rem);line-height:1.06;letter-spacing:-.025em;color:#fff;margin:0 0 18px}
.sd-hero__text{font-size:clamp(1.05rem,1.4vw,1.22rem);line-height:1.7;max-width:52ch;margin:0 0 30px}
.sd-hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.sp-btn--glass{background:rgba(255,255,255,.06);color:#fff;border:1.5px solid rgba(255,255,255,.3);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.sp-btn--glass:hover{border-color:#fff;background:rgba(255,255,255,.12);color:#fff;transform:translateY(-2px)}
.sp-btn--glass svg{width:18px;height:18px}
.sd-trust{list-style:none;margin:34px 0 0;padding:22px 0 0;display:flex;flex-wrap:wrap;gap:12px 28px;border-top:1px solid rgba(255,255,255,.12)}
.sd-trust li{display:flex;align-items:center;gap:8px;font-weight:600;color:#efe8e2;font-size:.95rem}
.sd-trust svg{color:var(--brass)}
.sd-hero__media{position:relative}
.sd-frame{position:relative;aspect-ratio:5/4;border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#e9e5e0,#bdb5ad);
  box-shadow:0 40px 80px rgba(0,0,0,.4),0 0 0 1px rgba(195,154,62,.35);transform:rotate(1.5deg);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.sd-frame::before{content:"";position:absolute;inset:14px;z-index:1;border-radius:18px;border:1px solid rgba(255,255,255,.35);pointer-events:none}
.sd-frame img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.sd-hero__media:hover .sd-frame{transform:rotate(0)}
.sd-hero__media:hover .sd-frame img{transform:scale(1.05)}
.sd-frame--empty{background:linear-gradient(135deg,#5a4030,#2a1d16)}
.sd-frame__ph{position:absolute;inset:0;display:grid;place-items:center;color:rgba(195,154,62,.55)}
.sd-float{position:absolute;left:-28px;bottom:-26px;z-index:2;display:flex;align-items:center;gap:12px;padding:14px 20px 14px 14px;border-radius:18px;background:#fff;color:var(--ink);
  box-shadow:0 24px 50px rgba(0,0,0,.28);animation:sdFloat 5s ease-in-out infinite;max-width:85%}
.sd-float__ico{flex:0 0 46px;display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--brown-deep);color:var(--brass)}
.sd-float strong{display:block;font-size:.95rem;line-height:1.25}
.sd-float small{display:block;color:var(--muted);font-size:.82rem}
@keyframes sdFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

.sd-main{padding:90px 0;background:#fff}
.sd-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:64px;align-items:start}
.sd-block{margin-bottom:56px}
.sd-kicker{display:flex;align-items:center;gap:10px;margin:0 0 12px;font-size:.78rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--brass-dark)}
.sd-kicker::before{content:"";width:28px;height:2px;background:var(--brass)}
.sd-kicker--light{color:var(--brass)}
.sd-h2{font-family:var(--body);font-weight:800;font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.15;letter-spacing:-.015em;color:var(--ink);margin:0 0 26px}
.sd-lead{font-size:clamp(1.15rem,1.6vw,1.35rem);line-height:1.75;color:var(--ink);margin:0;padding-left:22px;border-left:3px solid var(--brass)}
.sd-features{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sd-feature{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:16px;background:#faf7f3;border:1px solid #efe8e0;font-weight:600;color:var(--ink);
  transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s,background .35s}
.sd-feature:hover{transform:translateY(-4px);background:#fff;border-color:rgba(195,154,62,.5);box-shadow:0 18px 36px rgba(42,29,22,.1)}
.sd-feature__ico{flex:0 0 38px;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--brass);color:var(--brown-deep)}
.sd-feature__ico svg{width:20px;height:20px}
.sd-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:none}
.sd-steps li{position:relative;padding:26px 22px;border-radius:18px;background:var(--brown-deep);color:#efe8e2;font-weight:600;line-height:1.5;overflow:hidden}
.sd-steps li::after{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.25),transparent 70%)}
.sd-steps__num{display:block;font-family:"Playfair Display",Georgia,serif;font-weight:800;font-size:2.2rem;color:var(--brass);line-height:1;margin-bottom:14px}
.sd-inline-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:30px 34px;border-radius:22px;
  background:linear-gradient(120deg,#faf3e4,#f3e6c8);border:1px solid rgba(195,154,62,.4)}
.sd-inline-cta h2{font-family:var(--body);font-weight:800;font-size:1.5rem;color:var(--ink);margin:0 0 6px}
.sd-inline-cta p{margin:0;color:#6b5e50}

.sd-side{position:sticky;top:96px;display:grid;gap:20px}
.sd-quote{border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 30px 70px rgba(42,29,22,.16);border:1px solid #efe8e0}
.sd-quote__head{position:relative;padding:26px 26px 22px;background:radial-gradient(120% 120% at 100% 0%,#4a3426,#1d1511);color:#cfc4b9}
.sd-quote__head h2{font-family:var(--body);font-weight:800;font-size:1.35rem;color:#fff;margin:0 0 4px}
.sd-quote__head p:last-child{margin:0;font-size:.92rem}
.sd-quote__body{display:grid;gap:10px;padding:22px 26px 24px}
.sd-in{width:100%;font:inherit;color:var(--ink);padding:13px 15px;border:1.5px solid #e6dfd7;border-radius:12px;background:#faf8f6;transition:border-color .2s,box-shadow .2s,background .2s}
.sd-in:focus{outline:0;border-color:var(--brass);background:#fff;box-shadow:0 0 0 4px rgba(195,154,62,.18)}
textarea.sd-in{resize:vertical;min-height:84px}
.sd-quote__btn{margin-top:4px;display:flex;align-items:center;justify-content:center;gap:10px;padding:15px;border:0;border-radius:999px;cursor:pointer;
  background:var(--brass);color:var(--brown-deep);font:inherit;font-weight:800;box-shadow:0 12px 26px rgba(195,154,62,.32);transition:background .2s,transform .2s,color .2s}
.sd-quote__btn svg{width:18px;height:18px;transition:transform .2s}
.sd-quote__btn:hover{background:var(--brown-deep);color:#fff;transform:translateY(-2px)}
.sd-quote__btn:hover svg{transform:translateX(4px)}
.sd-quote__note{display:flex;align-items:center;justify-content:center;gap:6px;margin:4px 0 0;font-size:.82rem;color:var(--muted)}
.sd-quote__note svg{color:var(--brass)}
.sd-callcard{display:flex;align-items:center;gap:14px;padding:18px 20px;border-radius:20px;background:var(--brown-deep);color:#fff;text-decoration:none;transition:transform .3s,box-shadow .3s}
.sd-callcard:hover{color:#fff;transform:translateY(-3px);box-shadow:0 20px 40px rgba(42,29,22,.3)}
.sd-callcard__ico{position:relative;flex:0 0 52px;display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--brass);color:var(--brown-deep)}
.sd-callcard__ico svg{width:22px;height:22px}
.sd-callcard__ico::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--brass);animation:phonePulse 2.4s ease-out infinite}
.sd-callcard small{display:block;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--brass)}
.sd-callcard strong{display:block;font-size:1.35rem}
.sd-callcard em{display:block;font-style:normal;font-size:.82rem;color:#a99d92}
.sd-nav{padding:22px;border-radius:20px;background:#faf7f3;border:1px solid #efe8e0}
.sd-nav h2{font-family:var(--body);font-weight:800;font-size:.85rem;letter-spacing:.18em;text-transform:uppercase;color:var(--ink);margin:0 0 12px}
.sd-nav ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.sd-nav a{display:flex;align-items:center;gap:12px;padding:9px 10px;border-radius:12px;text-decoration:none;color:var(--text);font-weight:600;font-size:.95rem;transition:background .2s,color .2s}
.sd-nav__ico{flex:0 0 32px;display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:#fff;border:1px solid #ece4da;color:var(--brass-dark);transition:all .2s}
.sd-nav a span:nth-child(2){flex:1}
.sd-nav__arrow{width:14px;height:14px;opacity:0;transform:translateX(-4px);transition:all .2s;color:var(--brass)}
.sd-nav a:hover{background:#fff;color:var(--ink)}
.sd-nav a:hover .sd-nav__arrow{opacity:1;transform:none}
.sd-nav a[aria-current]{background:var(--brown-deep);color:#fff}
.sd-nav a[aria-current] .sd-nav__ico{background:var(--brass);border-color:var(--brass);color:var(--brown-deep)}
.sd-nav a[aria-current] .sd-nav__arrow{opacity:1;transform:none}

.sd-ready{position:relative;overflow:hidden;padding:30px 28px;border-radius:24px;background:linear-gradient(140deg,#faf3e4,#f1e2c0);
  border:1px solid rgba(195,154,62,.45);box-shadow:0 24px 54px rgba(42,29,22,.12)}
.sd-ready::after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.35),transparent 70%)}
.sd-ready__ico{position:relative;z-index:1;display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--brown-deep);color:var(--brass);margin-bottom:18px}
.sd-ready h2{font-family:var(--body);font-weight:800;font-size:1.45rem;line-height:1.2;color:var(--ink);margin:0 0 8px}
.sd-ready p{margin:0 0 20px;color:#6b5e50;line-height:1.6}
.sd-ready .sd-kicker{margin-bottom:8px}
.sd-ready__btn{position:relative;z-index:1;width:100%}
.sd-related{background:linear-gradient(180deg,#f6f3ef,#fff)}
.sd-cta-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}

/* Mobile sticky action bar (service pages) */
.mbar{display:none}
@media (max-width:1100px){
  .sd-hero__grid,.sd-layout{grid-template-columns:1fr}
  .sd-hero__grid{gap:56px}
  .sd-hero__media{max-width:620px}
  .sd-side{position:static;grid-template-columns:1fr 1fr;align-items:start}
  .sd-ready{grid-row:span 2}
}
@media (max-width:760px){
  .sd-hero{padding:44px 0 70px}
  .sd-frame{transform:none;border-radius:22px}
  .sd-float{left:12px;bottom:-22px;padding:10px 14px 10px 10px}
  .sd-float__ico{flex-basis:40px;width:40px;height:40px}
  .sd-hero__actions{flex-direction:column}
  .sd-hero__actions .sp-btn{width:100%}
  .sd-trust{gap:10px 18px}
  .sd-main{padding:60px 0}
  .sd-block{margin-bottom:44px}
  .sd-features,.sd-steps{grid-template-columns:1fr}
  .sd-steps li{display:flex;align-items:center;gap:16px;padding:18px}
  .sd-steps__num{margin:0;font-size:1.7rem}
  .sd-inline-cta{padding:24px 20px}
  .sd-inline-cta .sp-btn{width:100%}
  .sd-side{grid-template-columns:1fr}
  .sd-ready{grid-row:auto}
  .sd-cta-actions .sp-btn{width:100%}
  .mbar{position:fixed;left:0;right:0;bottom:0;z-index:55;display:grid;grid-template-columns:1fr 1.6fr;gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    background:rgba(23,19,16,.96);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-top:1px solid rgba(195,154,62,.35);box-shadow:0 -10px 30px rgba(0,0,0,.25)}
  .mbar a{display:flex;align-items:center;justify-content:center;gap:8px;padding:13px;border-radius:999px;font-weight:800;text-decoration:none}
  .mbar svg{width:18px;height:18px}
  .mbar__call{border:1.5px solid rgba(255,255,255,.3);color:#fff}
  .mbar__quote{background:var(--brass);color:var(--brown-deep)}
  body.has-mbar{padding-bottom:76px}
  body.has-mbar .ft__top{display:none}
}
@media (prefers-reduced-motion:reduce){.sd-float,.sd-callcard__ico::after{animation:none}.sd-frame,.sd-feature,.sd-frame img{transition:none}}

/* ================= Products page ================= */
.pr-crumbs{justify-content:center;color:#8d847c}
.pr-crumbs a{color:#3d342d}
.pr-perks{list-style:none;margin:40px auto 0;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.pr-perks li{display:flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;background:#fff;border:1px solid #ebe3d9;font-weight:600;font-size:.92rem;color:#3d342d;
  box-shadow:0 6px 16px rgba(42,29,22,.05)}
.pr-perks svg{color:var(--brass)}
.pr-price{position:absolute;left:16px;top:16px;z-index:2;padding:7px 14px;border-radius:999px;background:var(--brown-deep);color:#fff;font-weight:800;font-size:.85rem;
  box-shadow:0 8px 18px rgba(0,0,0,.22)}
.pr-price--ask{background:rgba(255,255,255,.92);color:var(--brown-deep);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.sp-card__media div,.sp-card__media{cursor:default}
.pr-why{padding:80px 0;background:linear-gradient(180deg,#f6f3ef,#efeae4)}
.pr-why__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.pr-why__item{padding:28px 24px;border-radius:20px;background:#fff;border:1px solid rgba(42,29,22,.06);box-shadow:0 16px 40px rgba(42,29,22,.07);
  transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s}
.pr-why__item:hover{transform:translateY(-6px);box-shadow:0 26px 54px rgba(42,29,22,.13)}
.pr-why__ico{display:grid;place-items:center;width:54px;height:54px;border-radius:14px;background:var(--brown-deep);color:var(--brass);margin-bottom:18px;transition:transform .4s cubic-bezier(.34,1.56,.64,1)}
.pr-why__item:hover .pr-why__ico{transform:rotate(-8deg) scale(1.08)}
.pr-why__item h3{font-family:var(--body);font-weight:800;font-size:1.15rem;color:var(--ink);margin:0 0 8px}
.pr-why__item p{margin:0;color:var(--muted);line-height:1.6}
@media (max-width:1024px){.pr-why__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){
  .pr-perks{margin-top:28px;gap:8px}
  .pr-perks li{font-size:.84rem;padding:7px 12px}
  .pr-why{padding:56px 0}
  .pr-why__grid{grid-template-columns:1fr;gap:14px}
  .pr-why__item:hover{transform:none}
}
@media (prefers-reduced-motion:reduce){.pr-why__item,.pr-why__ico{transition:none}}

/* ================= Premium inner pages (About, Testimonials, Career, Contact, Quote) ================= */
.lx-hero{position:relative;overflow:hidden;isolation:isolate;color:#d9cec3;padding:76px 0 84px;
  background:radial-gradient(80% 120% at 0% 0%,#4a3426 0%,#2a1d16 50%,#17110e 100%)}
.lx-hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,transparent,var(--brass) 20%,var(--brass) 80%,transparent)}
.lx-hero__glow{position:absolute;z-index:-1;right:-8%;top:-40%;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.22),transparent 65%)}
.lx-hero__mark{position:absolute;z-index:-1;right:5%;top:50%;width:min(28vw,340px);transform:translateY(-50%);fill:none;stroke:rgba(195,154,62,.13);stroke-width:1}
.lx-hero__inner{max-width:var(--wrap)}
.lx-hero__title{font-family:var(--body);font-weight:800;font-size:clamp(2.3rem,5vw,4.2rem);line-height:1.06;letter-spacing:-.025em;color:#fff;margin:0 0 18px;max-width:18ch}
.lx-hero__title span{color:var(--brass)}
.lx-hero__text{font-size:clamp(1.05rem,1.4vw,1.22rem);line-height:1.7;max-width:60ch;margin:0 0 30px}

.lx-section{padding:90px 0;background:#fff}
.lx-section--tint{background:linear-gradient(180deg,#f6f3ef,#efeae4)}
.lx-about{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:center}
.lx-about--solo{grid-template-columns:1fr;max-width:860px}
.lx-about__media{position:relative}
.lx-badge{position:absolute;right:-22px;bottom:-26px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:150px;height:150px;border-radius:50%;
  background:var(--brown-deep);color:#e9e1d9;text-align:center;box-shadow:0 24px 50px rgba(0,0,0,.3),0 0 0 6px #fff;padding:16px}
.lx-badge strong{font-family:"Playfair Display",Georgia,serif;font-size:2.4rem;color:var(--brass);line-height:1}
.lx-badge span{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-top:4px}
.lx-prose{font-size:1.08rem;line-height:1.8;color:var(--text)}
.lx-prose h2{font-family:var(--body);font-weight:800;font-size:clamp(1.5rem,2.4vw,2rem);letter-spacing:-.01em;color:var(--ink);margin:1.4em 0 .5em;padding-left:16px;border-left:3px solid var(--brass)}
.lx-prose h2:first-child{margin-top:0}
.lx-prose ul{list-style:none;padding:0;display:grid;gap:10px}
.lx-prose ul li{position:relative;padding:12px 16px 12px 46px;border-radius:12px;background:#faf7f3;border:1px solid #efe8e0;font-weight:600;color:var(--ink)}
.lx-prose ul li::before{content:"";position:absolute;left:16px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;
  background:var(--brass) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10.5 3.2 3L15 7' fill='none' stroke='%232a1d16' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/12px no-repeat}
.lx-paper{max-width:860px;margin:0 auto;padding:54px 60px;border-radius:24px;background:#fff;border:1px solid #efe8e0;box-shadow:0 30px 70px rgba(42,29,22,.08);line-height:1.8}
.lx-paper__date{display:inline-block;margin:0 0 24px;padding:6px 14px;border-radius:999px;background:#f6f0e6;color:var(--brass-dark);font-weight:700;font-size:.85rem}
.lx-paper h2{font-family:var(--body);font-weight:800;color:var(--ink);font-size:1.4rem;margin:1.6em 0 .4em}

/* Forms */
.lx-formwrap{display:grid;grid-template-columns:minmax(0,1fr) 370px;gap:40px;align-items:start}
.lx-form{background:#fff;border-radius:26px;padding:44px 46px;border:1px solid #efe8e0;box-shadow:0 34px 80px rgba(42,29,22,.1)}
.lx-form__head{margin-bottom:28px}
.lx-form__head h2{font-family:var(--body);font-weight:800;font-size:clamp(1.6rem,2.6vw,2.1rem);letter-spacing:-.015em;color:var(--ink);margin:0}
.lx-form fieldset{margin-bottom:30px;padding-top:24px;border-top:1px solid #f0ebe5}
.lx-form fieldset:first-of-type{padding-top:0;border-top:0}
.lx-form legend{font-family:var(--body);font-size:.82rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-dark)}
.lx-form .field label{font-size:.95rem}
.lx-form .field input,.lx-form .field select,.lx-form .field textarea{padding:13px 15px;border:1.5px solid #e2dcd5;border-radius:12px;background:#faf8f6;transition:border-color .2s,box-shadow .2s,background .2s}
.lx-form .field input:hover,.lx-form .field select:hover,.lx-form .field textarea:hover{border-color:#cfc6bd}
.lx-form .field input:focus,.lx-form .field select:focus,.lx-form .field textarea:focus{outline:0;border-color:var(--brass);background:#fff;box-shadow:0 0 0 4px rgba(195,154,62,.18)}
.lx-form .field input[type=file]{padding:10px;background:#fff;border-style:dashed}
.lx-form .field [aria-invalid="true"]{border-color:var(--err);background:#fff8f7}
.lx-form .notice{border-radius:12px}
.lx-submit{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:240px;padding:17px 32px;border:0;border-radius:999px;cursor:pointer;
  background:var(--brass);color:var(--brown-deep);font:inherit;font-weight:800;font-size:1.05rem;box-shadow:0 14px 30px rgba(195,154,62,.32);transition:background .2s,color .2s,transform .2s}
.lx-submit svg{width:18px;height:18px;transition:transform .2s}
.lx-submit:hover{background:var(--brown-deep);color:#fff;transform:translateY(-2px)}
.lx-submit:hover svg{transform:translateX(4px)}
.lx-side{position:sticky;top:96px;display:grid;gap:18px}
.lx-side__card{padding:26px;border-radius:22px;background:#fff;border:1px solid #efe8e0;box-shadow:0 16px 40px rgba(42,29,22,.07)}
.lx-side__card h2{font-family:var(--body);font-weight:800;font-size:1.2rem;color:var(--ink);margin:0 0 12px}
.lx-side__card--dark{background:radial-gradient(120% 120% at 100% 0%,#4a3426,#1d1511);border-color:transparent;color:#cfc4b9}
.lx-side__card--dark h2{color:#fff}
.lx-side__card--dark a{color:#fff}
.lx-side__card--dark .side-call__phone{color:var(--brass);font-family:var(--body);font-weight:800;font-size:1.6rem}
.lx-side__card--dark .muted{color:#a99d92}
.lx-side__btn{width:100%;margin-top:6px}
.lx-ticks{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.lx-ticks li{position:relative;padding-left:30px;line-height:1.5}
.lx-ticks li::before{content:"";position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;
  background:var(--brass) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10.5 3.2 3L15 7' fill='none' stroke='%232a1d16' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/13px no-repeat}
.lx-steps{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.lx-steps li{display:flex;align-items:center;gap:12px;font-weight:600;color:var(--ink)}
.lx-steps b{flex:0 0 38px;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:#f6f0e6;color:var(--brass-dark);font-family:"Playfair Display",Georgia,serif}

/* Career */
.cr-perks{background:var(--brass);padding:20px 0}
.cr-perks__list{list-style:none;margin:0;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:12px 34px}
.cr-perks li{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--brown-deep)}
.cr-perks li span{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--brown-deep);color:var(--brass)}
.cr-perks li svg{width:15px;height:15px}
.cr-roles__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.cr-role{position:relative;overflow:hidden;height:100%;display:flex;flex-direction:column;gap:6px;padding:28px 24px;border-radius:22px;background:#fff;border:1px solid #efe8e0;
  box-shadow:0 18px 44px rgba(42,29,22,.08);text-decoration:none;color:var(--ink);transition:transform .4s cubic-bezier(.2,.7,.2,1),box-shadow .4s,border-color .4s}
.cr-role::before{content:"";position:absolute;left:0;top:0;right:0;height:3px;background:var(--brass);transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.cr-role__ico{display:grid;place-items:center;width:58px;height:58px;border-radius:16px;background:var(--brown-deep);color:var(--brass);margin-bottom:14px;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}
.cr-role strong{font-size:1.25rem}
.cr-role__meta{color:var(--muted);font-size:.9rem}
.cr-role__cta{margin-top:auto;padding-top:18px;display:flex;align-items:center;gap:8px;font-weight:800;color:var(--brass-dark)}
.cr-role__cta svg{width:16px;height:16px;transition:transform .25s}
.cr-role:hover{color:var(--ink);transform:translateY(-8px);border-color:rgba(195,154,62,.5);box-shadow:0 30px 60px rgba(42,29,22,.16)}
.cr-role:hover::before{transform:scaleX(1)}
.cr-role:hover .cr-role__ico{transform:rotate(-8deg) scale(1.08)}
.cr-role:hover .cr-role__cta svg{transform:translateX(4px)}

/* Testimonials page */
.tm-summary{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin:0 0 48px;padding:24px 30px;border-radius:22px;background:#faf7f3;border:1px solid #efe8e0}
.tm-summary__score strong{display:block;font-family:"Playfair Display",Georgia,serif;font-size:3.2rem;line-height:1;color:var(--ink)}
.tm-summary__score span{color:var(--muted);font-size:.85rem}
.tm-summary p{margin:6px 0 0;color:var(--muted)}
.tm-summary .sp-btn{margin-left:auto}
.tm-wall{list-style:none;margin:0;padding:0;columns:3;column-gap:26px}
.tm-wall .tm-card{break-inside:avoid;margin-bottom:26px;display:block}
.tm-wall .tm-card figure{height:auto}

/* Contact */
.ct-methods{position:relative;z-index:2;margin-top:-46px}
.ct-methods__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ct-method{height:100%;display:flex;flex-direction:column;gap:4px;padding:28px 26px;border-radius:22px;background:#fff;border:1px solid #efe8e0;box-shadow:0 24px 54px rgba(42,29,22,.12);
  text-decoration:none;color:var(--ink);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
a.ct-method:hover{color:var(--ink);transform:translateY(-6px);box-shadow:0 34px 64px rgba(42,29,22,.18)}
.ct-method__ico{display:grid;place-items:center;width:56px;height:56px;border-radius:16px;background:var(--brass);color:var(--brown-deep);margin-bottom:14px}
.ct-method small{font-size:.75rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--brass-dark)}
.ct-method strong{font-size:1.3rem;line-height:1.3}
.ct-method__mail{font-size:1.05rem!important;word-break:break-all}
.ct-method em{font-style:normal;color:var(--muted);font-size:.92rem}
.ct-office{display:flex;gap:14px}
.ct-office__ico{flex:0 0 46px;display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:var(--brown-deep);color:var(--brass)}
.ct-office address{font-style:normal;line-height:1.6;color:var(--text)}
.ct-office__map{display:inline-block;margin-top:8px;font-weight:800;color:var(--brass-dark);text-decoration:none}
.lx-side__card .social a{width:40px;height:40px;border:1px solid #e6ddd3;color:var(--ink)}
.ct-map iframe{display:block;width:100%;height:440px;border:0;filter:grayscale(.3) sepia(.15)}

@media (max-width:1100px){
  .lx-formwrap{grid-template-columns:1fr}
  .lx-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
  .cr-roles__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-wall{columns:2}
  .lx-about{grid-template-columns:1fr;gap:56px}
  .lx-about__media{max-width:620px}
}
@media (max-width:760px){
  .lx-hero{padding:46px 0 56px}
  .lx-hero__mark{width:60vw;right:-20vw}
  .lx-section{padding:58px 0}
  .lx-form{padding:28px 20px;border-radius:20px}
  .lx-submit{width:100%;min-width:0}
  .lx-side{grid-template-columns:1fr}
  .lx-paper{padding:30px 22px;border-radius:18px}
  .lx-badge{right:10px;bottom:-30px;width:118px;height:118px}
  .lx-badge strong{font-size:1.9rem}
  .cr-perks__list{justify-content:flex-start;gap:10px}
  .cr-roles__grid{grid-template-columns:1fr}
  .cr-role:hover{transform:none}
  .tm-wall{columns:1}
  .tm-summary{padding:20px}
  .tm-summary .sp-btn{margin-left:0;width:100%}
  .ct-methods{margin-top:-30px}
  .ct-methods__grid{grid-template-columns:1fr;gap:14px}
  .ct-method{padding:22px}
  .ct-map iframe{height:320px}
  .lx-form .field input,.lx-form .field select,.lx-form .field textarea{font-size:16px}
}
@media (prefers-reduced-motion:reduce){.cr-role,.cr-role__ico,.ct-method,.lx-submit{transition:none}}

/* Inner pages */
.page-hero{background:var(--brown-deep);color:#efe8e2;padding:56px 0 48px;border-bottom:4px solid var(--brass)}
.page-hero h1{color:#fff;font-size:clamp(2.2rem,4.5vw,3.3rem);max-width:22ch}
.page-hero__lead{font-size:1.15rem;max-width:60ch;margin:0}
.crumbs{font-size:.9rem;margin-bottom:14px;color:#cbbfb5}
.crumbs a{color:#fff}
.prose{max-width:72ch}
.prose--narrow{max-width:68ch}
.prose h2{font-size:1.9rem;margin-top:1.4em}
.prose .lead{font-size:1.2rem;color:var(--ink)}
.split{display:grid;grid-template-columns:1.3fr 1fr;gap:56px;align-items:start}
.checks{list-style:none;padding:0;margin:0 0 1.4em}
.checks li{position:relative;padding:6px 0 6px 30px}
.checks li::before{content:"";position:absolute;left:4px;top:13px;width:14px;height:8px;border-left:3px solid var(--brass);border-bottom:3px solid var(--brass);transform:rotate(-45deg)}

.service-layout,.form-layout{display:grid;grid-template-columns:1fr 340px;gap:56px;align-items:start}
.sidebar{display:grid;gap:24px;position:sticky;top:110px}
.side-nav h2,.side-call h2,.contact-card h2{font-size:1.4rem}
.side-nav ul{list-style:none;margin:0;padding:0;border-top:3px solid var(--brown)}
.side-nav a{display:block;padding:11px 0;border-bottom:1px solid var(--line);text-decoration:none;font-weight:600;color:var(--text)}
.side-nav a[aria-current="page"]{color:var(--brown);box-shadow:inset 4px 0 0 var(--brass);padding-left:12px}
.side-call,.contact-card{background:var(--stone);padding:26px;border-radius:var(--r)}
.side-call__phone{display:block;font-family:var(--head);font-size:2rem;font-weight:700;text-decoration:none;color:var(--brown);margin:4px 0 8px}
.contact-card h2{margin-top:1em}.contact-card h2:first-child{margin-top:0}
.contact-card address{font-style:normal;margin-bottom:.5em}

.product-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px 28px}
.product h2{font-size:1.5rem;margin:14px 0 6px}

/* Forms */
.form fieldset{border:0;padding:0;margin:0 0 28px}
.form legend{font-family:var(--head);font-size:1.5rem;font-weight:700;color:var(--ink);margin-bottom:12px;padding:0}
.form--card{background:#fff;padding:28px;border-radius:var(--r);border:1px solid var(--line)}
.form__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 20px;margin-bottom:20px}
.field--wide{grid-column:1/-1}
.field label{display:block;font-weight:600;color:var(--ink);margin-bottom:6px}
.req{color:var(--err)}
.field input,.field select,.field textarea{width:100%;font:inherit;color:var(--ink);padding:11px 12px;border:1.5px solid #bfbcb6;border-radius:var(--r);background:#fff}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brown);outline:3px solid rgba(195,154,62,.45);outline-offset:0}
.field [aria-invalid="true"]{border-color:var(--err)}
.field__hint{display:block;color:var(--muted);margin-top:4px}
.field__error{display:block;color:var(--err);font-weight:600;margin-top:4px}
.notice{padding:14px 18px;border-radius:var(--r);margin-bottom:20px;border-left:5px solid}
.notice ul{margin:6px 0 0;padding-left:20px}
.notice--ok{background:#e6f0e7;border-color:var(--ok);color:#1f4a27}
.notice--error{background:#f7e6e4;border-color:var(--err);color:#6c201c}

/* ================= Footer ================= */
.ft{position:relative;overflow:hidden;isolation:isolate;color:#c9bdb2;font-size:.98rem;padding-top:56px;
  background:radial-gradient(90% 120% at 100% 0%,#3b2a1e 0%,#241913 45%,#1a1310 100%)}
.ft::before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,var(--brass) 20%,var(--brass) 80%,transparent)}
.ft__glow{position:absolute;z-index:-1;left:-12%;bottom:-40%;width:55%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(195,154,62,.12),transparent 65%)}
.ft a{color:#efe8e2;text-decoration:none;transition:color .2s}
.ft a:hover{color:var(--brass)}

/* Contact strip */
.ft__strip{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:20px;padding:22px 26px;border:1px solid rgba(255,255,255,.1);border-radius:20px;
  background:rgba(255,255,255,.04);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.ft__strip-item{display:flex;align-items:center;gap:14px;min-width:0}
.ft__strip-item small{display:block;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#9d9087}
.ft__strip-item strong{display:block;font-size:1.15rem;color:#fff;overflow-wrap:anywhere}
.ft__strip-item:hover strong{color:var(--brass)}
.ft__strip-ico{flex:0 0 50px;display:grid;place-items:center;width:50px;height:50px;border-radius:14px;background:rgba(195,154,62,.15);color:var(--brass)}
.ft .ft__strip-btn{display:inline-flex;align-items:center;gap:10px;padding:15px 28px;border-radius:999px;background:var(--brass);color:var(--brown-deep);font-weight:800;white-space:nowrap;transition:background .2s,transform .2s}
.ft .ft__strip-btn:hover{background:#d4ad54;color:var(--brown-deep);transform:translateY(-2px)}

/* Columns */
.ft__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1.1fr) minmax(0,.8fr) minmax(0,1.15fr);gap:48px;padding-top:64px;padding-bottom:56px}
.ft__logo{display:inline-grid;place-items:center;width:112px;height:112px;border-radius:50%;background:#fff;overflow:hidden;margin-bottom:22px;
  box-shadow:0 0 0 4px rgba(195,154,62,.35),0 16px 34px rgba(0,0,0,.35)}
.ft__logo img{width:88%;height:88%;object-fit:contain}
.ft__logo--text::after{content:"UPS";font-family:var(--head);font-weight:700;font-size:2rem;color:var(--brown)}
.ft__about{margin:0 0 20px;line-height:1.7;max-width:40ch}
.ft__licences{list-style:none;margin:0 0 24px;padding:0;display:grid;gap:8px}
.ft__licences li{display:inline-flex;align-items:center;gap:9px;width:fit-content;max-width:100%;padding:7px 14px 7px 10px;border-radius:10px;
  background:rgba(195,154,62,.1);border:1px solid rgba(195,154,62,.3);color:#e6c77f;font-weight:700;font-size:.9rem}
.ft__licences svg{flex:0 0 auto;color:var(--brass)}
.ft .social{gap:10px}
.ft .social a{width:40px;height:40px;border:1px solid rgba(255,255,255,.18);color:#efe8e2;transition:background .2s,border-color .2s,color .2s,transform .2s}
.ft .social a:hover{background:var(--brass);border-color:var(--brass);color:var(--brown-deep);transform:translateY(-3px)}

.ft__title{position:relative;font-family:var(--body);font-size:.88rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:#fff;margin:0 0 24px;padding-bottom:14px}
.ft__title::after{content:"";position:absolute;left:0;bottom:0;width:34px;height:2px;background:var(--brass)}
.ft__links{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.ft__links a{display:inline-flex;align-items:center;gap:0;color:#d8cec5}
.ft__arrow{width:0;height:12px;opacity:0;color:var(--brass);transition:width .2s,opacity .2s,margin .2s}
.ft__links a:hover .ft__arrow{width:12px;opacity:1;margin-right:6px}
.ft__info{list-style:none;margin:0;padding:0;display:grid;gap:20px}
.ft__info li{display:flex;gap:14px}
.ft__info-ico{flex:0 0 38px;display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:rgba(255,255,255,.06);color:var(--brass)}
.ft__info strong{display:block;color:#fff;font-size:.95rem;margin-bottom:3px}
.ft__info a{display:block;color:#d8cec5;line-height:1.6}

/* Bottom bar */
.ft__bottom{border-top:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.18)}
.ft__bottom-inner{display:flex;align-items:center;gap:24px;padding-top:20px;padding-bottom:20px;font-size:.9rem}
.ft__bottom-inner p{margin:0;color:#9d9087}
.ft__legal{list-style:none;display:flex;gap:22px;margin:0 0 0 auto;padding:0}
.ft__legal a{color:#bfb3a8}
.ft .ft__top{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--brass);color:var(--brown-deep);transition:transform .2s}
.ft .ft__top:hover{color:var(--brown-deep);transform:translateY(-3px)}

@media (max-width:1100px){
  .ft__grid{grid-template-columns:1fr 1fr;gap:44px 40px}
  .ft__strip{grid-template-columns:1fr 1fr}
  .ft__strip-btn{grid-column:1/-1;justify-content:center}
}
@media (max-width:640px){
  .ft{padding-top:40px}
  .ft__strip{grid-template-columns:1fr;padding:18px;gap:16px;border-radius:16px}
  .ft__strip-item strong{font-size:1.02rem}
  .ft__strip-btn{width:100%}
  .ft__grid{grid-template-columns:1fr 1fr;gap:36px 20px;padding-top:44px;padding-bottom:40px}
  .ft__brand,.ft__contact{grid-column:1/-1}
  .ft__brand{text-align:center;display:flex;flex-direction:column;align-items:center}
  .ft__about{max-width:none}
  .ft__licences{justify-items:center}
  .ft__links{gap:11px}
  .ft__links a{font-size:.95rem}
  .ft__bottom-inner{flex-direction:column;text-align:center;gap:12px;padding-bottom:26px}
  .ft__legal{margin:0}
  .ft__top{order:-1}
}
@media (prefers-reduced-motion:reduce){.ft *{transition:none!important}}

/* Responsive */
@media (max-width:1100px){
}
@media (max-width:900px){
  .split,.service-layout,.form-layout{grid-template-columns:1fr}
  .product-grid{grid-template-columns:1fr 1fr}
  .sidebar{position:static}
  .section{padding:56px 0}
}
@media (max-width:600px){
  .product-grid,.form__grid{grid-template-columns:1fr}

}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important}

}

/* CMS rich text */
.cms h2{font-size:1.9rem;margin-top:1.3em}
.cms h3{font-size:1.45rem;margin-top:1.2em}
.cms ul,.cms ol{padding-left:1.3em}
.cms li{margin:.3em 0}
.cms img{border-radius:var(--r);margin:1em 0}
.cms blockquote{margin:1.2em 0;padding-left:18px;border-left:3px solid var(--brass);font-size:1.1rem}
.cms table{border-collapse:collapse;width:100%;margin:1em 0}
.cms th,.cms td{border:1px solid var(--line);padding:8px 10px;text-align:left}

.product__price{font-family:var(--head);font-size:1.3rem;font-weight:700;color:var(--brass-dark);margin-bottom:.3em}
.map iframe{display:block;width:100%;height:420px;border:0}
