/* Homepage-only editorial finish, revision 2. Existing forms and navigation remain intact. */
.home-premium { background:#faf8f3; --gold:#a57c40; --line:#dfd8cb; }
.home-premium main > section[id] { scroll-margin-top:112px; }
.home-premium .section,.home-premium .estimate-builder { padding:88px max(28px,calc((100% - 1240px)/2)); }
.home-premium .section-kicker { font-size:11px; letter-spacing:.16em; line-height:1.6; color:#87652f; }
.home-premium .section-heading { gap:20px 44px; }
.home-premium h2 { font-family:Georgia,serif; font-weight:400; font-size:clamp(32px,3.6vw,50px); line-height:1.13; letter-spacing:-.025em; }
.home-premium h3 { line-height:1.25; }
.home-premium p { line-height:1.7; }
.home-premium .hero { min-height:720px; height:88svh; max-height:960px; }
.home-premium .hero-content { max-width:1240px; width:100%; margin:0 auto; padding:160px 28px 150px; }
.home-premium .hero h1 { max-width:850px; font-size:clamp(44px,5.5vw,80px); line-height:1.06; letter-spacing:-.035em; font-weight:400; }
.home-premium .hero-copy { max-width:540px; font-size:17px; line-height:1.7; }
.home-premium .button,.home-premium .section-link-button { min-height:48px; padding:16px 24px; font-size:12px; font-weight:600; letter-spacing:.065em; border-radius:0; }
.home-premium .hero-panel { box-shadow:none; backdrop-filter:none; color:#fffaf0; }
.home-premium .hero .button.secondary { color:#fffaf0; backdrop-filter:none; background:transparent; border:1px solid #ffffff80; }
.home-premium .trust-strip { background:#eee9df; color:#5b5348; border-bottom:1px solid var(--line); padding:24px 28px; gap:18px; }
.home-premium .trust-strip span { font-size:12px; font-weight:500; letter-spacing:.035em; }
.home-premium .intro { background:#faf8f3; }
.home-premium .intro-grid { gap:50px; }
.home-premium .intro-grid p { color:#686157; font-size:16px; }
.home-premium .services { background:#f2eee6; }
.home-premium .service-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; background:transparent; border:0; }
.home-premium .service-card:nth-child(n) { display:block; }
.home-premium .trust-strip span:nth-child(n) { color:#5b5348; }
.home-premium .service-card { background:transparent; border:0; border-top:1px solid #cfc5b5; box-shadow:none; padding:24px 0; min-height:0; }
.home-premium .service-card h3 { font-family:Georgia,serif; font-weight:400; font-size:25px; }
.home-premium .service-card p { color:#696257; font-size:14px; }
.home-premium .service-icon { display:none; }
.home-premium .service-support { background:transparent; border-top:1px solid #d4cab9; box-shadow:none; margin-top:40px; padding-top:36px; }
.home-premium .materials-teaser { grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:64px; background:#f3efe7; }
.home-premium .materials-teaser .section-heading { display:flex; flex-direction:column; align-items:flex-start; gap:18px; }
.home-premium .materials-teaser h2 { margin:0; }
.home-premium .materials-teaser .section-heading p { margin:0; max-width:430px; color:#686157; }
.home-premium .materials-teaser .section-heading .section-kicker { color:#87652f; }
.home-premium .materials-teaser .section-link-button { margin-top:12px; }
.home-premium .materials-preview-strip { grid-template-columns:1.6fr 1fr; grid-template-rows:1fr 1fr; height:410px; min-height:0; gap:10px; }
.home-premium .materials-preview-strip span { border:0; }
.home-premium .materials-preview-strip span:nth-child(1) { grid-column:1; grid-row:1/-1; }
.home-premium .materials-preview-strip span:nth-child(3) { background:url('assets/flooring/woden-vinyl/woden-vinyl-h03-honey-oak-sample.jpg') center/cover; }
.home-premium .material-palette-caption { font-size:12px; letter-spacing:.05em; color:#746a5b; margin:0; }
.home-premium .process { background:#faf8f3; }
.home-premium .timeline article { border-color:#d8cfbf; }
.home-premium .timeline h3 { font-family:Georgia,serif; font-weight:400; font-size:25px; }
.home-premium .timeline p { font-size:14px; color:#696257; }
.home-premium .site-footer { border-top:1px solid var(--line); }
/* A quieter editorial rhythm: open layouts, fine rules and restrained contrast. */
.home-premium .section-heading { margin-bottom:44px; }
.home-premium .service-card-link:hover { background:transparent; box-shadow:none; transform:none; color:#87652f; }
.home-premium .service-support h3 { font-family:Georgia,serif; font-size:28px; font-weight:400; }
.home-premium #gallery { background:#faf8f3; padding-inline:max(28px,calc((100% - 1240px)/2)); }
.home-premium #gallery .gallery-category-grid { gap:0 32px; }
.home-premium #gallery .gallery-category-card { background:transparent; border:0; border-top:1px solid #d4cbbb; padding:26px 0; min-height:230px; }
.home-premium #gallery .gallery-category-card:hover { transform:none; box-shadow:none; border-color:#96703a; }
.home-premium #gallery .gallery-category-card:last-child { background:#eee9df; color:#211e19; padding:26px; }
.home-premium #gallery .gallery-category-card:last-child h3 { color:#211e19; }
.home-premium #gallery .gallery-category-card:last-child p { color:#696257; }
.home-premium #gallery .gallery-category-card:last-child strong { color:#80602e; }
.home-premium .timeline { gap:32px; }
.home-premium .timeline article { border-right:0; padding:28px 0 0; }
.home-premium .timeline span { font-size:12px; font-weight:500; margin-bottom:20px; }
.home-premium .process-capabilities { margin-top:48px; padding-top:28px; }
.home-premium .process-capabilities h3 { font-family:Georgia,serif; font-weight:400; font-size:28px; }
.home-premium .work-grid { background:transparent; border:0; gap:32px; margin-top:24px; }
.home-premium .work-grid article { background:transparent; min-height:0; padding:0; }
.home-premium .work-grid span { font-size:11px; letter-spacing:.08em; font-weight:500; margin-bottom:12px; }
.home-premium .work-grid h3 { font-family:inherit; font-size:14px; line-height:1.7; font-weight:400; color:#696257; }
.home-premium .cta { padding:88px max(28px,calc((100% - 1240px)/2)); background:#eee9df; }
.home-premium .cta-copy h2 { font-size:clamp(36px,4vw,56px); }
.home-premium .cta-copy > p { color:#696257; max-width:480px; }
.home-premium .cta-points span { background:transparent; border:0; border-bottom:1px solid #c8beae; padding:8px 0; margin-right:14px; font-size:10px; letter-spacing:.08em; font-weight:500; }
.home-premium .contact-card { background:#24231f; box-shadow:none; border:0; }
.home-premium .contact-card::before,.home-premium .contact-card::after { display:none; }
.home-premium .contact-card-header h3 { font-family:Georgia,serif; font-weight:400; }
@media(max-width:1000px) { .home-premium .service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(min-width:1800px) { .home-premium .hero-content { padding-left:0; padding-right:0; } }
@media(max-width:900px) {
 .home-premium .section,.home-premium .estimate-builder { padding:60px 28px; }
 .home-premium .materials-teaser { grid-template-columns:1fr; gap:30px; }
 .home-premium .materials-teaser .section-heading p { max-width:600px; }
 .home-premium .hero { min-height:660px; height:auto; }
 .home-premium .hero-content { padding:160px 28px 180px; }
 .home-premium .cta { grid-template-columns:1fr; padding:60px 28px; }
}
@media(max-width:600px) {
 .home-premium .section,.home-premium .estimate-builder { padding:48px 20px; }
 .home-premium h2 { font-size:34px; }
 .home-premium .hero-content { padding:140px 20px 155px; }
 .home-premium .hero h1 { font-size:46px; }
 .home-premium .hero-copy { font-size:16px; }
 .home-premium .hero-actions { gap:12px; }
 .home-premium .hero-actions .button { padding:14px 10px; font-size:11px; }
 .home-premium .intro-grid { gap:24px; }
 .home-premium .materials-preview-strip { height:300px; grid-template-columns:1.4fr 1fr; grid-template-rows:1fr 1fr; }
 .home-premium .service-grid { grid-template-columns:1fr; gap:8px; }
 .home-premium .service-card { padding:24px 0; }
 .home-premium #gallery { padding:48px 20px; }
 .home-premium #gallery .gallery-category-card { min-height:0; gap:12px; padding:24px 0; }
 .home-premium #gallery .gallery-category-card:last-child { padding:24px; }
 .home-premium .section-heading { margin-bottom:28px; }
 .home-premium .timeline { gap:24px; }
 .home-premium .cta { padding:48px 20px; }
 .home-premium .trust-strip { padding:22px 20px; }
}
