/* HUAHONG DECOR — mdfpanelling.com — v3 (competitor-pattern redesign) */
:root{--paper:#faf7f2; --paper-2:#f3ede3; --ink:#211a14; --ink-soft:#5c5347;
  --line:#e3dacb; --walnut:#9a6b3f; --walnut-deep:#7c5430; --felt:#26221f;
  --card:#fffdf9; --radius:14px;}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:"Archivo",system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:16.5px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:"Fraunces",Georgia,serif;font-weight:600;line-height:1.12;margin:0 0 .45em}
h1{font-size:clamp(2rem,4.6vw,3.4rem)}
h2{font-size:clamp(1.55rem,3vw,2.3rem)}
h3{font-size:1.16rem}
p{margin:0 0 1em}
a{color:var(--walnut-deep)}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--walnut);outline-offset:2px}
/* announcement + header */
.announce{background:var(--felt);color:#e9dfc9;text-align:center;font-size:.83rem;
  letter-spacing:.04em;padding:8px 16px}
.announce b{color:#fff}
.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:28px;
  padding:14px clamp(16px,4vw,44px);background:rgba(250,247,242,.94);backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line)}
.brand{font-weight:700;letter-spacing:.14em;font-size:1.02rem;color:var(--ink);text-decoration:none;white-space:nowrap}
.site-nav{display:flex;gap:22px;flex-wrap:wrap}
.site-nav a{color:var(--ink);text-decoration:none;font-size:.95rem;font-weight:500}
.header-actions{margin-left:auto;display:flex;gap:10px;white-space:nowrap}
.button{display:inline-block;background:var(--ink);color:#fff;text-decoration:none;font-weight:600;
  padding:13px 24px;border-radius:999px;border:1px solid var(--ink);cursor:pointer;font-size:.98rem}
.button-light{background:#fff;color:var(--ink);border-color:#fff}
.button-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.85)}
.button-outline-dark{background:transparent;color:var(--ink);border-color:var(--ink)}
.button-ghost{background:transparent;color:var(--ink);border-color:var(--line)}
.button-small{padding:9px 18px;font-size:.9rem}
.hero-ctas{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
/* hero */
.hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;color:#fff;overflow:hidden}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hero-shade{position:absolute;inset:0;background:linear-gradient(78deg,rgba(24,17,10,.72) 22%,rgba(24,17,10,.28) 55%,rgba(24,17,10,.05) 80%)}
.hero-copy{position:relative;padding:0 clamp(16px,5vw,64px) clamp(44px,7vh,84px);max-width:780px}
.eyebrow,.kicker{letter-spacing:.22em;text-transform:uppercase;font-size:.78rem;font-weight:700;margin:0 0 14px}
.hero .eyebrow{color:#ecd9ac}
.hero h1{font-size:clamp(2.6rem,6.2vw,4.6rem);margin-bottom:.3em}
.hero-sub{font-size:1.13rem;max-width:560px;color:#f3ead9}
/* USP strip */
.usp-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-bottom:1px solid var(--line);background:var(--card)}
.usp-item{padding:20px clamp(14px,2.5vw,30px);border-left:1px solid var(--line)}
.usp-item:first-child{border-left:none}
.usp-item b{display:block;font-size:.98rem}
.usp-item span{font-size:.87rem;color:var(--ink-soft)}
/* sections */
.section{padding:clamp(52px,8vh,92px) clamp(16px,5vw,64px);max-width:1360px;margin:0 auto}
.section-tint{background:var(--paper-2);max-width:none}
.section-tint>*{max-width:1232px;margin-left:auto;margin-right:auto}
.section-head{max-width:720px;margin-bottom:34px}
.section-head .kicker{color:var(--walnut)}
.section-lede{color:var(--ink-soft);font-size:1.05rem}
.fine-note{font-size:.88rem;color:var(--ink-soft)}
/* pattern / room cards */
.profile-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.profile-card{position:relative;border-radius:var(--radius);overflow:hidden;text-decoration:none;color:#fff;min-height:340px;display:flex;align-items:flex-end}
.profile-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s}
.profile-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(20,14,8,.78))}
.profile-card-text{position:relative;z-index:1;padding:22px}
.profile-name{display:block;font-family:"Fraunces",serif;font-size:1.5rem;font-weight:600}
.profile-line{display:block;font-size:.92rem;color:#eee3cd;max-width:300px}
/* product card grid + sidebar */
.layout-side{display:grid;grid-template-columns:210px 1fr;gap:38px;align-items:start}
.side-nav{position:sticky;top:96px;display:flex;flex-direction:column;gap:2px}
.side-nav a{padding:9px 12px;border-radius:9px;color:var(--ink);text-decoration:none;font-weight:500;font-size:.96rem}
.side-nav .side-note{font-size:.84rem;color:var(--ink-soft);padding:12px}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:14px}
.layout-side>*,.card-grid>*,.quote-form>*,.profile-cards>*,.trade-grid>*,.steps>*,.app-grid>*,.swatch-wall>*{min-width:0}
.p-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;text-decoration:none;color:var(--ink);display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}
.p-visual{aspect-ratio:4/3;display:block}
.p-visual svg{width:100%;height:100%;display:block}
.p-visual img{width:100%;height:100%;object-fit:cover;display:block}
.band-img{width:100%;max-width:1180px;margin:26px auto 0;display:block;border-radius:18px;aspect-ratio:21/9;object-fit:cover}
.line-block{display:grid;grid-template-columns:5fr 7fr;gap:30px;align-items:center;padding:30px 0;border-bottom:1px solid var(--line)}
.line-block img{width:100%;border-radius:16px;aspect-ratio:4/3;object-fit:cover;display:block}
.line-block h2{margin-bottom:8px}
.line-facts{margin:12px 0 14px;padding-left:18px;line-height:1.65}
@media (max-width:760px){.line-block{grid-template-columns:1fr}}
.p-info{padding:16px 18px 18px;display:flex;flex-direction:column;gap:3px}
.p-code{font-weight:700;font-size:1.13rem;letter-spacing:.01em}
.p-type{font-size:.9rem;color:var(--ink-soft)}
.p-size{font-size:.9rem;font-weight:600;color:var(--walnut-deep);margin-top:5px}
.p-badge{align-self:flex-start;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  background:var(--paper-2);border:1px solid var(--line);border-radius:999px;padding:3px 10px;margin-top:8px;color:var(--ink-soft)}
.group-head{margin:36px 0 16px}
.group-head:first-child{margin-top:0}
/* tables */
.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--card)}
.size-table{border-collapse:collapse;width:100%;min-width:640px;font-size:.95rem}
.size-table th{text-align:left;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);
  padding:13px 16px;border-bottom:1px solid var(--line);background:var(--paper-2)}
