:root{
  --alabaster:#F8F7F4;
  --mint:#DFF0EA;
  --rose:#F3DCE3;
  --lavender:#E2E0F0;
  --sand:#F0E6D8;
  --emerald:#0B5D4A;
  --cobalt:#1E3A8A;
  --terracotta:#C4552D;
  --graphite:#2D2A26;
  --body:#4A4640;
  --line:#D8D4CE;
  --metal:#B8B2AC;
  --dark:#1C1A17;
}

strong,p{color:inherit}
html,body{overflow-x:hidden}
body{
  background:var(--alabaster);
  color:var(--body);
  font-family:'Montserrat',sans-serif;
  font-size:16px;
  line-height:1.7;
}
h1,h2,h3,h4,.font-editorial{
  font-family:'Cormorant Garamond',serif;
  color:var(--graphite);
  font-weight:600;
  letter-spacing:-0.01em;
}
.font-mono{
  font-family:'Space Mono',monospace;
}
.text-emerald{color:var(--emerald)!important}
.text-terracotta{color:var(--terracotta)!important}
.bg-emerald{background-color:var(--emerald)!important;color:#fff}
.bg-dark{background-color:var(--dark)!important;color:#fff}

.liquid-mesh{
  position:fixed;
  inset:0;
  z-index:0;
  overflow:hidden;
  pointer-events:none;
}
.mesh-blob{
  position:absolute;
  border-radius:50%;
  filter:blur(80px);
  opacity:.55;
  animation:drift 26s ease-in-out infinite alternate;
}
.mesh-blob.b1{width:520px;height:520px;background:radial-gradient(circle at 30% 30%,var(--mint),transparent 70%);top:-80px;left:-100px}
.mesh-blob.b2{width:620px;height:620px;background:radial-gradient(circle at 60% 40%,var(--rose),transparent 70%);top:20%;right:-160px;animation-delay:-6s}
.mesh-blob.b3{width:480px;height:480px;background:radial-gradient(circle at 50% 50%,var(--lavender),transparent 70%);bottom:-120px;left:10%;animation-delay:-12s}
.mesh-blob.b4{width:380px;height:380px;background:radial-gradient(circle at 50% 50%,var(--sand),transparent 70%);top:55%;left:45%;animation-delay:-18s}
@keyframes drift{
  0%{transform:translate3d(0,0,0) scale(1)}
  50%{transform:translate3d(40px,-60px,0) scale(1.08)}
  100%{transform:translate3d(-30px,50px,0) scale(.96)}
}

.content-shell{
  position:relative;
  z-index:1;
  margin-left:280px;
  min-height:100vh;
}
.site-main{padding-bottom:40px}

.sidebar-dock{
  position:fixed;
  left:0;top:0;
  width:280px;
  height:100vh;
  z-index:1000;
  background:rgba(248,247,244,.85);
  backdrop-filter:blur(40px);
  border-right:1px solid rgba(11,93,74,.15);
  display:flex;
  flex-direction:column;
  transition:transform .4s ease;
}
.brand-lock{
  display:flex;
  align-items:center;
  gap:14px;
  padding:26px 24px 18px;
}
.brand-orb{
  flex:0 0 auto;
}
.brand-domain{
  font-family:'Cormorant Garamond',serif;
  font-size:26px;
  font-weight:700;
  color:var(--graphite);
  line-height:1.1;
  white-space:nowrap;
}
.brand-caption{
  font-family:'Space Mono',monospace;
  font-size:8px;
  letter-spacing:.2em;
  color:var(--terracotta);
  text-transform:uppercase;
  white-space:nowrap;
}
.sidebar-nav{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  gap:4px;
  padding:10px 14px;
  overflow-y:auto;
}
.sidebar-nav a{
  display:flex;
  align-items:center;
  gap:14px;
  padding:11px 14px;
  border-radius:24px;
  color:var(--graphite);
  font-size:14px;
  font-weight:500;
  text-decoration:none;
  position:relative;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .3s,color .3s;
}
.sidebar-nav a svg{
  flex:0 0 auto;
  stroke:var(--emerald);
  transition:fill .3s;
}
.sidebar-nav a:hover{
  transform:translateX(6px);
  background:rgba(223,240,234,.6);
}
.sidebar-nav a:hover svg{
  fill:rgba(11,93,74,.18);
}
.sidebar-nav a.active{
  color:var(--terracotta);
  font-weight:600;
}
.sidebar-nav a.active::before{
  content:'';
  position:absolute;
  left:-14px;top:20%;
  height:60%;
  width:2px;
  background:var(--terracotta);
}
.sidebar-cta{
  padding:16px 20px 22px;
}
.btn-liquid{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:var(--terracotta);
  color:#fff!important;
  border:none;
  border-radius:40px;
  padding:14px 28px;
  font-weight:600;
  font-size:14px;
  white-space:nowrap;
  min-height:44px;
  text-decoration:none;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
.btn-liquid:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 30px rgba(196,85,45,.3);
  color:#fff;
}
.btn-ghost{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:rgba(255,255,255,.72);
  color:var(--emerald)!important;
  border:1px solid var(--emerald);
  border-radius:40px;
  padding:12px 26px;
  font-weight:600;
  font-size:14px;
  white-space:nowrap;
  min-height:44px;
  text-decoration:none;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
.btn-ghost:hover{
  transform:translateY(-3px);
  box-shadow:0 12px 30px rgba(11,93,74,.15);
  color:var(--emerald);
}
.sidebar-open-dot{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 24px;
  font-family:'Space Mono',monospace;
  font-size:9px;
  letter-spacing:.08em;
  color:var(--emerald);
}
.pulse-dot{
  width:8px;height:8px;
  border-radius:50%;
  background:var(--emerald);
  animation:pulse 2s ease-in-out infinite;
}
@keyframes pulse{
  0%,100%{box-shadow:0 0 0 0 rgba(11,93,74,.4)}
  50%{box-shadow:0 0 0 8px rgba(11,93,74,0)}
}

.sidebar-toggle-btn{
  position:fixed;
  left:286px;top:20px;
  z-index:1100;
  width:44px;height:44px;
  border-radius:50%;
  border:1px solid var(--line);
  background:rgba(248,247,244,.85);
  backdrop-filter:blur(20px);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--emerald);
  transition:left .4s ease,transform .3s;
}
.sidebar-toggle-btn:hover{transform:scale(1.06)}
body.sidebar-collapsed .sidebar-dock{
  width:120px;
}
body.sidebar-collapsed .content-shell{
  margin-left:120px;
}
body.sidebar-collapsed .sidebar-toggle-btn{
  left:126px;
}
body.sidebar-collapsed .brand-domain{
  font-family:'Space Mono',monospace;
  font-size:9px;
  letter-spacing:.04em;
  line-height:1.3;
  white-space:normal;
  text-align:left;
}
body.sidebar-collapsed .brand-caption,
body.sidebar-collapsed .sidebar-nav a span.nav-label,
body.sidebar-collapsed .sidebar-cta,
body.sidebar-collapsed .sidebar-open-dot span{
  display:none;
}
body.sidebar-collapsed .sidebar-nav a{
  justify-content:center;
}
.brand-lock{
  flex-direction:column;
  align-items:flex-start;
  gap:6px;
}

.hero-liquid{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  padding:80px 6vw 60px;
}
.hero-orb-wrap{
  position:relative;
  width:40vw;
  max-width:560px;
  aspect-ratio:1;
  margin-left:auto;
}
.hero-orb{
  position:absolute;
  inset:0;
  border-radius:50%;
  background:
    radial-gradient(circle at 32% 28%,rgba(255,255,255,.95),transparent 42%),
    radial-gradient(circle at 65% 70%,rgba(223,240,234,.9),transparent 55%),
    radial-gradient(circle at 50% 50%,var(--mint),var(--lavender) 55%,var(--rose) 120%);
  box-shadow:0 40px 120px rgba(20,30,20,.14),inset -20px -30px 80px rgba(255,255,255,.5);
  animation:orbBreath 8s ease-in-out infinite;
}
@keyframes orbBreath{
  0%,100%{transform:scale(1);border-radius:50%}
  50%{transform:scale(1.025);border-radius:46% 54% 48% 52%/52% 46% 54% 48%}
}
.hero-orb-inner{
  position:absolute;
  inset:18%;
  border-radius:50%;
  background:
    radial-gradient(circle at 70% 30%,rgba(255,255,255,.8),transparent 40%),
    radial-gradient(circle at 30% 70%,rgba(255,255,255,.35),transparent 55%);
  border:1px solid rgba(255,255,255,.6);
}
.hero-meta-tag{
  font-family:'Space Mono',monospace;
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--emerald);
  margin-bottom:22px;
}
.hero-title{
  font-size:clamp(56px,8vw,110px);
  line-height:.98;
}
.hero-sub{
  font-size:15px;
  color:var(--body);
  max-width:520px;
  margin-top:22px;
}
.hero-cta-row{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:34px;
}
.hero-glass-card{
  position:absolute;
  right:-10px;
  bottom:24px;
  background:rgba(255,255,255,.6);
  backdrop-filter:blur(32px);
  border:1px solid rgba(216,212,206,.6);
  border-radius:60% 40% 50% 30%/50% 30% 60% 40%;
  padding:22px 30px;
  color:var(--emerald);
  box-shadow:0 20px 60px rgba(20,30,20,.08);
  transition:transform .4s cubic-bezier(.34,1.56,.64,1);
}
.hero-glass-card:hover{transform:scale(1.05)}
.hero-level{
  position:absolute;
  left:2vw;
  bottom:60px;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.level-seg{
  width:26px;height:8px;
  border-radius:8px;
  background:rgba(216,212,206,.9);
}
.level-seg.filled{background:var(--terracotta)}

.section-label{
  font-family:'Space Mono',monospace;
  font-size:10px;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--emerald);
  margin-bottom:14px;
}
.section-title{
  font-size:clamp(44px,7vw,110px);
  line-height:1.02;
  margin-bottom:28px;
}
.section-pad{
  padding:110px 6vw;
  position:relative;
}

.flexgrow-row{
  display:flex;
  gap:16px;
  align-items:stretch;
}
.flexgrow-card{
  flex:1 1 16%;
  min-width:0;
  border-radius:44px;
  overflow:hidden;
  position:relative;
  background:rgba(255,255,255,.6);
  border:1px solid rgba(216,212,206,.7);
  min-height:420px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:26px;
  transition:flex-grow .5s cubic-bezier(.34,1.56,.64,1),transform .4s,box-shadow .4s,opacity .4s;
  z-index:5;
}
.flexgrow-card:hover{
  flex-grow:3;
  z-index:20;
  transform:translateY(-8px);
  box-shadow:0 30px 60px rgba(20,30,20,.15);
}
.flexgrow-row:hover .flexgrow-card:not(:hover){
  opacity:.7;
}
.flexgrow-card .fg-bg{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:center;
}
.flexgrow-card .fg-bg::after{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(28,26,23,.78),rgba(28,26,23,.15) 55%,rgba(28,26,23,.1));
}
.flexgrow-card .fg-icon{
  position:absolute;
  top:22px;right:22px;
  background:rgba(248,247,244,.85);
  border-radius:50%;
  width:52px;height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--emerald);
}
.flexgrow-card h3{
  color:#fff;
  font-size:32px;
  position:relative;
  z-index:2;
  line-height:1.1;
}
.flexgrow-card p{
  color:rgba(255,255,255,.92);
  font-size:13px;
  position:relative;
  z-index:2;
  margin:8px 0 0;
}
.flexgrow-card .fg-price{
  position:relative;
  z-index:2;
  font-family:'Space Mono',monospace;
  font-size:11px;
  color:var(--terracotta);
  margin-top:10px;
}
.flexgrow-card.icon-only{
  background:linear-gradient(135deg,var(--mint),var(--sand));
  color:var(--graphite);
}
.flexgrow-card.icon-only h3{color:var(--emerald)}
.flexgrow-card.icon-only p{color:var(--body)}

