/* 月夜手绘主题：保留既有信息架构，只调整视觉语言。 */
:root{
  --brand:#182952;
  --accent:#EEE8D8;
  --accent-hover:#D8D0BB;
  --accent-soft:#B7B9CF;
  --accent-deep:#E9DFC3;
  --accent-wash:#22335D;
  --accent-line:rgba(238,232,216,.28);
  --leaf:#D6D2BA;
  --leaf-wash:#182952;
  --ink-strong:#FAF7EC;
  --ink-title:#F1EEE4;
  --ink-body:#E5E8EE;
  --ink-muted:#C2C9D8;
  --ink-faint:#ABB5CA;
  --btn-label:#142044;
  --bg-page:#111F49;
  --bg-card:#1B2D58;
  --bg-tint:#172750;
  --bg-dark:#0C1838;
  --bg-arch:#1B2D58;
  --border:rgba(237,232,215,.28);
  --border-soft:rgba(237,232,215,.16);
  --radius-btn:10px;
  --radius-card:15px;
  --radius-lg:19px;
}

body{
  background-color:var(--bg-page);
  background-image:radial-gradient(circle at 12% 17%,rgba(245,239,216,.19) 1px,transparent 2px),radial-gradient(circle at 81% 41%,rgba(245,239,216,.16) 1px,transparent 2px);
  background-size:630px 470px,730px 610px;
  color:var(--ink-body);
}
a{color:var(--accent-deep)}
a:hover{color:#FFF7DC}
::selection{background:#E8DEC7;color:#142044}
:focus-visible{outline-color:#FFF4CB}

.section--tint{
  background:#15254D;
  background-image:none;
  border-block:1px solid var(--border-soft);
}
.section--dark{background:#0C1838;color:var(--ink-body)}
.section-head::after{
  width:34px;height:1px;margin-top:25px;
  background:#D9D7C8;border-radius:0;transform:none;
}
.eyebrow{color:#DADBCB;letter-spacing:.14em}
.eyebrow::before{
  width:15px;height:15px;border:1px solid currentColor;
  border-radius:0;background:none;transform:rotate(45deg) scale(.58);
}
.pill,.pill:nth-child(even){
  color:#EEE7D5;background:rgba(237,232,215,.045);
  border:1px solid var(--border-soft);border-radius:999px;
}
.tag{color:var(--ink-muted)}

.notice{
  background:#0A1533;color:#D3DAE4;
  border-bottom:1px solid var(--border-soft);
}
.notice a,.notice a:hover{color:#FFF4D4;border-color:rgba(255,244,212,.55)}
.notice__close,.notice__close:hover{color:#E8E7DB}
.site-header,.site-header.is-stuck{
  background:rgba(12,24,56,.96);background-image:none;
  border-color:var(--border-soft);box-shadow:none;
  backdrop-filter:blur(12px);
}
.brand{color:var(--ink-strong)}
.brand:hover{color:#FFF4D4}
.brand__sub{color:var(--ink-muted)}
.nav__link{color:#E5E7E7}
.nav__link:hover,.nav__link[aria-current="page"]{
  background:rgba(255,255,255,.055);color:#FFF3D2;
}
.nav-toggle{background:#192951;color:#F6F1DF;border-color:var(--border)}
.nav-submenu__list{background:#172750;border-color:var(--border-soft);box-shadow:0 16px 28px rgba(4,11,27,.28)}
.nav-submenu__list a{color:var(--ink-body)}
.nav-submenu__list a:hover{background:#2A3D68;color:#FFF7DF}

.btn--primary,.btn--primary:hover,
.closing .btn--light,.closing .btn--light:hover{
  background:#F2EAD8;background-image:none;border-color:#F2EAD8;
  color:#152148;box-shadow:none;
}
.btn--primary:hover,.closing .btn--light:hover{background:#FFF5E3;border-color:#FFF5E3}
.btn--ghost,.btn--plain,.closing .btn--plain{
  background:transparent;border:1px solid rgba(238,232,216,.48);
  color:#F4EDDC;
}
.btn--ghost:hover,.btn--plain:hover,.closing .btn--plain:hover{
  background:rgba(238,232,216,.10);border-color:#F2EAD8;color:#FFF8E7;
}
.btn--light{background:#F2EAD8;color:#152148;border-color:#F2EAD8}

.hero{
  padding-block:82px 76px;
  background:radial-gradient(ellipse at 76% 56%,rgba(42,67,126,.34),transparent 44%);
}
.hero::before,.hero::after{
  content:"✧";position:absolute;pointer-events:none;
  color:rgba(245,237,210,.58);font:28px var(--font-serif);
}
.hero::before{left:7%;top:17%}
.hero::after{right:8%;bottom:13%;font-size:19px}
.hero__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:45px}
.hero h1{
  font-size:clamp(3.1rem,6vw,5rem);line-height:1.22;
  letter-spacing:.095em;font-weight:500;color:#FFF9EC;
}
.hero__lead{color:#F2EBDA;font-weight:400}
.hero__sub{color:#E5E8EE}
.hero__note,.hero__price{color:#BDC8DA}
.hero__tags{margin-block:26px 32px}
.hero__visual{align-self:center}
.hero__photo{
  max-width:500px;margin:auto;border:0;border-radius:0;
  background:transparent;transform:none;overflow:visible;
}
.hero__photo img{
  width:100%;height:auto;aspect-ratio:1;object-fit:contain;
  mix-blend-mode:normal;filter:none;
}
.hero__badge{
  border:0;border-top:1px solid var(--border);
  border-radius:0;background:transparent;transform:none;
  padding:13px 6px 0;margin:4px auto 0;
}
.hero__badge strong{color:#F4EEDB;font-weight:400}
.hero__badge span{color:var(--ink-muted)}

.garden-strip,.trust{
  background:#0E1B40;background-image:none;
  border-block:1px solid var(--border-soft);
}
.garden-strip>.container{color:#D7D7CE}
.trust__ico{color:#E8DFC5}
.trust__v{color:var(--ink-strong)}
.trust__l,.trust__link{color:var(--ink-muted)}

.persona__photo,.about-garden__art img,.knowledge-art img{
  padding:12px;background:#ECEBDD;border:1px solid #E3DFD3;
  border-radius:13px;transform:none;
}
.persona__photo img,.about-garden__art img{
  filter:grayscale(1) sepia(.08) contrast(.84);
}
.persona__photo img{mix-blend-mode:multiply}
.persona__caption,.about-garden__art figcaption{color:var(--ink-muted)}
.about-name img{filter:invert(1) sepia(.1) brightness(1.8)}

.method__card,.method__card:nth-child(even),.method__card:nth-child(3),
.card,.review,.review:nth-child(3n+2),.review:nth-child(3n+3),
.post-card,.post-card:nth-child(3n+2),.post-card:nth-child(3n+3),
.boundary__col,.plan,.plan--featured,.fit__col,.cta-band,
.answer-box,.faq__item,.knowledge-card,.service-note,.service-process,
.booking-preview,.consult-card,.consult-card:nth-child(2n),.consult-card:nth-child(4){
  background:#1B2D58;background-image:none;
  border:1px solid var(--border-soft);
  border-radius:var(--radius-card);box-shadow:none;
}
.method__card:hover,.review:hover,.post-card:hover,.plan:hover{transform:none;box-shadow:none}
.method__k,.fit__h,.fit__col--yes .fit__h,.review__title,
.plan__name,.consult-card h2,.consult-card h3{color:#F8F3E6}
.method__card p,.fit__col p,.review__body,.post-card__excerpt,
.consult-card__desc,.plan__desc{color:var(--ink-body)}
.fit__col--yes{border-left:2px solid #ECE2C7}
.review__stars{color:#D9D0B3}
.review__meta,.review__source,.post-card__foot{color:var(--ink-muted)}
.flow__step,.flow__step:nth-of-type(even){
  background:#243761;border:1px solid var(--border-soft);
  color:#F2EDDE;border-radius:8px;
}
.flow__arrow{color:#D4C9AC}
.cta-band__text span,.plans__help{color:var(--ink-muted)}
.plan__badge{background:#E7DEC7;background-image:none;color:#19254A}
.plan__list li::before{background:#E7DEC7}
.boundary__list li::before,.boundary__col--do .boundary__list li::before{color:#E5DEC9}
.post-card__title a{color:var(--ink-strong)}
.post-card__title a:hover{color:#FFF4D4}
.faq__item[open]{box-shadow:none}
.faq__q,.faq__a{color:var(--ink-body)}

.service-note img{opacity:.55;filter:grayscale(1) brightness(.82);mix-blend-mode:screen}
.booking-steps li>span,.booking-steps li:nth-child(even)>span{
  background:#E9E1D0;color:#192650;border-radius:50%;
}
.booking-steps strong{color:#FFF0C9}
.consult-card{padding:26px}
.consult-card__type,.consult-card__number{color:#CFC9BA}
.consult-card__art{
  width:126px;height:126px;margin:6px auto 20px;
  border:3px solid rgba(245,238,220,.52);border-radius:50%;
  background:#E3E2DA;overflow:hidden;
}
.consult-card__art img{
  object-fit:cover;mix-blend-mode:normal;
  filter:grayscale(1) saturate(.3) contrast(.82);
}
.consult-card__price strong{color:#FFF2D3}
.knowledge-art img{filter:grayscale(1) saturate(.3)}
.booking-preview__summary{color:#F0E4C9}

.page-hero,.service-hero{
  background:#0D1A3E;background-image:none;
  border-color:var(--border-soft);
  padding-block:68px 60px;
}
.page-hero::after,.service-hero::after{
  display:block;right:max(24px,calc((100vw - 1120px)/2));
  top:10px;bottom:10px;width:170px;
  background:url('../img/moon-rabbit-minimal-v1.png') center / contain no-repeat;
  mix-blend-mode:normal;transform:none;opacity:.53;
}
.page-hero h1{color:#FFF8E8}
.page-hero p,.breadcrumb,.breadcrumb a{color:#C5CADA}
.prose p,.prose li{color:var(--ink-body)}
.prose blockquote{border-color:#E5DCC2;background:#1A2E5B}
.prose blockquote p{color:#F5EDDC}
.prose th{background:#22355F;color:var(--ink-strong)}
.answer-box p{color:var(--ink-body)}

.field label{color:var(--ink-strong)}
.field .hint,.field--row label{color:var(--ink-muted)}
.field input,.field select,.field textarea{
  background:#111F49;color:#F7F3E9;border-color:var(--border);
}
.field input::placeholder,.field textarea::placeholder{color:#AAB4C7}
.field input:focus,.field select:focus,.field textarea:focus{
  border-color:#F0E4C8;box-shadow:0 0 0 3px rgba(240,228,200,.15);
}

.closing{
  background:#0A1533;background-image:none;
  border-block:1px solid var(--border-soft);
}
.closing::before,.closing::after{display:none}
.closing h2{color:#FAF6E9}
.closing p,.closing__links{color:#CBD0D8}
.closing__links a,.closing__links a:hover{color:#F2E6C9;border-color:var(--border)}
.site-footer{
  background:#0B1737;background-image:none;
  border-top:1px solid var(--border-soft);
}
.footer__about p,.footer__list a,.footer__bottom a{color:#CFD2DC}
.footer__list a:hover,.footer__bottom a:hover{color:#FFF3D5}
.footer__title,.footer__bottom{color:#B6C0D1}
.socials a{color:#D7D7D2}
.socials a:hover{color:#FFF3D5;background:#1C2D58;border-color:#EDE3CC}
.action-bar{background:rgba(10,21,51,.98);border-color:var(--border-soft);box-shadow:none}

@media(max-width:1100px){
  .nav{background:#102046;border-color:var(--border-soft)}
  .nav-submenu__list{background:#192B54;border-left-color:#BFC1CE}
}
@media(max-width:860px){
  .hero{padding-block:54px 50px}
  .hero__grid{grid-template-columns:minmax(0,1fr);gap:26px}
  .hero__visual{max-width:390px}
  .hero__photo{max-width:350px}
  .page-hero::after{width:135px;opacity:.36}
}
@media(max-width:560px){
  .hero{padding-block:42px 48px}
  .hero h1{font-size:clamp(2.75rem,12vw,3.75rem)}
  .hero__photo{max-width:300px}
  .hero__badge{max-width:300px;width:100%;margin:0 auto}
  .page-hero{padding-block:42px 36px}
  .page-hero::after{width:92px;right:5px;top:20px;opacity:.22}
  .page-hero__inner{padding-right:0}
  .consult-card__art{height:112px;width:112px}
  .service-note{padding:24px}
  .service-note img{display:none}
  .about-name img{width:min(62vw,275px)}
}

@media print{
  :root{--bg-page:#fff;--ink-body:#151515;--ink-strong:#101010;--ink-title:#101010}
  body{background:#fff;color:#151515}
}
