:root{
  --v6-navy:#061a33;--v6-navy2:#0b315b;--v6-gold:#c8a34d;--v6-gold2:#f0d99b;
  --v6-ink:#142033;--v6-muted:#6d7686;--v6-glass:rgba(255,255,255,.13);
  --v6-line:rgba(8,31,58,.10);--v6-shadow:0 30px 90px rgba(4,24,46,.16);
}
html{scroll-padding-top:100px}
body{background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);text-rendering:optimizeLegibility}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:
radial-gradient(circle at 12% 15%,rgba(200,163,77,.08),transparent 25%),
radial-gradient(circle at 90% 55%,rgba(11,49,91,.07),transparent 28%)}
::selection{background:var(--v6-gold);color:white}
.v6-progress{position:fixed;top:0;right:0;height:3px;width:0;background:linear-gradient(90deg,var(--v6-gold),var(--v6-gold2));z-index:3000;box-shadow:0 0 18px rgba(200,163,77,.65)}
.v6-loader{position:fixed;inset:0;z-index:5000;display:grid;place-items:center;background:var(--v6-navy);transition:opacity .6s,visibility .6s}
.v6-loader.hide{opacity:0;visibility:hidden}.v6-loader-inner{text-align:center;color:white}.v6-loader-mark{width:74px;height:74px;border-radius:24px;display:grid;place-items:center;margin:auto;background:linear-gradient(145deg,var(--v6-gold),#9c7731);font-size:2rem;animation:v6Pulse 1.3s infinite}.v6-loader p{margin-top:18px;font-weight:700;letter-spacing:.04em}@keyframes v6Pulse{50%{transform:scale(1.08);box-shadow:0 0 0 18px rgba(200,163,77,.08)}}
.header{transition:.35s}.header.v6-scrolled{box-shadow:0 12px 40px rgba(5,25,48,.10);background:rgba(255,255,255,.92)!important}.navbar{transition:.35s}.header.v6-scrolled .navbar{height:76px}
.brand-mark{position:relative;overflow:hidden}.brand-mark::after{content:"";position:absolute;inset:-50%;background:linear-gradient(115deg,transparent 35%,rgba(255,255,255,.35),transparent 65%);transform:translateX(-100%);animation:v6Shine 4.5s infinite}@keyframes v6Shine{55%,100%{transform:translateX(100%)}}
.nav-links a,.nav a{transition:.25s}.nav-links a:hover,.nav a:hover{color:var(--v6-gold)}
.hero{overflow:hidden;background-attachment:fixed}.hero::after{content:"";position:absolute;inset:0;z-index:-1;background:
radial-gradient(circle at 20% 35%,rgba(200,163,77,.18),transparent 30%),
linear-gradient(180deg,transparent 78%,rgba(6,26,51,.35))}
.hero-content,.hero>.container{position:relative;z-index:2}.hero-content::before{content:"";position:absolute;width:290px;height:290px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:-115px;top:25px;animation:v6Float 7s ease-in-out infinite}.hero-content::after{content:"";position:absolute;width:160px;height:160px;border:1px solid rgba(200,163,77,.24);border-radius:36px;left:-90px;bottom:55px;transform:rotate(22deg);animation:v6Float 8s ease-in-out infinite reverse}@keyframes v6Float{50%{transform:translateY(-18px) rotate(8deg)}}
.hero h1{text-shadow:0 12px 35px rgba(0,0,0,.25)}.hero .kicker{padding:9px 17px;border:1px solid rgba(255,255,255,.19);border-radius:999px;background:rgba(255,255,255,.08);backdrop-filter:blur(10px)}
.btn{position:relative;overflow:hidden;isolation:isolate}.btn::after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 25%,rgba(255,255,255,.28),transparent 75%);transform:translateX(-115%);transition:.55s;z-index:-1}.btn:hover::after{transform:translateX(115%)}.btn:hover{transform:translateY(-3px)}
.stats{position:relative}.stats::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(200,163,77,.5),transparent 40%,rgba(11,49,91,.28));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.stat{transition:.35s}.stat:hover{background:linear-gradient(180deg,#fff,#fbf7eb);transform:translateY(-6px)}.stat i{transition:.35s}.stat:hover i{transform:scale(1.18) rotate(-6deg)}
.section{position:relative}.section .title{letter-spacing:-.02em}.light{background:linear-gradient(180deg,#f8fafd,#f2f5f9)}
.about-img .main,.about-img .small,.grid-2 img,.chair img,.message-photo{transition:.65s cubic-bezier(.2,.8,.2,1)}.about-img:hover .main{transform:translateY(-8px) scale(1.015)}.about-img:hover .small{transform:translate(-8px,-8px) rotate(-1deg)}
.about-img::before{content:"";position:absolute;width:130px;height:130px;border-radius:35px;background:rgba(200,163,77,.12);right:-28px;top:-28px;z-index:-1;transform:rotate(15deg)}
.card,.service,.news-card,.timeline-item{position:relative;overflow:hidden}.card::before,.service::before,.news-card::before{content:"";position:absolute;width:120px;height:120px;border-radius:50%;background:rgba(200,163,77,.08);left:-55px;bottom:-60px;transition:.4s}.card:hover::before,.service:hover::before,.news-card:hover::before{transform:scale(1.6)}
.card:hover i,.service:hover i{animation:v6Icon .65s ease}@keyframes v6Icon{35%{transform:translateY(-7px) rotate(-8deg)}70%{transform:translateY(2px) rotate(4deg)}}
.chair{background:linear-gradient(135deg,var(--v6-navy),var(--v6-navy2));overflow:hidden}.chair::before{content:"";position:absolute;width:560px;height:560px;border-radius:50%;background:rgba(200,163,77,.07);right:-240px;top:-230px}.chair::after{content:"“";position:absolute;left:6%;bottom:-120px;font-size:28rem;line-height:1;color:rgba(255,255,255,.035);font-family:serif}.chair-grid{position:relative;z-index:2}.chair img{filter:saturate(.92) contrast(1.04)}.chair img:hover{transform:scale(1.025)}
.news-card img{transition:.6s}.news-card:hover img{transform:scale(1.06)}
.gallery-item{transform:translateZ(0)}.gallery-item:nth-child(3n+1){animation-delay:.05s}.gallery-item:nth-child(3n+2){animation-delay:.12s}.gallery-item:nth-child(3n){animation-delay:.2s}.gallery-overlay{backdrop-filter:blur(2px)}
.timeline-item{transition:.35s}.timeline-item:hover{transform:translateX(-8px);box-shadow:var(--v6-shadow);border-right-width:8px}.timeline-item strong{transition:.3s}.timeline-item:hover strong{color:var(--v6-gold)}
.cta{position:relative;overflow:hidden;box-shadow:var(--v6-shadow)}.cta::before{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(255,255,255,.15);border-radius:50%;left:-110px;top:-150px;animation:v6Float 7s infinite}.cta>*{position:relative;z-index:2}
footer{position:relative;overflow:hidden}footer::before{content:"";position:absolute;right:-160px;top:-230px;width:520px;height:520px;border-radius:50%;background:rgba(200,163,77,.045)}
.v6-backtop{position:fixed;left:22px;bottom:22px;width:50px;height:50px;border:0;border-radius:50%;display:grid;place-items:center;background:linear-gradient(145deg,var(--v6-gold),#9d7832);color:#fff;z-index:1500;box-shadow:0 14px 35px rgba(0,0,0,.23);opacity:0;visibility:hidden;transform:translateY(15px);transition:.3s;cursor:pointer}.v6-backtop.show{opacity:1;visibility:visible;transform:none}.v6-backtop:hover{transform:translateY(-4px) rotate(-8deg)}
.v6-cursor{position:fixed;width:22px;height:22px;border:1px solid rgba(200,163,77,.8);border-radius:50%;pointer-events:none;z-index:4000;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s;display:none}.v6-cursor.active{width:42px;height:42px;background:rgba(200,163,77,.1)}
.reveal{transition:opacity .85s ease,transform .85s cubic-bezier(.2,.8,.2,1)!important}.reveal[data-v6="left"]{transform:translateX(45px)}.reveal[data-v6="right"]{transform:translateX(-45px)}.reveal.show{transform:none!important}
@media (hover:hover) and (pointer:fine){.v6-cursor{display:block}}
@media(max-width:1000px){.hero{background-attachment:scroll}.hero-content::before,.hero-content::after{opacity:.45}.header.v6-scrolled .navbar{height:72px}}
@media(max-width:650px){.hero{min-height:680px}.hero-content{padding:70px 0}.stats-wrap{margin-top:-32px}.stat{padding:23px 10px}.stat strong{font-size:1.55rem}.about-img::before{display:none}.v6-cursor{display:none!important}.v6-backtop{width:46px;height:46px;left:14px;bottom:14px}.section .title{font-size:2rem}}
@media(prefers-reduced-motion:reduce){.v6-loader-mark,.brand-mark::after,.hero-content::before,.hero-content::after,.cta::before{animation:none!important}}


/* ===== Unified Header & Menu Fix ===== */
.navbar{
  position:relative;
}
.menu{
  display:none !important;
  width:46px;
  height:46px;
  padding:0;
  border:1px solid rgba(7,31,59,.12);
  border-radius:14px;
  background:#fff;
  color:var(--v6-navy);
  align-items:center;
  justify-content:center;
  font-size:1.2rem;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(7,31,59,.08);
  transition:.25s;
}
.menu:hover{
  color:var(--v6-gold);
  border-color:rgba(200,163,77,.45);
  transform:translateY(-2px);
}
.menu i{
  pointer-events:none;
}
.nav,
.nav-links{
  align-items:center;
}
.v6-cursor{
  display:none !important;
}
@media(max-width:1000px){
  .navbar{
    height:76px !important;
  }
  .menu{
    display:inline-flex !important;
    flex:0 0 46px;
  }
  .nav,
  .nav-links{
    display:none !important;
    position:absolute;
    top:calc(100% + 10px);
    right:18px;
    left:18px;
    z-index:1200;
    padding:18px;
    border-radius:20px;
    background:rgba(255,255,255,.98);
    border:1px solid rgba(7,31,59,.10);
    box-shadow:0 24px 60px rgba(7,31,59,.16);
    backdrop-filter:blur(16px);
    flex-direction:column;
    align-items:stretch;
    gap:6px;
  }
  .nav.open,
  .nav-links.open{
    display:flex !important;
    animation:v6MenuIn .25s ease both;
  }
  .nav a,
  .nav-links a{
    display:block;
    width:100%;
    padding:11px 14px;
    border-radius:12px;
    color:var(--v6-ink);
  }
  .nav a:hover,
  .nav-links a:hover{
    background:#f6f8fb;
    color:var(--v6-gold);
  }
  .navbar > .btn{
    display:none !important;
  }
}
@keyframes v6MenuIn{
  from{opacity:0;transform:translateY(-8px)}
  to{opacity:1;transform:none}
}
@media(min-width:1001px){
  .menu{
    display:none !important;
  }
  .nav,
  .nav-links{
    display:flex !important;
  }
}


/* ===== Branded Loader ===== */
.v6-loader{
  background:
    radial-gradient(circle at center,rgba(200,163,77,.10),transparent 32%),
    linear-gradient(145deg,#061a33,#0b315b);
}
.v6-loader-inner{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:16px;
}
.v6-loader-logo-wrap{
  position:relative;
  width:176px;
  height:176px;
  display:grid;
  place-items:center;
}
.v6-loader-logo-wrap::before,
.v6-loader-logo-wrap::after{
  content:"";
  position:absolute;
  border-radius:50%;
}
.v6-loader-logo-wrap::before{
  inset:0;
  border:1px solid rgba(240,217,155,.32);
  animation:v6Ring 2s linear infinite;
}
.v6-loader-logo-wrap::after{
  inset:12px;
  border:1px dashed rgba(240,217,155,.22);
  animation:v6RingReverse 3s linear infinite;
}
.v6-loader-logo{
  width:138px;
  height:138px;
  object-fit:contain;
  filter:drop-shadow(0 18px 35px rgba(0,0,0,.28));
  animation:v6LogoFloat 1.8s ease-in-out infinite;
  position:relative;
  z-index:2;
}
.v6-loader-title{
  color:#fff;
  font-weight:800;
  font-size:1.05rem;
  margin:0;
}
.v6-loader-subtitle{
  color:var(--v6-gold2);
  font-size:.78rem;
  letter-spacing:.07em;
}
.v6-loader-line{
  width:150px;
  height:3px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.10);
  position:relative;
}
.v6-loader-line::after{
  content:"";
  position:absolute;
  inset:0;
  width:45%;
  background:linear-gradient(90deg,transparent,var(--v6-gold2),transparent);
  animation:v6LoadLine 1.2s ease-in-out infinite;
}
@keyframes v6Ring{to{transform:rotate(360deg)}}
@keyframes v6RingReverse{to{transform:rotate(-360deg)}}
@keyframes v6LogoFloat{50%{transform:translateY(-7px) scale(1.02)}}
@keyframes v6LoadLine{from{transform:translateX(-130%)}to{transform:translateX(280%)}}

/* ===== Contact Section Final Polish ===== */
.contact-section{
  padding-top:120px;
  padding-bottom:120px;
}
.contact-section .container > .reveal:first-child{
  max-width:780px;
  margin-inline:auto;
  text-align:center;
}
.contact-section .container > .reveal:first-child .kicker{
  justify-content:center;
}
.contact-shell{
  grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);
  border-radius:38px;
  border:1px solid rgba(7,31,59,.07);
  box-shadow:0 34px 100px rgba(7,31,59,.14);
}
.contact-panel{
  padding:50px;
}
.contact-panel h3{
  font-size:1.8rem;
  margin-bottom:6px;
}
.contact-panel > p{
  margin-bottom:30px;
}
.contact-info{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:14px;
}
.contact-info-item{
  min-height:130px;
  justify-content:flex-start;
  align-items:flex-start;
  text-align:right;
  padding:20px;
  background:linear-gradient(145deg,#fbfcfe,#f4f7fb);
}
.contact-info-item i{
  margin-bottom:12px;
}
.contact-info-item span{
  width:100%;
  overflow-wrap:anywhere;
  word-break:break-word;
  line-height:1.55;
}
.form-grid{
  gap:18px;
}
.form-group input,
.form-group textarea,
.form-group select{
  min-height:54px;
  border-radius:17px;
  padding-inline:16px;
}
.form-group textarea{
  min-height:150px;
}
.contact-submit{
  font-size:1rem;
  min-height:58px;
  box-shadow:0 16px 36px rgba(199,162,74,.28);
}
.contact-visual{
  min-height:720px;
}
.contact-visual iframe{
  min-height:720px;
}
.contact-map-card{
  right:28px;
  left:28px;
  bottom:28px;
}
.contact-map-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:22px;
  pointer-events:none;
  border:1px solid rgba(240,217,155,.16);
}
.contact-map-card .map-icon{
  box-shadow:0 12px 28px rgba(199,162,74,.28);
}
@media(max-width:980px){
  .contact-shell{grid-template-columns:1fr}
  .contact-panel{padding:38px}
  .contact-visual,.contact-visual iframe{min-height:460px}
}
@media(max-width:680px){
  .v6-loader-logo-wrap{width:142px;height:142px}
  .v6-loader-logo{width:112px;height:112px}
  .contact-section{padding-top:85px;padding-bottom:85px}
  .contact-panel{padding:28px 20px}
  .contact-info{grid-template-columns:1fr !important}
  .contact-info-item{min-height:auto}
  .contact-visual,.contact-visual iframe{min-height:390px}
  .contact-map-card{right:14px;left:14px;bottom:14px}
}


/* ===== Form reliability & mobile comfort ===== */
.form-group input,
.form-group select,
.form-group textarea{
  font-size:16px !important;
  -webkit-text-size-adjust:100%;
}
.contact-submit{touch-action:manipulation}
@media(max-width:680px){
  .contact-panel{padding:24px 18px !important}
  .form-grid{gap:14px !important}
  .form-group input,.form-group select,.form-group textarea{min-height:52px}
}
/* Calmer animation: avoid dizziness on long pages */
.reveal{transition-duration:.55s !important;transform:translateY(18px) !important}
.reveal.show{transform:none !important}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none !important;transition:none !important;scroll-behavior:auto !important}
}