.layer-stage{
  position:relative;
  min-height:720px;
}
.overlap-layer{
  position:absolute;
  border-radius:48px;
  background:rgba(255,255,255,.62);
  backdrop-filter:blur(28px);
  border:1px solid rgba(216,212,206,.7);
  box-shadow:0 20px 60px rgba(20,30,20,.08);
  padding:36px;
  transition:transform .45s cubic-bezier(.34,1.56,.64,1),z-index 0s,opacity .4s,box-shadow .45s;
}
.overlap-layer .layer-num{
  font-family:'Space Mono',monospace;
  font-size:10px;
  letter-spacing:.2em;
  color:var(--terracotta);
}
.layer-photo{
  width:70%;
  height:560px;
  left:0;top:0;
  z-index:10;
  background-size:cover;
  background-position:center;
  border-radius:48px;
  padding:0;
  overflow:hidden;
}
.layer-photo .inner-shade{
  position:absolute;
  inset:0;
  background:rgba(248,247,244,.18);
  border-radius:48px;
}
.layer-fact-1{
  width:44%;
  right:4%;
  top:90px;
  z-index:15;
}
.layer-fact-2{
  width:36%;
  right:26%;
  bottom:30px;
  z-index:20;
}
.layer-stage:hover .overlap-layer{opacity:.88}
.layer-stage:hover .overlap-layer:hover{
  opacity:1;
  z-index:30;
  transform:translateY(-20px) scale(1.05);
  box-shadow:0 40px 80px rgba(20,30,20,.18);
}

