/* Premium editorial upgrade: calm, restrained, high-end brand presentation */
:root{
  --premium-ink:#10251d;
  --premium-green:#18382d;
  --premium-green-2:#294c3f;
  --premium-cream:#f7f1e7;
  --premium-paper:#fffaf2;
  --premium-sand:#d8c3a5;
  --premium-brown:#8a6744;
  --premium-line:rgba(24,56,45,.16);
  --premium-shadow:0 28px 80px rgba(23,45,36,.14);
}
html{scroll-behavior:smooth;}
body{
  color:var(--premium-ink);
  background:
    radial-gradient(circle at 10% 0%, rgba(216,195,165,.38), transparent 34rem),
    radial-gradient(circle at 100% 16%, rgba(24,56,45,.10), transparent 32rem),
    linear-gradient(180deg,#fbf6ed 0%,#f6eee2 45%,#fbf7ef 100%);
  letter-spacing:.01em;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  opacity:.22;
  z-index:-1;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.22'/%3E%3C/svg%3E");
}
.site-header{
  background:rgba(251,246,237,.82)!important;
  border-bottom:1px solid rgba(24,56,45,.10)!important;
  backdrop-filter:blur(18px);
  box-shadow:none!important;
}
.brand span{font-weight:600; letter-spacing:.035em;}
.logo{box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);}
.nav-links a{font-size:14px; letter-spacing:.035em;}
.nav-hotline,.sticky-side-cta,.mobile-conversion-bar,.hero-conversion,.conversion-band,.offer-grid,.scarcity-safe{display:none!important;}
.nav-cta{
  background:transparent!important;
  color:var(--premium-green)!important;
  border:1px solid rgba(24,56,45,.28)!important;
  box-shadow:none!important;
}
.nav-cta:hover{background:rgba(24,56,45,.06)!important; transform:none!important;}
.hero{
  position:relative;
  min-height:calc(100vh - 74px);
  display:flex;
  align-items:center;
  overflow:hidden;
  background:
    linear-gradient(90deg,rgba(13,32,25,.78),rgba(13,32,25,.48) 44%,rgba(13,32,25,.08)),
    url('/assets/img/hero-spa.jpg') center/cover no-repeat!important;
  color:#fffaf2;
  padding:108px 0 86px!important;
}
.hero::before{
  content:"";
  position:absolute;
  inset:28px;
  border:1px solid rgba(255,250,242,.20);
  border-radius:32px;
  pointer-events:none;
}
.hero::after{
  content:"杭州 · 东方疗愈空间";
  position:absolute;
  right:clamp(22px,5vw,76px);
  bottom:clamp(24px,5vw,70px);
  color:rgba(255,250,242,.72);
  font-size:13px;
  letter-spacing:.32em;
  writing-mode:vertical-rl;
}
.hero-grid{grid-template-columns:minmax(0,1.05fr) minmax(320px,.78fr)!important; gap:56px!important; align-items:center; position:relative; z-index:1;}
.hero .eyebrow{color:#e7d4b8!important; letter-spacing:.30em; font-weight:500;}
.h1{
  font-size:clamp(44px,7vw,86px)!important;
  line-height:.98!important;
  letter-spacing:-.045em!important;
  color:#fffaf2!important;
  max-width:820px;
  margin:16px 0 24px!important;
}
.hero .lead{
  color:rgba(255,250,242,.82)!important;
  max-width:650px;
  font-size:18px!important;
  line-height:2!important;
}
.pill-row{gap:10px!important; margin-top:28px!important;}
.pill{
  background:rgba(255,250,242,.10)!important;
  color:rgba(255,250,242,.86)!important;
  border:1px solid rgba(255,250,242,.20)!important;
  backdrop-filter:blur(12px);
}
.notice.small{
  background:rgba(255,250,242,.10)!important;
  border:1px solid rgba(255,250,242,.16)!important;
  color:rgba(255,250,242,.72)!important;
  max-width:650px;
}
.cta-row{gap:14px!important;}
.btn{
  border-radius:999px!important;
  min-height:46px;
  padding:13px 22px!important;
  letter-spacing:.08em;
  font-weight:600!important;
  transition:transform .25s ease, background .25s ease, border-color .25s ease, box-shadow .25s ease!important;
}
.btn.primary{
  background:#fffaf2!important;
  color:var(--premium-green)!important;
  border:1px solid rgba(255,250,242,.78)!important;
  box-shadow:0 20px 40px rgba(0,0,0,.16)!important;
}
.btn.primary:hover{transform:translateY(-2px); box-shadow:0 24px 52px rgba(0,0,0,.20)!important;}
.btn.secondary,.btn.wechat,.btn.ghost{
  background:rgba(255,250,242,.08)!important;
  color:#fffaf2!important;
  border:1px solid rgba(255,250,242,.34)!important;
  box-shadow:none!important;
}
.btn.secondary:hover,.btn.wechat:hover,.btn.ghost:hover{background:rgba(255,250,242,.15)!important; transform:translateY(-2px);}
.hero-card{
  background:rgba(255,250,242,.12)!important;
  border:1px solid rgba(255,250,242,.22)!important;
  border-radius:34px!important;
  padding:14px!important;
  box-shadow:0 30px 90px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(18px);
}
.hero-photo{
  min-height:520px!important;
  border-radius:26px!important;
  background:url('/assets/img/room-warm.jpg') center/cover no-repeat!important;
  filter:saturate(.86) contrast(.98);
}
.hero-badge{
  margin:14px!important;
  color:#fffaf2!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.hero-badge .muted{color:rgba(255,250,242,.68)!important;}
.trust-strip{
  margin-top:34px!important;
  background:rgba(255,250,242,.10)!important;
  border:1px solid rgba(255,250,242,.18)!important;
  box-shadow:none!important;
  backdrop-filter:blur(14px);
}
.trust-item strong{color:#fffaf2!important;}
.trust-item .muted{color:rgba(255,250,242,.70)!important;}
.section{padding:104px 0!important;}
.section.soft{background:rgba(255,250,242,.54)!important; border-block:1px solid rgba(24,56,45,.08);}
.section-head{align-items:end!important;}
.eyebrow{color:var(--premium-brown)!important; letter-spacing:.26em!important;}
.h2{font-size:clamp(34px,4.7vw,58px)!important; letter-spacing:-.04em!important; color:var(--premium-green)!important;}
.h3{color:var(--premium-green)!important; letter-spacing:-.015em;}
.lead{color:rgba(16,37,29,.72)!important; line-height:1.95!important;}
.card,.service-card,details,.price-table{
  background:rgba(255,250,242,.76)!important;
  border:1px solid rgba(24,56,45,.12)!important;
  border-radius:28px!important;
  box-shadow:var(--premium-shadow)!important;
}
.card:hover,.service-card:hover{transform:translateY(-4px);}
.visual-gallery{padding:98px 0!important; background:linear-gradient(180deg,rgba(24,56,45,.06),rgba(255,250,242,.24))!important;}
.gallery-grid{gap:22px!important;}
.gallery-main,.gallery-small{
  border-radius:34px!important;
  min-height:540px!important;
  overflow:hidden;
  box-shadow:var(--premium-shadow)!important;
  border:1px solid rgba(255,255,255,.42);
}
.gallery-small{min-height:258px!important;}
.gallery-caption{
  background:linear-gradient(180deg,transparent,rgba(12,27,22,.78))!important;
  color:#fffaf2!important;
  padding:34px!important;
}
.gallery-caption .muted{color:rgba(255,250,242,.76)!important;}
.service-card{overflow:hidden!important;}
.service-img{height:250px!important; filter:saturate(.88) contrast(.98);}
.service-body{padding:28px!important;}
.tag{background:#efe3d2!important; color:#315245!important; border-color:rgba(24,56,45,.10)!important;}
.service-body .btn.secondary,.section .btn.secondary,.faq .btn.secondary{
  color:var(--premium-green)!important;
  background:transparent!important;
  border-color:rgba(24,56,45,.24)!important;
}
.section .btn.primary,.faq .btn.primary{
  color:#fffaf2!important;
  background:var(--premium-green)!important;
  border-color:var(--premium-green)!important;
  box-shadow:0 18px 36px rgba(24,56,45,.18)!important;
}
.feature-list li{border-bottom:1px solid rgba(24,56,45,.10)!important;}
.check{background:#e7d4b8!important; color:var(--premium-green)!important;}
.process-item{border-color:rgba(24,56,45,.10)!important;}
.price-row{border-color:rgba(24,56,45,.09)!important;}
.price-head{background:#efe3d2!important; color:var(--premium-green)!important;}
.area-map{border-radius:34px!important; box-shadow:var(--premium-shadow)!important; filter:saturate(.86);}
.footer{background:#10251d!important; color:#fffaf2!important; border-top:0!important;}
.footer a{color:#f0ddc0!important;}
.footer .muted{color:rgba(255,250,242,.68)!important;}
/* Inner pages */
main > .page-hero, .sub-hero, .inner-hero{
  background:linear-gradient(135deg,#17382d,#263f34)!important;
  color:#fffaf2!important;
}
form input,form textarea,form select{
  border-radius:18px!important;
  border:1px solid rgba(24,56,45,.18)!important;
  background:#fffaf2!important;
}
@media (max-width: 980px){
  .hero{min-height:auto; padding:94px 0 64px!important;}
  .hero::before{inset:14px; border-radius:24px;}
  .hero::after{display:none;}
  .hero-grid{grid-template-columns:1fr!important; gap:28px!important;}
  .hero-photo{min-height:340px!important;}
  .h1{font-size:clamp(38px,12vw,58px)!important;}
  .gallery-main,.gallery-small{min-height:360px!important;}
  .section{padding:78px 0!important;}
}
@media (max-width: 680px){
  body{padding-bottom:0!important;}
  .hero{padding:74px 0 46px!important;}
  .hero .lead{font-size:16px!important; line-height:1.85!important;}
  .cta-row .btn{width:100%; justify-content:center;}
  .trust-strip{grid-template-columns:1fr!important;}
  .hero-card{display:none;}
  .nav-cta{display:inline-flex!important;}
}
