/* Whole-page production pass: layout rhythm, surface system and component geometry. */
:root { --page:#FFFFFF; --section:#FAFAFA; --line:#E9E7E4; --copy:#6C7480; --wine:#6E2A3A; --ink:#14181F; --gold:#BE9846; }
body { background:var(--page); color:var(--ink); font-family:"Noto Sans SC",Inter,sans-serif; }
.section-wrap { max-width:1538px; padding:132px 0; }
.about { grid-template-columns:632px minmax(0,1fr); gap:118px; align-items:center; }
.about-image { height:620px; border-radius:20px; background-image:url('https://images.unsplash.com/photo-1521737711867-e3b97375f902?auto=format&fit=crop&w=1200&q=88'); box-shadow:0 20px 38px rgba(20,24,31,.09); overflow:visible; }
.about-image:after { display:none; }
.about-float { position:absolute; right:-31px; bottom:-26px; display:grid; gap:2px; min-width:205px; padding:22px; border-radius:16px; color:var(--wine); background:#FFF; box-shadow:0 13px 25px rgba(20,24,31,.15); font-size:17px; font-weight:800; }
.about-float span { color:#77808C; font-size:11px; font-weight:500; }
.about-copy .eyebrow,.services .eyebrow,.contact-heading .eyebrow { color:var(--wine); font-size:12px; font-weight:700; letter-spacing:0; text-transform:none; }
.about h2,.services h2,.contact h2 { color:var(--ink); font-family:"Noto Sans SC",sans-serif; font-size:38px; font-weight:800; letter-spacing:-.055em; line-height:1.3; }
.section-rule { display:block; width:65px; height:4px; margin:20px 0 27px; border-radius:4px; background:var(--gold); }
.about-copy>p:not(.eyebrow) { max-width:590px; margin:0 0 14px; color:var(--copy); font-size:14px; line-height:1.85; }
.about ul { margin:27px 0 0; display:grid; gap:11px; }
.about li { border:0; padding:0; color:#353A42; font-size:13px; font-weight:600; }
.about li:before { display:inline-grid; width:21px; height:21px; margin-right:11px; place-items:center; border-radius:50%; color:var(--wine); background:#F4ECEE; font-size:12px; }
.services { max-width:none; padding:116px max(24px,calc((100vw - 1538px)/2)) 138px; background:var(--section); }
.section-heading { display:block; margin:0 auto 55px; text-align:center; }
.section-heading .eyebrow { margin-bottom:16px; }
.section-heading .section-rule { margin:20px auto; }
.section-heading>p { max-width:none; color:#7B8490; font-size:13px; }
.service-grid { max-width:1538px; margin:0 auto; grid-template-columns:repeat(3,minmax(0,1fr)); gap:25px; border:0; background:transparent; }
.service-card { display:block; min-height:0; padding:0 0 24px; overflow:hidden; border:1px solid #F0EEEE; border-radius:14px; background:#FFF; box-shadow:0 8px 19px rgba(20,24,31,.055); }
.service-media { position:relative; height:158px; background:var(--card-image) center/cover; }
.service-media:after { content:''; position:absolute; inset:0; background:linear-gradient(180deg,transparent 44%,rgba(20,24,31,.25)); }
.service-icon { position:absolute; z-index:1; top:17px; left:17px; display:grid; width:43px; height:43px; place-items:center; border-radius:11px; color:var(--wine); background:#FFF; box-shadow:0 6px 12px rgba(20,24,31,.1); font-size:19px; }
.service-card h3 { margin:19px 23px 9px; color:var(--ink); font-family:"Noto Sans SC",sans-serif; font-size:17px; font-weight:800; line-height:1.3; }
.service-card p { min-height:37px; margin:0 23px 17px; color:#737D89; font-size:12px; line-height:1.65; }
.service-card button { margin:0 23px; color:var(--wine); font-family:"Noto Sans SC",sans-serif; font-size:12px; font-weight:800; }
.metrics { display:block; padding:68px max(24px,calc((100vw - 1538px)/2)) 65px; color:#FFF; background:linear-gradient(rgba(91,25,42,.90),rgba(91,25,42,.90)),url('https://images.unsplash.com/photo-1518391846015-55a9cc003b25?auto=format&fit=crop&w=1800&q=80') center/cover; }
.metrics div { display:block; border:0; padding:0; }
.metrics-title { text-align:center; }
.metrics-title p { margin:0 0 8px; color:#F5E7EA; font-size:12px; font-weight:700; }
.metrics-title h2 { margin:0; color:#FFF; font-size:27px; font-weight:800; letter-spacing:-.04em; }
.metric-values { max-width:1300px; margin:46px auto 0; display:grid !important; grid-template-columns:repeat(4,1fr); }
.metric-values>div { display:grid; justify-items:center; gap:8px; border:0; padding:0; }
.metric-values b { color:#FFF; font-family:"Noto Sans SC",sans-serif; font-size:41px; font-weight:800; line-height:1; }
.metric-values span { color:#F3DBE0; font-size:13px; }
.contact { max-width:1538px; display:block; padding:130px 0 138px; }
.contact-heading { max-width:520px; margin:0 auto 54px; text-align:center; }
.contact-heading .eyebrow { margin-bottom:14px; }
.contact-heading .section-rule { margin:20px auto; }
.contact-heading>p:last-child { margin:0; color:#7B8490; font-size:13px; }
.contact-panels { display:grid; grid-template-columns:1fr 1fr; gap:29px; }
.contact-copy { min-height:441px; padding:38px 42px; border-radius:16px; background:#FAFAFA; }
.contact-copy h3 { margin:0 0 25px; color:var(--ink); font-size:18px; font-weight:800; }
.contact-list { margin:0; gap:16px; }
.contact-list a { grid-template-columns:80px 1fr; gap:12px; align-items:start; color:var(--copy); font-size:12px; }
.contact-list b { color:#7A818B; font-size:11px; letter-spacing:0; }
.contact-list span { color:#4B525B; font-weight:600; }
.contact-social { display:flex; gap:9px; margin:21px 0 17px; padding-top:17px; border-top:1px solid #E9E7E4; }
.contact-social span { min-width:29px; height:29px; display:grid; place-items:center; padding:0 8px; border:1px solid #E6E4E2; border-radius:18px; color:#3D444C; font-size:11px; font-weight:700; }
.contact-form { min-height:441px; padding:35px 38px; border-radius:16px; background:#FFF; box-shadow:0 14px 29px rgba(20,24,31,.09); }
.form-split { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.contact-form label { gap:7px; color:#30363E; font-family:"Noto Sans SC",sans-serif; font-size:12px; font-weight:700; }
.contact-form input,.contact-form textarea { min-height:43px; border:1px solid #E5E5E5; border-radius:7px; padding:10px 12px; background:#FFF; font-family:inherit; }
.contact-form textarea { min-height:105px; }
.contact-form .button { min-height:44px; border-radius:8px; background:var(--wine); color:#FFF; font-family:"Noto Sans SC",sans-serif; font-size:13px; font-weight:700; }
.contact-form .form-note { display:none; }
@media (max-width:1080px){.section-wrap,.contact{margin-left:40px;margin-right:40px}.about{grid-template-columns:1fr 1fr;gap:68px}.about-image{height:520px}.services{padding-left:40px;padding-right:40px}.contact{padding-top:95px}.service-grid{gap:18px}.service-media{height:135px}}
@media (max-width:760px){.section-wrap,.contact{margin:0;padding:78px 22px}.about{grid-template-columns:1fr;gap:48px}.about-image{height:370px;border-radius:15px}.about-float{right:12px;bottom:-20px;min-width:170px;padding:16px;font-size:14px}.about h2,.services h2,.contact h2{font-size:28px}.section-rule{width:52px;height:3px;margin:16px 0 21px}.services{padding:78px 22px}.section-heading{margin-bottom:35px}.service-grid{grid-template-columns:1fr;gap:16px}.service-media{height:174px}.service-card h3{font-size:16px}.metrics{padding:56px 22px}.metrics-title h2{font-size:23px}.metric-values{grid-template-columns:1fr 1fr;gap:32px 10px;margin-top:35px}.metric-values b{font-size:33px}.contact-heading{margin-bottom:34px}.contact-panels{grid-template-columns:1fr;gap:19px}.contact-copy,.contact-form{min-height:0;padding:27px 23px}.form-split{grid-template-columns:1fr}.contact-form textarea{min-height:120px}}