.marquee-track{
  display:flex;
  gap:18px;
  overflow:hidden;
  padding:20px 0;
}
.marquee-inner{
  display:flex;
  gap:18px;
  animation:marqueeMove 38s linear infinite;
  width:max-content;
}
.marquee-track:hover .marquee-inner{animation-play-state:paused}
@keyframes marqueeMove{
  0%{transform:translateX(0)}
  100%{transform:translateX(-50%)}
}
.step-card{
  width:300px;
  height:440px;
  flex:0 0 auto;
  border-radius:44px;
  background:rgba(255,255,255,.6);
  backdrop-filter:blur(28px);
  border:1px solid rgba(216,212,206,.7);
  padding:30px;
  display:flex;
  flex-direction:column;
  box-shadow:0 20px 60px rgba(20,30,20,.07);
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s;
}
.step-card:hover{
  transform:translateY(-10px);
  box-shadow:0 30px 70px rgba(20,30,20,.14);
}
.step-num{
  font-family:'Space Mono',monospace;
  font-size:13px;
  color:var(--terracotta);
  letter-spacing:.12em;
}
.step-ico{
  margin-top:26px;
  color:var(--emerald);
}
.step-card h3{
  font-size:30px;
  margin-top:14px;
}
.step-card p{
  font-size:13px;
  margin-top:10px;
  flex:1;
}