.size-table td{padding:11px 16px;border-bottom:1px solid #eee5d4}
.size-table tr:last-child td{border-bottom:none}
.size-table td:first-child{font-weight:700}
.size-table a{color:var(--ink)}
/* anatomy */
.anatomy-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:44px;align-items:center}
.anatomy-figure{margin:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.anatomy-copy p{color:var(--ink-soft)}
.anatomy-copy b{color:var(--ink)}
/* fact list / specs */
.fact-list{margin:0}
.fact-list>div{display:grid;grid-template-columns:170px 1fr;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}
.fact-list dt{font-weight:700;font-size:.93rem}
.fact-list dd{margin:0;color:var(--ink-soft);font-size:.96rem}
/* swatches */
.swatch-wall{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.family-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.family-card h3{margin-bottom:4px}
.family-card p{color:var(--ink-soft);font-size:.93rem}
.swatches{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px}
.swatch{display:flex;flex-direction:column;align-items:center;gap:6px;width:64px;text-align:center}
.swatch i{width:44px;height:44px;border-radius:50%;border:1px solid rgba(0,0,0,.14);display:block;background:var(--tone)}
.swatch span{font-size:.7rem;color:var(--ink-soft);line-height:1.25;word-break:break-all}
.swatch-row{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:16px 0 4px}
.swatch-row i{width:26px;height:26px;border-radius:50%;border:1px solid rgba(0,0,0,.14);display:block}
.swatch-row a{font-size:.9rem;font-weight:600}
/* samples band */
.samples-band{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:center;background:var(--felt);color:#f3ead9;
  border-radius:18px;padding:clamp(28px,4vw,48px)}
.samples-band h2{color:#fff}
.samples-band p{color:#d9cdb4}
.samples-swatches{display:flex;gap:10px;flex-wrap:wrap}
.samples-swatches i{width:52px;height:52px;border-radius:12px;border:1px solid rgba(255,255,255,.25);display:block}
/* applications */
.app-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.app-card{margin:0;position:relative;border-radius:var(--radius);overflow:hidden;min-height:300px;display:flex;align-items:flex-end;color:#fff}
.app-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.app-card figcaption{position:relative;z-index:1;padding:22px;background:linear-gradient(180deg,transparent,rgba(20,14,8,.82) 38%)}
.app-card figcaption b{display:block;font-family:"Fraunces",serif;font-size:1.3rem;margin-bottom:4px}
.app-card figcaption span{font-size:.93rem;color:#eee3cd}
.app-card-text{background:var(--felt);padding:26px;flex-direction:column;align-items:flex-start;justify-content:center;gap:10px}
.app-card-text b{font-family:"Fraunces",serif;font-size:1.3rem}
.app-card-text span{color:#d9cdb4;font-size:.95rem}
/* steps */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.steps li{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;gap:14px;align-items:flex-start}
.steps b{font-family:"Fraunces",serif;font-size:1.5rem;color:var(--walnut);line-height:1}
.tools-line{margin-top:26px;color:var(--ink-soft)}
.tools-line span{font-weight:700;color:var(--ink)}
/* trade cards / faq / accordions */
.trade-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.trade-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:26px}
.trade-card p{color:var(--ink-soft);font-size:.95rem}
.trade-need{font-weight:600;color:var(--ink)!important;font-size:.9rem!important;border-top:1px solid var(--line);padding-top:12px}
.faq-list{display:flex;flex-direction:column;gap:10px;max-width:860px}
.faq-list details{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px 20px}
.faq-list summary{font-weight:700;cursor:pointer;font-size:1rem}
.faq-list details p{margin:10px 0 2px;color:var(--ink-soft)}
.acc{margin-top:26px;border-top:1px solid var(--line)}
.acc details{border-bottom:1px solid var(--line);padding:14px 2px}
.acc summary{font-weight:700;cursor:pointer}
.acc details p,.acc details li{color:var(--ink-soft);font-size:.95rem}
.acc ol{margin:8px 0;padding-left:20px}
/* inner pages */
.crumb{padding:26px clamp(16px,5vw,64px) 0;max-width:1360px;margin:0 auto;font-size:.88rem;color:var(--ink-soft)}
.crumb a{color:var(--ink-soft)}
.inner-hero{padding:18px clamp(16px,5vw,64px) 8px;max-width:1360px;margin:0 auto}
.inner-hero .kicker{color:var(--walnut)}
.inner-hero .lede{font-size:1.08rem;color:var(--ink-soft);max-width:700px}
main>.section{padding-top:30px}
/* product page */
.product-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(26px,4vw,56px);
  padding:26px clamp(16px,5vw,64px) 70px;max-width:1360px;margin:0 auto;align-items:start}
.p-visual-lg{border-radius:18px;overflow:hidden;border:1px solid var(--line);position:sticky;top:96px}
.p-visual-lg svg{width:100%;height:auto;display:block}
.p-visual-lg img{width:100%;aspect-ratio:6/5;object-fit:cover;display:block}
.product-info .kicker{color:var(--walnut)}
.product-info .lede{color:var(--ink-soft);font-size:1.03rem}
.notice{background:#fdf6e0;border:1px solid #e8d48b;border-radius:12px;padding:16px 18px;margin-bottom:16px}
.notice p{margin:4px 0 0;color:#6b5b23;font-size:.93rem}
.usp-mini{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px;font-size:.88rem;color:var(--ink-soft)}
.usp-mini span::before{content:"✓ ";color:var(--walnut-deep);font-weight:700}
.sibling-links{display:flex;gap:8px;flex-wrap:wrap}
.sibling-links a{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:6px 14px;
  text-decoration:none;color:var(--ink);font-size:.88rem;font-weight:600}
/* CTA band */
.cta-band{background:var(--paper-2);border-radius:18px;display:flex;justify-content:space-between;align-items:center;gap:26px;flex-wrap:wrap}
.cta-band p{color:var(--ink-soft);margin:0}
section.cta-band{padding:clamp(28px,4vw,44px)}
/* contact form */
.quote-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:start;max-width:1232px}
.quote-form{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.field{display:flex;flex-direction:column;gap:6px}
.field label{font-weight:600;font-size:.92rem}
.field input,.field textarea{font:inherit;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink)}
.field input:focus,.field textarea:focus{border-color:var(--walnut);outline:none}
.field [aria-invalid="true"]{border-color:#b3261e}
.field-error{display:none;color:#b3261e;font-size:.83rem}
.field.show-error .field-error{display:block}
.form-wide{grid-column:1/-1}
.form-status{font-size:.92rem;color:var(--walnut-deep);min-height:1.2em;margin:0}
/* footer */
.site-footer{background:var(--felt);color:#cfc3ab;margin-top:0}
.footer-inner{max-width:1360px;margin:0 auto;padding:56px clamp(16px,5vw,64px) 30px}
.footer-tag{font-family:"Fraunces",serif;font-size:clamp(1.5rem,3vw,2.2rem);color:#fff;max-width:560px;line-height:1.2;margin-bottom:36px}
.footer-cols{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;border-top:1px solid rgba(255,255,255,.14);padding-top:30px}
.footer-cols h4{color:#fff;font-size:.85rem;letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px}
.footer-cols a{display:block;color:#cfc3ab;text-decoration:none;font-size:.93rem;padding:3px 0}
.footer-cols p{font-size:.93rem}
.footer-bottom{max-width:1360px;margin:0 auto;padding:18px clamp(16px,5vw,64px) 30px;border-top:1px solid rgba(255,255,255,.14);
  font-size:.85rem;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
.footer-bottom a{color:#cfc3ab}
/* reveal */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}
html{scroll-behavior:auto}}
@media (max-width:960px){.usp-strip{grid-template-columns:1fr 1fr}
.usp-item{border-top:1px solid var(--line)}
.profile-cards,.card-grid,.trade-grid,.steps{grid-template-columns:1fr 1fr}
.anatomy-grid,.product-hero,.quote-grid,.samples-band{grid-template-columns:1fr}
.p-visual-lg{position:static}
.layout-side{grid-template-columns:1fr}
.side-nav{position:static;flex-direction:row;flex-wrap:wrap}
.footer-cols{grid-template-columns:1fr 1fr}
.site-nav{display:none}}
@media (max-width:560px){.profile-cards,.card-grid,.trade-grid,.steps,.app-grid,.swatch-wall{grid-template-columns:1fr}
.header-actions .button-ghost{display:none}
.fact-list>div{grid-template-columns:1fr;gap:2px}
.quote-form{grid-template-columns:1fr}}
/* v3.1 product prose + FAQ */
.product-more{padding-top:6px}
.prose-grid{display:grid;grid-template-columns:1fr 1fr;gap:34px}
.prose-grid h2{font-size:24px;margin:0 0 10px}
.prose-grid p{color:var(--ink-2);line-height:1.75;margin:0 0 12px}
.faq-block{margin-top:30px;border-top:1px solid var(--line);padding-top:24px}
.faq-block h2{font-size:24px;margin:0 0 14px}
.faq-block h3{font-size:16.5px;margin:18px 0 4px}
.faq-block p{color:var(--ink-2);line-height:1.7;margin:0;max-width:820px}
.faq-block a{color:var(--walnut);font-weight:600}
@media(max-width:760px){.prose-grid{grid-template-columns:1fr}}

@media (hover:hover) and (pointer:fine){
.site-nav a:hover,.site-nav a[aria-current="page"]{color:var(--walnut-deep);text-decoration:underline;text-underline-offset:5px}
.button:hover{background:var(--walnut-deep);border-color:var(--walnut-deep)}
.button-light:hover{background:var(--paper-2);color:var(--ink)}
.button-outline:hover{background:rgba(255,255,255,.14);color:#fff}
.button-outline-dark:hover{background:var(--ink);color:#fff}
.button-ghost:hover{border-color:var(--ink);background:transparent;color:var(--ink)}
.profile-card:hover img{transform:scale(1.045)}
.side-nav a:hover{background:var(--paper-2);color:var(--walnut-deep)}
.p-card:hover{box-shadow:0 14px 34px rgba(60,42,20,.13);transform:translateY(-3px)}
.size-table a:hover{color:var(--walnut-deep)}
.sibling-links a:hover{border-color:var(--walnut);color:var(--walnut-deep)}
.footer-cols a:hover{color:#fff}
}
