
:root{
  --primary:#123D34;
  --secondary:#1F5A48;
  --bg:#FBF8F1;
  --paper:#FFFDF8;
  --soft:#F1E7D3;
  --soft-2:#F7EFE1;
  --gold:#B68A2F;
  --text:#2A2A25;
  --muted:#6E6658;
  --line:#E3D6BD;
  --beige-text:#F1E7D3;
  --beige-bright:#FFFDF8;
  --shadow:0 24px 72px rgba(62,47,24,.12);
  --radius:26px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at top left,rgba(241,231,211,.88),transparent 34%),linear-gradient(180deg,var(--bg) 0%,#F2E7D5 52%,var(--bg) 100%);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.65;font-size:16px;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.skip-link{position:absolute;top:-100px;left:12px;background:var(--paper);color:var(--primary);padding:10px 14px;border-radius:12px;z-index:100}
.skip-link:focus{top:12px}
a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px;border-radius:10px}
.site-header{position:sticky;top:0;z-index:50;background:var(--primary);border-bottom:1px solid rgba(241,231,211,.52);box-shadow:0 14px 30px rgba(18,61,52,.18)}
.nav{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand-zone{display:flex;align-items:center;gap:18px;min-width:max-content}
.brand{display:flex;align-items:center;gap:14px;min-width:max-content}
.brand-mark{width:138px;height:58px;object-fit:contain;object-position:center;border-radius:16px;background:var(--paper);padding:4px 8px;box-shadow:0 10px 18px rgba(0,0,0,.16)}
.brand-text strong{display:block;color:var(--beige-text);font-weight:900;letter-spacing:.03em}
.brand-text small{display:block;color:var(--beige-bright);font-size:10px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.nav-links{display:flex;align-items:center;gap:26px;color:var(--beige-text);font-weight:850;font-size:15px;letter-spacing:.02em}
.nav-links a{position:relative}
.nav-links a:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;background:var(--beige-text);transform:scaleX(0);transition:.22s ease;transform-origin:left}
.nav-links a:hover:after{transform:scaleX(1)}
.hidden-runes{font-weight:900;font-size:15px;color:var(--primary);user-select:text;line-height:1;display:inline-block;min-width:42px;text-align:left}
section{padding:82px 0;scroll-margin-top:104px}
.hero{padding:78px 0 68px}
.hero-grid{display:grid;grid-template-columns:1.05fr .72fr;gap:56px;align-items:center}
.kicker{color:var(--gold);font-size:12px;text-transform:uppercase;letter-spacing:.18em;font-weight:950;margin:0 0 12px}
.hero-kicker{max-width:880px;line-height:1.8}
.hero h1{font-size:clamp(42px,5.4vw,70px);line-height:1.02;letter-spacing:-.046em;color:var(--primary);margin:0 0 20px}
.hero-subtitle{font-size:clamp(18px,2vw,23px);color:var(--muted);margin:0;max-width:780px}
.hero-card{background:linear-gradient(145deg,rgba(255,253,248,.94),rgba(241,231,211,.76));border:1px solid var(--line);box-shadow:var(--shadow);border-radius:38px;padding:26px}
.logo-display{background:var(--paper);border:1px solid var(--line);border-radius:28px;padding:26px}
.logo-display img{width:100%;height:auto}
.section-head{margin-bottom:32px}
.section-head h2,.about-card h2,.contact-panel h2{font-size:clamp(32px,4vw,52px);line-height:1.08;letter-spacing:-.04em;color:var(--primary);margin:0}
.about-card{display:grid;grid-template-columns:.46fr 1.54fr;gap:34px;align-items:center;background:linear-gradient(135deg,rgba(255,253,248,.96),rgba(241,231,211,.72));border:1px solid var(--line);border-radius:var(--radius);padding:38px;box-shadow:0 18px 50px rgba(62,47,24,.09)}
.trust-symbol{display:grid;place-items:center}
.trust-symbol img{width:min(245px,100%);aspect-ratio:1/1;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(62,47,24,.14))}
.about-text{font-size:20px;color:#3E392F;margin:16px 0 0}
.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;align-items:stretch}
.service-card{position:relative;background:rgba(255,253,248,.9);border:1px solid var(--line);border-radius:24px;padding:24px 24px 26px;box-shadow:0 16px 42px rgba(62,47,24,.06);overflow:hidden;display:grid;grid-template-rows:88px 1fr;height:100%;min-height:360px}
.service-card:before{content:attr(data-num);position:absolute;right:22px;top:12px;font-size:54px;font-weight:950;color:rgba(182,138,47,.14);line-height:1;z-index:0}
.service-card h3{position:relative;z-index:1;margin:0;color:var(--primary);font-size:21px;line-height:1.23;padding-right:82px;align-self:start;max-width:100%;overflow-wrap:break-word;hyphens:auto}
.service-card p{margin:0;color:#554D3F;align-self:start}
.contact-panel{display:grid;grid-template-columns:.9fr 1fr;gap:36px;align-items:start;background:linear-gradient(135deg,rgba(255,253,248,.96),rgba(241,231,211,.72));border:1px solid var(--line);border-radius:32px;padding:42px;box-shadow:var(--shadow)}
.contact-intro p{font-size:18px;color:var(--muted);margin:16px 0 0;max-width:58ch}
.contact-list{display:grid;gap:14px}
.contact-link{display:grid;grid-template-columns:62px 1fr;gap:16px;align-items:center;background:rgba(255,253,248,.92);border:1px solid var(--line);border-radius:24px;padding:18px 20px;box-shadow:0 16px 40px rgba(62,47,24,.06);transition:.2s ease}
.contact-link:hover{transform:translateY(-3px);border-color:rgba(182,138,47,.48)}
.contact-icon{width:54px;height:54px;border-radius:18px;background:linear-gradient(145deg,#fffdf8,#f1e7d3);border:1px solid rgba(182,138,47,.25);display:grid;place-items:center}
.contact-icon img{width:29px;height:29px}
.contact-link small{display:block;color:var(--gold);font-size:12px;text-transform:uppercase;letter-spacing:.15em;font-weight:950;margin-bottom:2px}
.contact-link b{display:block;color:var(--primary);font-size:17px;word-break:break-word}
.site-footer{border-top:1px solid var(--line);padding:28px 0 34px;color:var(--muted);background:rgba(255,253,248,.52)}
.footer-content{display:grid;gap:10px}
.footer-content p{margin:0;max-width:1050px}
.footer-content a{color:var(--primary);font-weight:850;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
@media (max-width:980px){
  .nav{flex-wrap:wrap;justify-content:center;padding:12px 0}
  .nav-links{order:3;width:100%;justify-content:center;flex-wrap:wrap}
  .hero-grid,.about-card,.contact-panel{grid-template-columns:1fr}
  .hero-card{max-width:620px;margin:auto}
  .services-grid{grid-template-columns:1fr}
  .trust-symbol img{width:190px}
}
@media (max-width:640px){
  .container{width:min(100% - 26px,var(--max))}
  section{padding:62px 0}
  .nav{gap:14px}
  .brand-zone{width:100%;justify-content:center}
  .brand{justify-content:center}
  .brand-mark{width:132px;height:56px}
  .hidden-runes{position:absolute;left:13px}
  .nav-links{gap:18px;font-size:14px}
  .hero h1{font-size:40px}
  .hero-kicker{font-size:11px;letter-spacing:.12em}
  .about-card,.contact-panel{padding:24px;border-radius:24px}
  .service-card{grid-template-rows:auto 1fr;min-height:auto}
  .service-card h3{font-size:20px;padding-right:64px;margin-bottom:14px}
  .contact-link{grid-template-columns:1fr}
  .contact-icon{margin-bottom:4px}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .contact-link,.nav-links a:after{transition:none}
}