.coverflow-stage{
  position:relative;
  perspective:1400px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:420px;
}
.cover-card{
  position:absolute;
  width:380px;
  min-height:280px;
  border-radius:40px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(28px);
  border:1px solid rgba(216,212,206,.8);
  box-shadow:0 24px 70px rgba(20,30,20,.1);
  padding:34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  transition:transform .55s cubic-bezier(.34,1.56,.64,1),opacity .4s,filter .4s;
}
.cover-card .cc-accent{
  position:absolute;
  top:0;left:40px;right:40px;
  height:5px;
  border-radius:0 0 12px 12px;
}
.cover-card h3{
  font-size:36px;
  margin:18px 0 8px;
}
.cover-card p{
  font-size:14px;
}
.cover-nav-btn{
  width:52px;height:52px;
  border-radius:50%;
  border:1px solid var(--line);
  background:rgba(255,255,255,.72);
  color:var(--emerald);
  display:flex;
  align-items:center;
  justify-content:center;
  transition:transform .3s,background .3s;
}
.cover-nav-btn:hover{
  background:var(--mint);
  transform:scale(1.08);
}

.team-accordion{
  display:flex;
  flex-direction:column;
  gap:16px;
}
.team-panel{
  border-radius:36px;
  background:rgba(255,255,255,.6);
  backdrop-filter:blur(26px);
  border:1px solid rgba(216,212,206,.7);
  overflow:hidden;
  transition:box-shadow .4s,background .4s;
}
.team-panel.open{
  box-shadow:0 24px 70px rgba(20,30,20,.14);
  background:rgba(255,255,255,.85);
}
.team-panel-head{
  display:flex;
  align-items:center;
  gap:20px;
  padding:20px 28px;
  cursor:pointer;
  width:100%;
  border:none;
  background:transparent;
  text-align:left;
}
.team-avatar{
  width:100px;height:100px;
  border-radius:50%;
  object-fit:cover;
  flex:0 0 auto;
  border:2px solid var(--mint);
}
.team-name{
  font-size:34px;
  margin:0;
}
.team-role{
  font-family:'Space Mono',monospace;
  font-size:10px;
  color:var(--terracotta);
  letter-spacing:.16em;
  text-transform:uppercase;
}
.team-toggle{
  margin-left:auto;
  width:44px;height:44px;
  border-radius:50%;
  border:1px solid var(--line);
  background:rgba(255,255,255,.7);
  color:var(--emerald);
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1);
}
.team-panel.open .team-toggle{transform:rotate(45deg)}
.team-panel-body{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .5s ease;
}
.team-panel.open .team-panel-body{grid-template-rows:1fr}
.team-panel-body-inner{
  overflow:hidden;
  padding:0 28px;
}
.team-panel.open .team-panel-body-inner{
  padding:0 28px 26px;
}
.team-panel-body p{
  font-size:14px;
}

