*{box-sizing:border-box;margin:0;padding:0;}
body{font-family:'Segoe UI',system-ui,-apple-system,sans-serif;color:var(--pc-text);background:var(--pc-bg);line-height:1.6;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:1240px;margin:0 auto;padding:0 24px;}

.topbar{background:var(--pc-topbar);color:#dfe8e4;font-size:13px;}
.topbar-inner{max-width:1240px;margin:0 auto;padding:9px 24px;display:flex;justify-content:flex-end;gap:28px;align-items:center;flex-wrap:wrap;}
.topbar-inner a{color:#dfe8e4;}
.topbar-inner a:hover{color:var(--pc-accent);}
.topbar-search{background:#fff;border:none;padding:5px 10px;font-size:13px;width:150px;}

.site-header{background:var(--pc-white);border-bottom:1px solid #e7e4da;}
.header-inner{max-width:1240px;margin:0 auto;padding:18px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;}
.header-logo{display:flex;flex-direction:column;}
.header-logo .logo-name{font-size:26px;font-weight:800;color:var(--pc-primary);letter-spacing:.5px;text-transform:lowercase;}
.header-logo .logo-sub{font-size:11px;letter-spacing:2px;color:var(--pc-text-soft);text-transform:uppercase;margin-top:-2px;}

.header-nav{display:flex;gap:32px;flex-wrap:wrap;}
.nav-link{color:var(--pc-primary-dark);font-weight:600;font-size:15px;padding-bottom:4px;border-bottom:2px solid transparent;}
.nav-link:hover{border-bottom:2px solid var(--pc-accent);}

.hero-photo{position:relative;min-height:420px;background-size:cover;background-position:center;display:flex;align-items:flex-end;}
.hero-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg, rgba(0,0,0,.55), rgba(0,0,0,0) 55%);}
.hero-card{position:relative;z-index:1;background:rgba(255,255,255,.94);padding:28px 32px;margin:0 0 40px 40px;max-width:420px;}
.hero-card h1{font-size:28px;color:var(--pc-primary-dark);margin-bottom:14px;line-height:1.25;}
.btn-accent{display:inline-block;background:var(--pc-accent);color:#fff;padding:12px 26px;font-weight:700;font-size:15px;}
.btn-accent:hover{background:var(--pc-accent-dark);}

.mega-strip{background:var(--pc-mega-bg);padding:44px 0;}
.mega-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;max-width:1240px;margin:0 auto;padding:0 24px;}
.mega-col h3{color:#fff;font-size:15px;text-transform:uppercase;letter-spacing:1px;margin-bottom:16px;border-bottom:1px solid rgba(255,255,255,.25);padding-bottom:10px;}
.mega-col a{display:block;color:#dfe8e4;font-size:14px;padding:6px 0;}
.mega-col a:hover{color:var(--pc-accent);}

.product-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;max-width:1240px;margin:0 auto;padding:0 24px;}
.product-card{background:var(--pc-bg-alt);overflow:hidden;}
.product-card img{width:100%;height:170px;object-fit:cover;}
.product-card .pc-title{padding:14px 16px 4px;font-weight:700;color:var(--pc-primary-dark);font-size:15px;}
.product-card .pc-desc{padding:0 16px 16px;font-size:13px;color:var(--pc-text-soft);}

.partner-strip{background:var(--pc-primary-dark);padding:40px 0;}
.partner-strip h2{color:#fff;text-align:center;margin-bottom:24px;}
.partner-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;max-width:1240px;margin:0 auto;padding:0 24px;}
.partner-badge{background:rgba(255,255,255,.08);color:#dfe8e4;text-align:center;padding:18px 8px;font-size:13px;font-weight:700;border:1px solid rgba(255,255,255,.2);}

.section{padding:56px 0;}
.section h2{font-size:26px;color:var(--pc-primary-dark);margin-bottom:22px;text-align:center;}

.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;}

.company-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;max-width:1240px;margin:0 auto;padding:0 24px;}
.company-info-grid h3{font-size:16px;color:var(--pc-primary-dark);margin-bottom:14px;}
.company-info-grid a{display:block;font-size:14px;color:var(--pc-text-soft);padding:5px 0;}
.company-info-grid a:hover{color:var(--pc-accent);}

.quote-block{background:var(--pc-bg-alt);padding:56px 24px;text-align:center;}
.quote-block blockquote{font-size:26px;font-style:italic;color:var(--pc-text);max-width:820px;margin:0 auto;font-family:Georgia,serif;}

.inquiry-form{background:var(--pc-bg-alt);padding:32px;}
.inquiry-form label{display:block;font-size:13px;margin-bottom:6px;color:var(--pc-text-soft);}
.inquiry-form input, .inquiry-form select, .inquiry-form textarea{width:100%;padding:12px;margin-bottom:16px;border:1px solid #ccc7ba;font-family:inherit;font-size:14px;}
.btn-primary{display:inline-block;background:var(--pc-primary);color:#fff;padding:12px 28px;font-weight:700;font-size:15px;border:none;cursor:pointer;}
.btn-primary:hover{background:var(--pc-primary-dark);}

.site-footer{background:var(--pc-footer-bg);margin-top:0;padding:40px 0 0;}
.footer-nav-inner{max-width:1240px;margin:0 auto;padding:0 24px 32px;display:grid;grid-template-columns:repeat(4,1fr);gap:28px;font-size:14px;color:var(--pc-text-soft);}
.footer-nav-inner h3{font-size:15px;color:var(--pc-primary-dark);margin-bottom:12px;}
.footer-nav-inner a{display:block;color:var(--pc-text-soft);padding:4px 0;}
.footer-nav-inner a:hover{color:var(--pc-accent);}
.footer-nav-bottom{border-top:1px solid #e0ddd0;padding:18px 24px;text-align:center;font-size:13px;color:var(--pc-text-soft);}

/* WF article-page footer (simple copyright container, reserved names) */
.footer-inner{max-width:900px;margin:0 auto;padding:24px;text-align:center;}
.footer-bottom{max-width:900px;margin:0 auto;padding:0 24px 24px;text-align:center;font-size:13px;color:var(--pc-text-soft);}

.page-hero{background:var(--pc-bg-alt);padding:48px 0;text-align:center;}
.page-hero h1{font-size:32px;color:var(--pc-primary-dark);margin-bottom:8px;}
.page-hero p{color:var(--pc-text-soft);max-width:640px;margin:0 auto;}

.legal-body{max-width:800px;margin:0 auto;font-size:14px;color:var(--pc-text-soft);}
.legal-body h2{text-align:left;font-size:20px;margin-top:26px;margin-bottom:10px;}

@media(max-width:900px){
  .mega-grid{grid-template-columns:repeat(2,1fr);}
  .product-grid{grid-template-columns:repeat(2,1fr);}
  .partner-grid{grid-template-columns:repeat(3,1fr);}
  .two-col{grid-template-columns:1fr;}
  .company-info-grid{grid-template-columns:repeat(2,1fr);}
  .footer-nav-inner{grid-template-columns:repeat(2,1fr);}
  .header-inner{flex-direction:column;align-items:flex-start;}
}
