/* Orvyn v2 设计系统 · WordPress 移植版(源:Shopify theme/assets/orvyn-custom.css) */
:root {
  --orvyn-orange: #E8845B;
  --orvyn-orange-dark: #D06A41;
  --orvyn-green: #14342C;
  --orvyn-cream: #FAF3E9;
  --orvyn-ink: #1F2A28;
  --orvyn-radius: 10px;
}

/* 首页隐藏页面标题 */
.home .wp-block-post-title { display: none; }
.home .entry-content { margin-top: 0 !important; }

/* 按钮统一暖橙 */
.wp-block-button__link, .wc-block-components-button:not(.is-link),
.woocommerce a.button, .woocommerce button.button,
.single_add_to_cart_button, .wc-block-components-checkout-place-order-button {
  background: var(--orvyn-orange) !important;
  color: #fff !important;
  border-radius: 8px !important;
  text-transform: uppercase;
  letter-spacing: .06em;
  font-weight: 600;
  border: none !important;
}
.wp-block-button__link:hover, .woocommerce a.button:hover { background: var(--orvyn-orange-dark) !important; }

/* 通用 section 容器 */
.orvyn-section { padding: 4.5rem 1.5rem; }
.orvyn-section__inner { max-width: 1120px; margin: 0 auto; }
.orvyn-kicker { font-size: .8rem; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; opacity: .65; margin: 0 0 .5rem; }
.orvyn-h2 { font-size: clamp(1.7rem, 3vw, 2.3rem); font-weight: 700; letter-spacing: -.01em; margin: 0 0 2rem; color: var(--orvyn-ink); }
.orvyn-center { text-align: center; }
.bg-cream { background: var(--orvyn-cream); }
.bg-green { background: var(--orvyn-green); color: #fff; }
.bg-green .orvyn-h2 { color: #fff; }

/* ===== Hero ===== */
.orvyn-hero { background: var(--orvyn-green); color: #fff; padding: 5.5rem 1.5rem; }
.orvyn-hero__inner { max-width: 1120px; margin: 0 auto; display: grid; grid-template-columns: 1.1fr .9fr; gap: 3rem; align-items: center; }
@media (max-width: 768px) { .orvyn-hero__inner { grid-template-columns: 1fr; } }
.orvyn-hero__kicker { font-size: .8rem; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; opacity: .8; margin: 0 0 1rem; color: var(--orvyn-orange); }
.orvyn-hero__title { font-size: clamp(2.4rem, 5vw, 3.6rem); line-height: 1.08; margin: 0 0 1.2rem; font-weight: 700; }
.orvyn-hero__sub { font-size: 1.05rem; line-height: 1.6; opacity: .85; max-width: 46ch; margin: 0 0 1.8rem; }
.orvyn-hero__cta { display: inline-block; background: #fff; color: var(--orvyn-green); font-weight: 700; text-transform: uppercase; letter-spacing: .08em; padding: .9rem 1.8rem; border-radius: 8px; text-decoration: none; font-size: .9rem; }
.orvyn-hero__cta:hover { background: var(--orvyn-cream); color: var(--orvyn-green); }
.orvyn-hero__chips { display: flex; flex-wrap: wrap; gap: .6rem 1.8rem; margin-top: 1.8rem; font-size: .85rem; opacity: .9; font-weight: 600; }
.orvyn-hero__media { border-radius: 16px; background: rgba(255,255,255,.08); aspect-ratio: 4/3; display: flex; align-items: center; justify-content: center; font-size: 5rem; }

/* ===== 编辑排版列(痛点) ===== */
.orvyn-ed { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0; }
@media (max-width: 768px) { .orvyn-ed { grid-template-columns: 1fr; } }
.orvyn-ed__item { padding: 0 2.2rem 0 0; margin-right: 2.2rem; border-right: 1px solid rgba(31,42,40,.12); }
.orvyn-ed__item:last-child { border-right: none; margin-right: 0; padding-right: 0; }
@media (max-width: 768px) {
  .orvyn-ed__item { border-right: none; margin: 0 0 1.8rem; padding: 0 0 1.8rem; border-bottom: 1px solid rgba(31,42,40,.12); }
  .orvyn-ed__item:last-child { border-bottom: none; }
}
.orvyn-ed__icon { display: inline-flex; align-items: center; justify-content: center; width: 3.4rem; height: 3.4rem; border-radius: 50%; background: var(--orvyn-cream); font-size: 1.5rem; margin-bottom: .9rem; }
.orvyn-ed__title { font-size: 1.1rem; font-weight: 700; margin: 0 0 .5rem; color: var(--orvyn-ink); }
.orvyn-ed__text { font-size: .92rem; line-height: 1.6; color: rgba(31,42,40,.65); margin: 0; }

/* ===== 卡片网格(场景/商品/卖点) ===== */
.orvyn-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.1rem; }
.orvyn-cards--3 { grid-template-columns: repeat(3, 1fr); }
@media (max-width: 900px) { .orvyn-cards, .orvyn-cards--3 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .orvyn-cards, .orvyn-cards--3 { grid-template-columns: 1fr; } }
.orvyn-card { background: #fff; border: 1px solid rgba(31,42,40,.08); border-radius: var(--orvyn-radius); overflow: hidden; display: flex; flex-direction: column; position: relative; transition: transform .15s, box-shadow .15s; }
.orvyn-card:hover { transform: translateY(-3px); box-shadow: 0 10px 24px rgba(31,42,40,.1); }
.orvyn-card__badge { position: absolute; top: 10px; left: 10px; z-index: 2; background: var(--orvyn-orange); color: #fff; font-size: .68rem; font-weight: 700; letter-spacing: .04em; padding: .25rem .55rem; border-radius: 6px; text-transform: uppercase; }
.orvyn-card__media { background: #EAF4F1; aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; font-size: 3.2rem; }
.orvyn-card__body { padding: 1rem 1rem 1.2rem; display: flex; flex-direction: column; gap: .4rem; flex: 1; }
.orvyn-card__stars { color: var(--orvyn-orange); font-size: .8rem; letter-spacing: .1em; }
.orvyn-card__title { font-weight: 600; font-size: .98rem; line-height: 1.35; margin: 0; color: var(--orvyn-ink); }
.orvyn-card__sub { font-size: .85rem; color: rgba(31,42,40,.6); margin: 0; }
.orvyn-card__price { font-weight: 700; font-size: 1rem; color: var(--orvyn-ink); }
.orvyn-card__price s { color: rgba(31,42,40,.45); font-weight: 400; margin-left: .4rem; }
.orvyn-card__btn { margin-top: auto; text-align: center; display: block; background: var(--orvyn-orange); color: #fff !important; border-radius: 8px; padding: .65rem .9rem; font-weight: 600; font-size: .8rem; text-transform: uppercase; letter-spacing: .08em; text-decoration: none; }
.orvyn-card__btn:hover { background: var(--orvyn-orange-dark); }
.orvyn-card__btn--soon { background: #E9E4DC; color: rgba(31,42,40,.55) !important; pointer-events: none; }

/* 悬浮卖点卡 */
.orvyn-why { background: #fff; border: 1px solid rgba(31,42,40,.08); border-radius: var(--orvyn-radius); padding: 1.8rem 1.2rem; text-align: center; transition: transform .15s, box-shadow .15s; }
.orvyn-why:hover { transform: translateY(-4px); box-shadow: 0 12px 26px rgba(31,42,40,.1); }
.orvyn-why__icon { display: inline-flex; align-items: center; justify-content: center; width: 3.8rem; height: 3.8rem; border-radius: 50%; background: rgba(232,132,91,.12); font-size: 1.7rem; margin-bottom: 1rem; }
.orvyn-why__title { font-size: 1rem; font-weight: 700; margin: 0 0 .5rem; color: var(--orvyn-ink); }
.orvyn-why__text { font-size: .85rem; line-height: 1.6; color: rgba(31,42,40,.62); margin: 0; }

/* ===== 深绿图文 ===== */
.orvyn-split { display: grid; grid-template-columns: 1fr 1fr; gap: 3rem; align-items: center; }
@media (max-width: 768px) { .orvyn-split { grid-template-columns: 1fr; } }
.orvyn-split__media { border-radius: 12px; background: rgba(255,255,255,.1); aspect-ratio: 1/1; display: flex; align-items: center; justify-content: center; font-size: 5rem; }

/* ===== Before/After ===== */
.orvyn-ba { display: grid; grid-template-columns: 1fr 1fr; gap: 1.1rem; }
@media (max-width: 768px) { .orvyn-ba { grid-template-columns: 1fr; } }
.orvyn-ba__panel { position: relative; border-radius: var(--orvyn-radius); aspect-ratio: 4/3; display: flex; align-items: center; justify-content: center; font-size: 3rem; }
.orvyn-ba__panel--before { background: linear-gradient(135deg, #B9AFA5, #8E8378); }
.orvyn-ba__panel--after { background: linear-gradient(135deg, #EAF4F1, #CFE7DF); }
.orvyn-ba__tag { position: absolute; top: 12px; left: 12px; background: rgba(20,52,44,.9); color: #fff; font-size: .7rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; padding: .3rem .6rem; border-radius: 6px; }
.orvyn-ba__tag--after { background: #2E8B6E; }
.orvyn-ba__caption { text-align: center; margin-top: 1.1rem; font-size: .92rem; opacity: .75; }

/* ===== 信任条 ===== */
.orvyn-trust { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.2rem 3rem; }
.orvyn-trust__item { display: flex; align-items: center; gap: .6rem; font-weight: 600; font-size: .95rem; color: var(--orvyn-ink); }

/* ===== 评价卡 ===== */
.orvyn-review { background: #fff; border: 1px solid rgba(31,42,40,.08); border-radius: var(--orvyn-radius); padding: 1.4rem; display: flex; flex-direction: column; gap: .7rem; }
.orvyn-review__stars { color: var(--orvyn-orange); letter-spacing: .12em; font-size: .85rem; }
.orvyn-review__quote { font-size: .95rem; line-height: 1.55; margin: 0; color: var(--orvyn-ink); }
.orvyn-review__meta { display: flex; align-items: center; gap: .5rem; margin-top: auto; font-size: .8rem; color: rgba(31,42,40,.6); }
.orvyn-review__avatar { width: 2rem; height: 2rem; border-radius: 50%; background: var(--orvyn-cream); display: inline-flex; align-items: center; justify-content: center; font-weight: 700; color: var(--orvyn-orange); font-size: .8rem; }
.orvyn-review__verified { color: #2E8B6E; font-weight: 600; }

/* ===== WooCommerce 商品卡/详情微调 ===== */
.woocommerce ul.products li.product .onsale, span.onsale { background: var(--orvyn-orange) !important; }
.woocommerce div.product p.price ins, .woocommerce ul.products li.product .price ins { color: var(--orvyn-ink); font-weight: 700; }

/* ===== 品牌页眉 ===== */
.orvyn-brand { display: inline-flex; align-items: center; text-decoration: none; }
.orvyn-brand__img { height: 40px; width: auto; display: block; }
.orvyn-sitenav { display: flex; align-items: center; gap: 1.8rem; }
.orvyn-sitenav a { text-decoration: none; color: var(--orvyn-ink); font-weight: 600; font-size: .95rem; }
.orvyn-sitenav a:hover { color: var(--orvyn-orange); }
.orvyn-sitenav__cart { display: inline-flex; align-items: center; }
header.wp-block-template-part, .wp-site-blocks > header { border-bottom: 1px solid rgba(31,42,40,.07); }

/* ===== 品牌页脚 ===== */
.orvyn-footer { background: var(--orvyn-green); color: #fff; margin-top: 4rem; }
.orvyn-footer a { color: rgba(255,255,255,.85); text-decoration: none; display: block; margin: .45rem 0; font-size: .9rem; }
.orvyn-footer a:hover { color: var(--orvyn-orange); }
.orvyn-footer__inner { max-width: 1120px; margin: 0 auto; padding: 3.2rem 1.5rem 2rem; display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 2rem; }
@media (max-width: 768px) { .orvyn-footer__inner { grid-template-columns: 1fr 1fr; } }
.orvyn-footer__name { font-size: 1.5rem; font-weight: 800; margin-bottom: .6rem; }
.orvyn-footer__name span { color: var(--orvyn-orange); }
.orvyn-footer__brand p { font-size: .88rem; opacity: .8; line-height: 1.6; margin: .3rem 0; max-width: 34ch; }
.orvyn-footer__col h4 { font-size: .8rem; text-transform: uppercase; letter-spacing: .12em; opacity: .6; margin: 0 0 .8rem; }
.orvyn-footer__bottom { border-top: 1px solid rgba(255,255,255,.12); text-align: center; padding: 1.2rem; font-size: .8rem; opacity: .6; }

/* ===== 内页(政策/About)可读性 ===== */
.page .entry-content h2 { font-size: 1.25rem; margin: 2rem 0 .6rem; color: var(--orvyn-ink); }
.page .entry-content p, .page .entry-content li { line-height: 1.7; }

/* 首页 hero 顶到 header 下(去掉主内容区顶部留白) */
.home .wp-site-blocks main { margin-top: 0 !important; padding-top: 0 !important; }
.home main > .entry-content, .home .wp-block-post-content { margin-top: 0 !important; }
.home main > * { margin-block-start: 0 !important; }

/* 页眉:logo 加大 + 上下留白收紧 */
.orvyn-brand__img { height: 48px !important; width: auto !important; max-height: 48px !important; }
.wp-site-blocks > header .wp-block-group { padding-top: .7rem !important; padding-bottom: .7rem !important; }
/* 首页 header 与 hero 之间的间隙归零(root 布局 gap/margin 双保险) */
.home .wp-site-blocks { row-gap: 0 !important; }
.home .wp-site-blocks > main { margin-block-start: 0 !important; padding-top: 0 !important; }
.home .wp-block-post-content > *:first-child, .home .entry-content > *:first-child { margin-block-start: 0 !important; }
.home .wp-block-post-content { margin-block-start: 0 !important; }
/* 真凶: 页面模板包裹 group 的 inline padding */
.home main > .wp-block-group { padding-top: 0 !important; padding-bottom: 0 !important; }
.home main { margin-top: 0 !important; }