.faq-grid{
  display:grid;
  grid-template-columns:40% 60%;
  gap:40px;
}
.faq-capsule{
  border-radius:28px;
  background:rgba(255,255,255,.6);
  border:1px solid rgba(216,212,206,.7);
  padding:22px 26px;
  margin-bottom:14px;
  transition:transform .35s cubic-bezier(.34,1.56,.64,1),box-shadow .35s;
}
.faq-capsule:hover{
  transform:scale(1.02);
  box-shadow:0 18px 50px rgba(20,30,20,.1);
}
.faq-q{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  cursor:pointer;
  font-family:'Cormorant Garamond',serif;
  font-size:24px;
  font-weight:600;
  color:var(--graphite);
  border:none;
  background:transparent;
  width:100%;
  text-align:left;
  padding:0;
}
.faq-ind{
  flex:0 0 auto;
  width:36px;height:36px;
  border-radius:50%;
  border:1px solid var(--line);
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--terracotta);
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),background .3s;
}
.faq-capsule.open .faq-ind{
  transform:rotate(45deg);
  background:var(--terracotta);
  color:#fff;
}
.faq-a{
  display:grid;
  grid-template-rows:0fr;
  transition:grid-template-rows .45s ease;
}
.faq-capsule.open .faq-a{grid-template-rows:1fr}
.faq-a-inner{overflow:hidden}
.faq-a p{margin:14px 0 0;font-size:14px}

.bento-grid{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px;
}
.bento-drop{
  border-radius:70% 30% 60% 40%/60% 40% 70% 30%;
  background:rgba(255,255,255,.62);
  border:1px solid rgba(216,212,206,.7);
  padding:34px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:200px;
  transition:border-radius .5s cubic-bezier(.34,1.56,.64,1),transform .4s,box-shadow .4s;
}
.bento-drop:hover{
  border-radius:40% 60% 30% 70%/30% 70% 40% 60%;
  transform:scale(1.03);
  box-shadow:0 24px 60px rgba(20,30,20,.12);
}
.bento-drop.big{grid-column:span 2;grid-row:span 2}
.bento-drop.wide{grid-column:span 2}
.bento-stat{
  font-family:'Space Mono',monospace;
  font-size:clamp(34px,4vw,56px);
  color:var(--emerald);
  line-height:1;
}
.bento-label{
  font-size:13px;
  margin-top:8px;
}
.bento-quote{
  font-family:'Cormorant Garamond',serif;
  font-size:24px;
  line-height:1.3;
  color:var(--graphite);
}
.bento-author{
  font-family:'Space Mono',monospace;
  font-size:10px;
  color:var(--terracotta);
  letter-spacing:.14em;
  margin-top:12px;
}

