:root{
  --bg:#09090a;
  --bg2:#111214;
  --panel:#151619;
  --soft:#1b1c20;
  --gold:#d6a847;
  --gold2:#f2d181;
  --text:#f5f3ef;
  --muted:#b2aea5;
  --line:rgba(214,168,71,.24);
  --white:#fff;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--text);
  background:var(--bg);
  line-height:1.6;
}
a{color:inherit}
img{max-width:100%;display:block}
.wrap{width:min(var(--max),calc(100% - 42px));margin:0 auto}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:10px 14px;z-index:99}
.skip:focus{left:10px;top:10px}
.site-header{
  position:sticky;top:0;z-index:50;
  background:rgba(9,9,10,.88);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.07);
}
.nav{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand img{width:290px;height:auto}
.site-nav{display:flex;align-items:center;gap:27px}
.site-nav a{text-decoration:none;color:#dedbd4;font-size:14px;font-weight:650}
.site-nav a:hover{color:var(--gold2)}
.nav-cta{border:1px solid var(--line);padding:10px 14px;border-radius:999px}
.nav-toggle{display:none;background:transparent;color:#fff;border:1px solid #3d3d41;border-radius:8px;padding:8px 11px}
.hero{
  min-height:760px;
  display:flex;align-items:center;
  position:relative;overflow:hidden;
  background:
    radial-gradient(circle at 80% 20%,rgba(214,168,71,.12),transparent 32%),
    linear-gradient(135deg,#0a0a0b 0%,#111216 58%,#080809 100%);
}
.hero:after{
  content:"";position:absolute;inset:auto -15% -260px auto;width:700px;height:700px;
  border:1px solid rgba(214,168,71,.15);border-radius:50%;
}
.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:center;padding:92px 0}
.kicker{
  color:var(--gold2);font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin:0 0 18px;
}
h1,h2,h3{margin-top:0}
h1{
  font-family:Georgia,"Times New Roman",serif;
  font-size:clamp(52px,6.5vw,90px);
  line-height:.98;letter-spacing:-.045em;margin-bottom:26px;font-weight:500;
}
h1 span{
  background:linear-gradient(90deg,var(--gold),var(--gold2),#b57a18);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.lead{font-size:19px;color:#c4c0b8;max-width:690px;margin:0 0 32px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.button{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:50px;padding:0 20px;border-radius:8px;
  font-weight:800;font-size:14px;text-decoration:none;border:1px solid transparent;cursor:pointer;
}
.button.gold{background:linear-gradient(135deg,#e1b65b,#b47d1c);color:#13100a}
.button.ghost{border-color:#44454a;background:rgba(255,255,255,.03);color:#f4f2ee}
.button.full{width:100%}
.proof{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}
.proof span{color:#aaa69e;font-size:13px}
.proof span:before{content:"✓";color:var(--gold);margin-right:7px}
.hero-art{position:relative}
.hero-art img{
  border:1px solid rgba(214,168,71,.34);border-radius:24px;
  box-shadow:0 34px 90px rgba(0,0,0,.55);
}
.hero-art:before{
  content:"";position:absolute;inset:-15px 28px 30px -15px;border:1px solid rgba(214,168,71,.18);border-radius:24px;z-index:-1;
}
.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#0d0e10}
.strip-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.strip-grid div{padding:26px 30px;border-right:1px solid rgba(255,255,255,.07)}
.strip-grid div:last-child{border-right:none}
.strip strong{display:block;color:#f3e1b4;font-size:14px;margin-bottom:4px}
.strip span{color:#99958e;font-size:13px}
.section{padding:105px 0}
.section-heading{max-width:760px;margin-bottom:46px}
.section-heading h2,.about-grid h2,.area-grid h2,.contact-grid h2{
  font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5vw,60px);line-height:1.04;letter-spacing:-.035em;font-weight:500;margin-bottom:18px;
}
.section-heading>p:last-child,.area-copy,.contact-grid>div>p{color:var(--muted);font-size:18px}
.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.card{
  position:relative;background:linear-gradient(145deg,#151619,#101113);
  border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:34px;
  min-height:235px;
}
.card:after{content:"";position:absolute;left:34px;right:34px;bottom:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold),transparent);opacity:.5}
.number{font-family:Georgia,serif;color:var(--gold);font-size:15px}
.card h3{font-size:23px;margin:18px 0 12px}
.card p{color:#aaa69e;margin:0}
.dark-section{background:#111214;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start}
.about-copy{color:#c2beb6;font-size:18px}
.signature{margin-top:30px;padding-top:23px;border-top:1px solid var(--line)}
.signature strong,.signature span{display:block}
.signature strong{color:#f1d080}
.signature span{color:#88847e;font-size:14px;margin-top:3px}
.area-grid{display:grid;grid-template-columns:1fr .75fr;gap:70px;align-items:center}
.area-panel{
  background:linear-gradient(145deg,#17181b,#0d0e10);
  border:1px solid var(--line);border-radius:18px;padding:36px;
  box-shadow:0 20px 65px rgba(0,0,0,.25);
}
.area-panel span,.area-panel strong{display:block}
.area-panel .mini{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#a9a59d;margin-bottom:12px}
.area-panel strong{font-family:Georgia,serif;color:#f0cf83;font-size:36px;margin-bottom:4px}
.area-panel>span:last-child{color:#aaa69e}
.contact-section{background:
  radial-gradient(circle at 20% 60%,rgba(214,168,71,.09),transparent 28%),
  #0d0e10;
  border-top:1px solid var(--line);
}
.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}
.contact-links{margin-top:35px;border-top:1px solid var(--line)}
.contact-links a{display:flex;justify-content:space-between;gap:20px;text-decoration:none;padding:18px 0;border-bottom:1px solid var(--line)}
.contact-links span{color:#8f8b84}
.contact-links strong{color:#f0d28c}
.contact-form{
  background:#151619;border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:30px;
  box-shadow:0 25px 70px rgba(0,0,0,.25);
}
.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:block;margin-bottom:15px}
label span{display:block;color:#cbc7c0;font-size:13px;font-weight:700;margin-bottom:7px}
input,select,textarea{
  width:100%;background:#0e0f11;border:1px solid #34353a;color:#f8f6f2;
  border-radius:8px;padding:13px 14px;font:inherit;outline:none;
}
input:focus,select:focus,textarea:focus{border-color:#b98a30;box-shadow:0 0 0 3px rgba(214,168,71,.1)}
textarea{resize:vertical}
.form-note{font-size:12px;color:#85817b;margin:12px 2px 0}
footer{background:#070708;border-top:1px solid rgba(255,255,255,.07);padding:45px 0}
.footer-grid{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:end}
.footer-brand img{width:245px;margin-bottom:10px}
.footer-brand p{color:#8f8b84;margin:0;font-size:13px}
.footer-info{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end}
.footer-info a{color:#b7b3ab;text-decoration:none;font-size:13px}
.copyright{grid-column:1/-1;color:#66635e;font-size:12px;padding-top:18px;border-top:1px solid rgba(255,255,255,.05)}
@media (max-width:920px){
  .brand img{width:225px}
  .nav-toggle{display:block}
  .site-nav{
    display:none;position:absolute;left:21px;right:21px;top:72px;background:#121316;border:1px solid #303136;border-radius:12px;
    padding:18px;flex-direction:column;align-items:stretch;gap:4px;box-shadow:0 20px 50px rgba(0,0,0,.45)
  }
  .site-nav.open{display:flex}
  .site-nav a{padding:10px}
  .hero{min-height:auto}
  .hero-grid,.about-grid,.area-grid,.contact-grid{grid-template-columns:1fr;gap:45px}
  .hero-grid{padding:70px 0}
  .hero-art{max-width:720px}
  .strip-grid{grid-template-columns:1fr}
  .strip-grid div{border-right:none;border-bottom:1px solid rgba(255,255,255,.07)}
  .cards{grid-template-columns:1fr}
}
@media (max-width:620px){
  .wrap{width:min(var(--max),calc(100% - 28px))}
  .brand img{width:190px}
  .hero-grid{padding:55px 0}
  h1{font-size:49px}
  .section{padding:78px 0}
  .field-grid{grid-template-columns:1fr;gap:0}
  .contact-form{padding:22px}
  .contact-links a{flex-direction:column;gap:2px}
  .footer-grid{grid-template-columns:1fr}
  .footer-info{justify-content:flex-start;flex-direction:column;gap:6px}
}


.credentials-section{
  background:
    radial-gradient(circle at 85% 10%,rgba(214,168,71,.08),transparent 28%),
    #0b0c0e;
  border-top:1px solid rgba(255,255,255,.05);
  border-bottom:1px solid rgba(255,255,255,.05);
}
.credential-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:16px;
  margin-bottom:24px;
}
.credential-card{
  background:linear-gradient(145deg,#17181b,#101113);
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:26px;
  min-height:220px;
}
.credential-label{
  display:inline-block;
  color:var(--gold2);
  font-size:11px;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
  margin-bottom:18px;
}
.credential-card h3{
  font-size:21px;
  line-height:1.2;
  margin-bottom:12px;
}
.credential-card p{
  color:#a9a59d;
  margin:0;
  font-size:14px;
}
.experience-panel{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  border:1px solid var(--line);
  border-radius:18px;
  overflow:hidden;
  margin:24px 0 42px;
  background:#111214;
}
.experience-panel>div{
  padding:28px 26px;
  border-right:1px solid var(--line);
}
.experience-panel>div:last-child{border-right:none}
.experience-number{
  display:block;
  font-family:Georgia,"Times New Roman",serif;
  font-size:44px;
  line-height:1;
  color:#f1ce7c;
  margin-bottom:8px;
}
.experience-label{
  display:block;
  color:#aaa69e;
  font-size:13px;
}
.expertise-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:18px;
}
.expertise-grid>div{
  background:#121315;
  border:1px solid rgba(255,255,255,.07);
  border-radius:16px;
  padding:28px;
}
.expertise-grid h3{
  color:#f2d58f;
  font-size:19px;
  margin-bottom:18px;
}
.check-list{
  list-style:none;
  padding:0;
  margin:0;
}
.check-list li{
  position:relative;
  padding:8px 0 8px 24px;
  color:#b4b0a8;
  border-bottom:1px solid rgba(255,255,255,.05);
  font-size:14px;
}
.check-list li:last-child{border-bottom:none}
.check-list li:before{
  content:"✓";
  position:absolute;
  left:0;
  color:var(--gold);
  font-weight:800;
}
.independence-notice{
  margin-top:28px;
  padding:24px 26px;
  border:1px solid rgba(214,168,71,.28);
  border-left:4px solid var(--gold);
  border-radius:12px;
  background:rgba(214,168,71,.045);
}
.independence-notice strong{
  display:block;
  color:#f1cf82;
  margin-bottom:7px;
}
.independence-notice p{
  color:#9f9b94;
  font-size:13px;
  margin:0;
}
@media (max-width:1000px){
  .credential-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:700px){
  .credential-grid,.experience-panel,.expertise-grid{grid-template-columns:1fr}
  .experience-panel>div{border-right:none;border-bottom:1px solid var(--line)}
  .experience-panel>div:last-child{border-bottom:none}
}


/* Compact homepage + menu */
.compact-nav{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.compact-nav .brand img{width:245px}
.menu{position:relative}
.menu summary{
  list-style:none;cursor:pointer;width:44px;height:44px;border:1px solid #35363a;border-radius:9px;
  display:flex;flex-direction:column;justify-content:center;gap:5px;padding:0 11px;background:#111214;
}
.menu summary::-webkit-details-marker{display:none}
.menu summary span{display:block;height:2px;background:#e8e4dc;border-radius:2px}
.menu nav{
  position:absolute;right:0;top:52px;min-width:210px;background:#121316;border:1px solid #303136;border-radius:12px;
  box-shadow:0 20px 55px rgba(0,0,0,.5);padding:9px;z-index:100;
}
.menu nav a{display:block;padding:11px 12px;text-decoration:none;color:#dedbd4;border-radius:7px;font-weight:650;font-size:14px}
.menu nav a:hover{background:#1b1c20;color:var(--gold2)}

.compact-hero{min-height:auto;padding:74px 0;background:
  radial-gradient(circle at 80% 20%,rgba(214,168,71,.1),transparent 30%),
  linear-gradient(135deg,#0a0a0b,#111216)}
.compact-hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:55px;align-items:center}
.compact-hero h1{font-size:clamp(48px,5.8vw,76px);margin-bottom:20px}
.compact-hero .lead{font-size:18px;max-width:650px}
.compact-card img{border-radius:18px;box-shadow:0 28px 70px rgba(0,0,0,.45);border:1px solid rgba(214,168,71,.28)}

.compact-section{padding:72px 0}
.compact-heading{max-width:700px;margin-bottom:30px}
.compact-heading h2,.compact-area h2,.compact-contact h2{
  font-family:Georgia,"Times New Roman",serif;font-size:clamp(32px,4.4vw,50px);line-height:1.05;font-weight:500;margin:0
}
.compact-services{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.compact-services article{
  background:#131416;border:1px solid rgba(255,255,255,.07);border-radius:14px;padding:22px;min-height:155px
}
.compact-services h3{font-size:18px;margin-bottom:9px}
.compact-services p{color:#aaa69e;font-size:14px;margin:0}
.text-link{display:inline-block;margin-top:24px;color:#efcf86;text-decoration:none;font-weight:700}

.compact-area{padding:54px 0;background:#111214;border-top:1px solid rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.06)}
.compact-area-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.compact-area p:last-child{color:#b2aea5;font-size:17px;margin:0}

.compact-contact{padding:64px 0}
.compact-contact-grid{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:center}
.contact-actions{display:flex;gap:10px;flex-wrap:wrap}

.compact-footer{display:flex;gap:18px;justify-content:space-between;flex-wrap:wrap;color:#77736d;font-size:12px}
.compact-footer a{color:#aaa69e;text-decoration:none}

.about-hero{padding:72px 0 42px;background:linear-gradient(135deg,#0a0a0b,#111216)}
.narrow{max-width:820px}
.about-hero h1{font-size:clamp(48px,6vw,74px);margin-bottom:18px}

@media(max-width:900px){
  .compact-hero-grid,.compact-area-grid,.compact-contact-grid{grid-template-columns:1fr}
  .compact-services{grid-template-columns:repeat(2,1fr)}
  .contact-actions{justify-content:flex-start}
}
@media(max-width:600px){
  .compact-nav .brand img{width:195px}
  .compact-services{grid-template-columns:1fr}
  .compact-hero{padding:52px 0}
  .compact-section{padding:58px 0}
  .compact-contact{padding:52px 0}
}