.split-contact{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:start;
}
.contact-big-phone{
  font-family:'Cormorant Garamond',serif;
  font-size:36px;
  color:var(--graphite);
  text-decoration:none;
  display:inline-block;
  margin-top:8px;
}
.contact-big-phone:hover{color:var(--terracotta)}
.contact-addr{
  font-weight:700;
  color:var(--graphite);
  border-bottom:2px solid transparent;
  transition:border-color .3s;
}
.contact-addr:hover{border-color:var(--terracotta)}
.contact-line{
  display:flex;
  gap:12px;
  align-items:flex-start;
  margin-bottom:18px;
  color:var(--body);
}
.contact-line svg{flex:0 0 auto;color:var(--emerald);margin-top:3px}
.contact-line a{color:var(--cobalt);text-decoration:none}
.contact-line a:hover{text-decoration:underline}

.form-liquid .form-control{
  border-radius:20px;
  border:1px solid var(--line);
  background:rgba(255,255,255,.7);
  padding:14px 18px;
  color:var(--graphite);
}
.form-liquid .form-control:focus{
  border-color:var(--emerald);
  box-shadow:0 0 0 3px rgba(11,93,74,.15);
}
.form-liquid label{
  font-size:13px;
  font-weight:600;
  color:var(--graphite);
}
.btn-liquid-organic{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  background:var(--terracotta);
  color:#fff!important;
  border:none;
  border-radius:40% 60% 30% 70%/50% 50% 30% 70%;
  padding:16px 42px;
  font-weight:600;
  min-height:48px;
  white-space:nowrap;
  transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;
}
.btn-liquid-organic:hover{
  transform:translateY(-3px) scale(1.02);
  box-shadow:0 14px 34px rgba(196,85,45,.3);
  color:#fff;
}

.site-footer{
  position:relative;
  z-index:2;
  background:var(--dark);
  color:#B8B2AC;
  padding:70px 6vw 30px;
}
.footer-wave{
  position:absolute;
  top:-40px;left:0;right:0;
  line-height:0;
  color:var(--dark);
}
.footer-brand{
  font-family:'Cormorant Garamond',serif;
  font-size:24px;
  color:#fff;
  text-decoration:none;
}
.footer-caption{
  font-family:'Space Mono',monospace;
  font-size:8px;
  letter-spacing:.2em;
  color:var(--emerald);
  text-transform:uppercase;
}
.footer-col-title{
  font-family:'Space Mono',monospace;
  font-size:10px;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--emerald);
  margin-bottom:14px;
}
.footer-links{
  list-style:none;
  margin:0;padding:0;
}
.footer-links li{margin-bottom:10px}
.footer-links a{
  color:#B8B2AC;
  font-size:13px;
  text-decoration:none;
  transition:color .3s;
}
.footer-links a:hover{
  color:#fff;
  text-decoration:underline;
  text-decoration-color:var(--terracotta);
}
.footer-mono{
  font-family:'Space Mono',monospace;
  font-size:12px;
  color:#B8B2AC;
}
.footer-mono a{color:#B8B2AC;text-decoration:none}
.footer-mono a:hover{color:#fff}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:40px;
  padding-top:22px;
  font-family:'Space Mono',monospace;
  font-size:9px;
  color:#7A746E;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  justify-content:space-between;
}

.cookie-consent-banner{
  position:fixed;
  bottom:22px;
  left:22px;
  z-index:3000;
  max-width:420px;
  background:rgba(248,247,244,.92);
  backdrop-filter:blur(28px);
  border:1px solid rgba(11,93,74,.2);
  border-radius:28px;
  padding:24px;
  box-shadow:0 24px 70px rgba(20,30,20,.16);
  color:var(--body);
}
.cookie-consent-banner p{
  font-size:13px;
  margin-bottom:14px;
}
.cookie-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.btn-cookie-ok{
  background:var(--emerald);
  color:#fff!important;
  border:none;
  border-radius:30px;
  padding:12px 22px;
  font-size:13px;
  font-weight:600;
  min-height:44px;
}
.btn-cookie-no{
  background:transparent;
  color:var(--graphite)!important;
  border:1px solid var(--line);
  border-radius:30px;
  padding:12px 22px;
  font-size:13px;
  min-height:44px;
}
.cookie-consent-banner a{color:var(--cobalt)}

.mobile-topbar{
  display:none;
  position:fixed;
  top:0;left:0;right:0;
  z-index:1500;
  height:56px;
  background:rgba(248,247,244,.88);
  backdrop-filter:blur(30px);
  border-bottom:1px solid rgba(11,93,74,.12);
  align-items:center;
  justify-content:space-between;
  padding:0 16px;
}
.mobile-brand{
  display:flex;
  align-items:center;
  gap:8px;
}
.mobile-brand .brand-domain{
  font-size:18px;
}
.burger-btn{
  width:44px;height:44px;
  border:none;
  background:transparent;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
  border-radius:50%;
}
.burger-btn span{
  display:block;
  width:22px;height:2px;
  background:var(--graphite);
  border-radius:2px;
  transition:transform .35s,opacity .35s;
}
.burger-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.burger-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.burger-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

.mobile-menu-overlay{
  position:fixed;
  inset:0;
  z-index:2000;
  background:rgba(248,247,244,.98);
  transform:translateX(-100%);
  transition:transform .45s cubic-bezier(.34,1.56,.64,1);
  overflow-y:auto;
}
.mobile-menu-overlay.open{transform:translateX(0)}
.mobile-menu-top{
  position:sticky;
  top:0;
  z-index:2100;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 18px;
  background:rgba(248,247,244,.95);
  border-bottom:1px solid rgba(11,93,74,.1);
}
.mobile-menu-close{
  width:44px;height:44px;
  border:1px solid var(--line);
  border-radius:50%;
  background:transparent;
  color:var(--graphite);
  font-size:22px;
  display:flex;
  align-items:center;
  justify-content:center;
}
.mobile-menu-links{
  list-style:none;
  margin:0;padding:30px 24px;
}
.mobile-menu-links li{
  opacity:0;
  transform:translateY(14px);
  transition:opacity .4s ease,transform .4s ease;
}
.mobile-menu-overlay.open .mobile-menu-links li{
  opacity:1;
  transform:translateY(0);
}
.mobile-menu-links a{
  display:block;
  font-family:'Cormorant Garamond',serif;
  font-size:32px;
  color:var(--graphite);
  text-decoration:none;
  padding:10px 0;
  border-bottom:1px solid rgba(216,212,206,.6);
}
.mobile-menu-links a:hover{color:var(--terracotta)}
.mobile-menu-contacts{
  padding:10px 24px 40px;
  font-family:'Space Mono',monospace;
  font-size:12px;
  color:var(--body);
}
.mobile-menu-contacts a{color:var(--cobalt);text-decoration:none}

.page-hero-compact{
  position:relative;
  padding:120px 6vw 70px;
  min-height:auto;
}
.page-hero-compact .hero-title{
  font-size:clamp(46px,7vw,96px);
}

.reveal{
  opacity:0;
  transform:translateY(40px);
  transition:opacity .8s ease,transform .8s cubic-bezier(.34,1.56,.64,1);
}
.reveal.visible{
  opacity:1;
  transform:translateY(0);
}

.service-card-full{
  border-radius:40px;
  background:rgba(255,255,255,.66);
  border:1px solid rgba(216,212,206,.7);
  overflow:hidden;
  box-shadow:0 20px 60px rgba(20,30,20,.08);
  transition:transform .4s cubic-bezier(.34,1.56,.64,1),box-shadow .4s;
}
.service-card-full:hover{
  transform:translateY(-8px);
  box-shadow:0 30px 70px rgba(20,30,20,.14);
}
.service-card-full img{
  width:100%;
  height:260px;
  object-fit:cover;
}
.service-card-full .sc-body{
  padding:28px;
}
.service-card-full h3{
  font-size:32px;
}
.service-price{
  font-family:'Space Mono',monospace;
  font-size:12px;
  color:var(--terracotta);
  font-weight:700;
}

.stats-band{
  border-radius:44px;
  background:var(--dark);
  color:#fff;
  padding:50px 40px;
}
.stats-band .stat-num{
  font-family:'Space Mono',monospace;
  font-size:clamp(30px,3.5vw,50px);
  color:var(--mint);
}

.form-thank-card{
  max-width:720px;
  margin:0 auto;
  border-radius:52px;
  background:rgba(255,255,255,.7);
  border:1px solid rgba(216,212,206,.7);
  backdrop-filter:blur(30px);
  padding:70px 50px;
  text-align:center;
}
.thank-check{
  width:90px;height:90px;
  border-radius:50%;
  background:var(--emerald);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  margin:0 auto 26px;
  animation:checkPop .6s cubic-bezier(.34,1.56,.64,1);
}
@keyframes checkPop{
  0%{transform:scale(0)}
  100%{transform:scale(1)}
}

.legal-body{
  font-size:14px;
  max-width:900px;
}
.legal-body h2{
  font-size:34px;
  margin-top:36px;
  margin-bottom:12px;
}
.legal-body p,.legal-body li{
  color:var(--body);
}
.legal-body ul{
  padding-left:22px;
}

@media (max-width:1023px){
  .content-shell{margin-left:0}
  .sidebar-dock{display:none}
  .sidebar-toggle-btn{display:none}
  .mobile-topbar{display:flex}
  .site-main{padding-top:56px}
}

@media (min-width:768px) and (max-width:1023px){
  .flexgrow-row{flex-wrap:wrap}
  .flexgrow-card{flex:1 1 40%}
  .bento-grid{grid-template-columns:repeat(2,1fr)}
  .hero-orb-wrap{width:34vw;max-width:420px}
  .coverflow-stage{overflow:hidden}
}

@media (max-width:767px){
  .hero-liquid{
    flex-direction:column;
    padding:110px 20px 60px;
    text-align:center;
    min-height:auto;
  }
  .hero-title{font-size:clamp(46px,13vw,72px)}
  .hero-sub{margin-left:auto;margin-right:auto}
  .hero-cta-row{justify-content:center}
  .hero-orb-wrap{width:70vw;max-width:300px;margin:30px auto 0}
  .hero-glass-card{position:static;margin-top:24px;border-radius:44px}
  .hero-level{display:none}
  .flexgrow-row{flex-direction:column}
  .flexgrow-card{min-height:300px}
  .layer-stage{min-height:auto;display:flex;flex-direction:column;gap:18px}
  .overlap-layer{position:static;width:100%!important}
  .layer-photo{height:300px}
  .faq-grid{grid-template-columns:1fr}
  .bento-grid{grid-template-columns:1fr}
  .bento-drop.big,.bento-drop.wide{grid-column:span 1;grid-row:span 1}
  .split-contact{grid-template-columns:1fr}
  .cover-card{width:86vw}
  .coverflow-stage{overflow:hidden}
  .team-panel-head{flex-wrap:wrap}
  .section-pad{padding:70px 20px}
  .hero-glass-card{right:auto}
  .cookie-consent-banner{left:16px;right:16px;max-width:none;bottom:16px}
}

@media (min-width:1024px){
  .mobile-topbar{display:none}
  .mobile-menu-overlay{display:none}
}