.fence-page .site-header { margin-bottom:18px; }
.fence-page .garden-workspace { grid-template-columns:1fr; }
.fence-page .garden-controls { padding:0 30px 28px; border-right:0; }
.fence-page .garden-preview { border-top:1px solid var(--line); }
.fence-breadcrumb { display:flex; align-items:center; gap:8px; margin:6px 0 0; color:var(--muted); font-size:11px; }
.fence-breadcrumb a { color:var(--ink); text-underline-offset:3px; }
.fence-sample { display:grid; grid-template-columns:minmax(230px,.62fr) minmax(0,1.38fr); gap:28px; align-items:start; margin:24px 0; padding:clamp(20px,4vw,32px); border:1px solid var(--line); background:#f7f6ef; }
.fence-sample h2 { margin:10px 0 16px; max-width:560px; font:400 clamp(30px,3.4vw,42px)/1.12 Georgia,"Times New Roman",serif; }
.fence-sample-copy .eyebrow { text-transform:none; letter-spacing:0; color:var(--green-dark); font-size:13px; }
.fence-sample-copy > p:not(.eyebrow) { margin:0 0 16px; color:var(--muted); font-size:15px; line-height:1.65; }
.fence-sample-copy .fence-sample-note { padding-left:13px; border-left:3px solid var(--accent); font-size:12px; }
.fence-sample-copy .button { margin-top:5px; }
.fence-sample-images { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; min-width:0; }
.fence-sample-images figure { display:flex; flex-direction:column; gap:10px; margin:0; min-width:0; }
.fence-sample-frame { position:relative; width:100%; aspect-ratio:3 / 4; overflow:hidden; border:1px solid #c5cbbf; background:#e5e7dc; }
.fence-sample-images img { position:absolute; inset:0; display:block; width:100%; height:100%; object-fit:contain; }
.fence-sample-images figcaption { display:grid; gap:3px; min-height:44px; color:var(--ink); font-size:14px; line-height:1.35; }
.fence-sample-images figcaption strong { font-weight:700; }
.fence-sample-images figcaption span { color:var(--muted); font-size:12px; }
.fence-hero { display:grid; grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr); gap:54px; align-items:center; padding:30px 0 35px; }
.fence-hero h1 { max-width:760px; margin:10px 0 20px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(44px,6vw,79px); font-weight:400; line-height:.96; letter-spacing:-3.5px; }
.fence-hero > div:first-child > p:not(.eyebrow) { max-width:650px; margin:0; color:var(--muted); font-size:17px; line-height:1.75; }
.fence-hero .fence-product-boundary { display:inline-block; margin-top:15px !important; padding:8px 11px; border:1px solid #b9c6bb; background:#f4f4eb; color:var(--ink) !important; font-size:12px !important; line-height:1.4 !important; }
.fence-tiktok-note { max-width:650px; margin-top:11px; padding:11px 13px; border-left:3px solid var(--accent); background:#fff6e8; color:var(--muted); font-size:12px; line-height:1.55; }
.fence-tiktok-note strong { color:var(--ink); }
.fence-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:20px; margin-top:26px; }
.fence-hero-actions > a:not(.button) { color:var(--ink); font-size:13px; font-weight:700; text-underline-offset:5px; }
.fence-lattice-card { padding:22px; border:1px solid #c8cebf; background:#eaede1; color:#31483d; box-shadow:12px 12px 0 #d6dacd; }
.fence-lattice-card svg { display:block; width:100%; height:auto; background:linear-gradient(150deg,#f9f8f0,#dfe5d7); }
.fence-lattice-card p { display:flex; justify-content:space-between; gap:16px; margin:17px 0 0; font-size:12px; }
.fence-lattice-card p span { max-width:180px; color:var(--muted); text-align:right; }
.fence-outcomes { display:grid; grid-template-columns:minmax(260px,.8fr) minmax(0,1.4fr); gap:34px; margin:28px 0; padding:30px; border:1px solid #c9d0c3; background:#fffefa; }
.fence-outcomes h2 { margin:7px 0 12px; font:400 clamp(28px,3.4vw,43px)/1.08 Georgia,"Times New Roman",serif; }
.fence-outcomes > div > p:last-child { max-width:470px; margin:0; color:var(--muted); font-size:13px; line-height:1.65; }
.fence-outcomes ol { display:grid; grid-template-columns:1fr 1fr; gap:0; margin:0; padding:0; list-style:none; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.fence-outcomes li { display:grid; grid-template-columns:30px 1fr; gap:10px; padding:17px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--muted); font-size:12px; line-height:1.5; }
.fence-outcomes li > strong { color:var(--accent); font-size:10px; }
.fence-outcomes li b { display:block; margin-bottom:4px; color:var(--ink); font-size:13px; }
.fence-fit { margin:35px 0 28px; padding:30px; border:1px solid #c9d0c3; background:#f4f4eb; }
.fence-fit > h2 { max-width:770px; margin:7px 0 24px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(27px,4vw,42px); font-weight:400; line-height:1.14; }
.fence-fit > div { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border-top:1px solid #cdd3c8; }
.fence-fit article { padding:22px 24px 0 0; }
.fence-fit article + article { padding-left:24px; border-left:1px solid #cdd3c8; }
.fence-fit article strong { color:var(--accent); font-size:11px; }
.fence-fit article h3 { margin:10px 0 7px; font-size:16px; }
.fence-fit article p { margin:0; color:var(--muted); font-size:12px; line-height:1.65; }
.fence-choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.fence-measurement-warning { margin:0 0 15px; padding:13px 15px; border-left:3px solid var(--accent); background:#fff8ed; color:var(--muted); font-size:13px; line-height:1.55; }
.fence-measurement-warning strong { color:var(--ink); }
.fence-dimension-grid { display:grid; grid-template-columns:1fr 1fr minmax(100px,.5fr); gap:12px; }
.fence-product-sizes { margin:16px 0; padding:15px; border:1px solid #c9d0c3; background:#f8f8f1; }
.fence-product-sizes legend { padding:0 7px; font-size:14px; font-weight:700; }
.fence-product-sizes > p { margin:0 0 12px; color:var(--muted); font-size:12px; line-height:1.55; }
.fence-product-size-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.fence-size-card { display:grid; grid-template-columns:1fr 1fr; gap:9px; padding:13px; border:1px solid #d2d7cd; background:#fffefa; }
.fence-size-card > strong { grid-column:1 / -1; font-size:13px; }
.fence-size-card .field span { font-size:11px; }
.fence-purchase-grid { display:grid; grid-template-columns:1.35fr 1.05fr .8fr .6fr; gap:12px; margin-bottom:16px; }
.fence-fit-result { margin:17px 0; padding:20px; border:1px solid #bdc9bf; background:#eef2e9; }
.fence-fit-result[data-status="one-panel-covers"] { border-color:#7e9f88; background:#e9f1e7; }
.fence-fit-result[data-status="no-listed-state-covers"] { border-color:#c49a61; background:#fff6e8; }
.fence-fit-result h3 { margin:4px 0 6px; font:400 23px/1.18 Georgia,"Times New Roman",serif; }
.fence-fit-result > div:first-child > p:last-child { margin:0 0 15px; color:var(--muted); font-size:12px; line-height:1.55; }
.fence-fit-table-wrap { overflow-x:auto; }
.fence-fit-result table { width:100%; border-collapse:collapse; background:#fffefa; font-size:12px; }
.fence-fit-result th,.fence-fit-result td { padding:10px; border:1px solid #d5dbd2; text-align:left; }
.fence-fit-result thead th { color:var(--muted); font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.fence-fit-result tbody tr.is-covering { background:#edf6ea; }
.fence-panel-count { margin:14px 0 0; font-weight:700; line-height:1.55; }
.fence-fit-method { margin:8px 0 0; color:var(--muted); font-size:11px; line-height:1.55; }
.fence-fit-checklist { margin-top:18px; padding:18px; border:1px solid #c9d0c3; background:#f4f4eb; }
.fence-fit-checklist h3 { margin:0 0 10px; font-size:17px; }
.fence-fit-checklist ul { margin:0; padding-left:19px; color:var(--ink); font-size:13px; line-height:1.65; }
.fence-fit-checklist p { margin:11px 0 0; color:var(--muted); font-size:12px; line-height:1.55; }
.fence-safety-note { margin-top:25px; padding:18px; border-left:3px solid var(--accent); background:#fff8ed; }
.fence-safety-note h3 { margin:0 0 9px; font-size:16px; }
.fence-safety-note ul { margin:0; padding-left:18px; color:var(--muted); font-size:12px; line-height:1.75; }
.fence-safety-note p { margin:10px 0 0; color:var(--muted); font-size:12px; line-height:1.65; }
.fence-pricing { display:grid; grid-template-columns:minmax(0,1.2fr) repeat(2,minmax(230px,.8fr)); gap:20px; align-items:stretch; margin:34px 0; padding:34px; color:#fffefa; background:var(--green-dark); }
.fence-pricing > div { padding-right:22px; }
.fence-pricing h2 { max-width:430px; margin:8px 0 13px; font-family:Georgia,"Times New Roman",serif; font-size:38px; font-weight:400; line-height:1.05; }
.fence-pricing > div > p:last-child { max-width:540px; color:#d6e1d4; font-size:13px; line-height:1.7; }
.fence-pricing article { display:flex; flex-direction:column; align-items:flex-start; padding:23px; border:1px solid #6e8076; background:#2a473c; }
.fence-pricing article > span { color:#c6d3c5; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.fence-pricing article > strong { display:block; margin:10px 0 9px; font-family:Georgia,"Times New Roman",serif; font-size:23px; font-weight:400; }
.fence-pricing article p { flex:1; margin:0 0 19px; color:#d6e1d4; font-size:12px; line-height:1.65; }
.fence-pricing article .button { width:100%; border-color:#dfe7dc; text-align:center; }
.fence-pricing article .button-secondary { color:#fffefa; background:transparent; }
.fence-dimension-guide { margin-top:34px; }
.fence-dimension-guide-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,.78fr); gap:42px; align-items:end; }
.fence-dimension-guide-heading h2 { max-width:650px; margin:7px 0 0; font:400 clamp(29px,4vw,44px)/1.08 Georgia,"Times New Roman",serif; }
.fence-dimension-guide-heading > p { margin:0; color:var(--muted); font-size:13px; line-height:1.75; }
.fence-example { display:grid; grid-template-columns:minmax(190px,.55fr) minmax(0,1.45fr); gap:28px; margin:24px 0 20px; padding:23px; border:1px solid #cbd2c6; background:#f4f5ed; }
.fence-example > div { display:flex; flex-direction:column; align-items:flex-start; padding-right:23px; border-right:1px solid #ccd3c8; }
.fence-example > div span { color:var(--accent); font-size:10px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.fence-example > div strong { margin:12px 0 8px; font:400 29px/1.05 Georgia,"Times New Roman",serif; }
.fence-example > div small { color:var(--muted); line-height:1.5; }
.fence-example ol { display:grid; gap:12px; margin:0; padding:0; list-style:none; }
.fence-example li { display:grid; grid-template-columns:minmax(170px,.7fr) minmax(0,1.3fr); gap:20px; padding-bottom:12px; border-bottom:1px solid #d8ddd4; }
.fence-example li:last-child { padding-bottom:0; border-bottom:0; }
.fence-example li b { font-size:13px; }
.fence-example li span { color:var(--muted); font-size:12px; line-height:1.55; }
.fence-related { display:grid; grid-template-columns:minmax(230px,.7fr) minmax(0,1.3fr); gap:34px; align-items:start; margin-top:28px; }
.fence-related h2 { margin:7px 0 0; font:400 30px/1.13 Georgia,"Times New Roman",serif; }
.fence-related > div:last-child { display:grid; grid-template-columns:1fr 1fr; border-top:1px solid var(--line); border-left:1px solid var(--line); }
.fence-related a { display:flex; flex-direction:column; gap:8px; min-height:150px; padding:21px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); color:var(--ink); text-decoration:none; }
.fence-related a:hover strong,.fence-related a:focus-visible strong { text-decoration:underline; text-underline-offset:3px; }
.fence-related a span { color:var(--muted); font-size:12px; line-height:1.6; }
.fence-page .garden-faq > h2 { margin-top:7px; }
.fence-paid-access { display:grid; gap:12px; padding:16px; border:1px solid #b9c9bf; background:#f2f6f1; }
.fence-paid-access[hidden] { display:none; }
.fence-paid-access > div { display:grid; gap:4px; }
.fence-paid-access > div span { color:#51675f; line-height:1.45; }
.fence-paid-access > a { color:#0b624d; font-weight:800; width:max-content; }
.fence-paid-access .field { margin:0; }

@media(max-width:900px) {
  .fence-sample { grid-template-columns:1fr; gap:20px; }
  .fence-sample-copy { max-width:680px; }
  .fence-hero { grid-template-columns:1fr; gap:30px; }
  .fence-lattice-card { max-width:650px; }
  .fence-pricing { grid-template-columns:1fr 1fr; }
  .fence-pricing > div { grid-column:1 / -1; }
  .fence-outcomes { grid-template-columns:1fr; }
  .fence-dimension-guide-heading,.fence-related { grid-template-columns:1fr; gap:18px; }
}
@media(max-width:620px) {
  .fence-sample { margin:18px 0; padding:18px 15px; }
  .fence-sample h2 { font-size:31px; }
  .fence-sample-copy .button { width:100%; }
  .fence-sample-images { grid-template-columns:1fr; gap:24px; }
  .fence-page .garden-controls { padding:0 18px 24px; }
  .fence-hero { padding-top:9px; }
  .fence-hero h1 { font-size:43px; letter-spacing:-2px; }
  .fence-hero > div:first-child > p:not(.eyebrow) { font-size:14px; }
  .fence-lattice-card { padding:14px; box-shadow:7px 7px 0 #d6dacd; }
  .fence-fit { padding:20px 16px; }
  .fence-outcomes { padding:20px 16px; }
  .fence-outcomes ol { grid-template-columns:1fr; }
  .fence-fit > div { grid-template-columns:1fr; }
  .fence-fit article,.fence-fit article + article { padding:17px 0; border-left:0; border-bottom:1px solid #cdd3c8; }
  .fence-fit article:last-child { border-bottom:0; }
  .fence-choice-grid { grid-template-columns:1fr; }
  .fence-dimension-grid,.fence-product-size-grid { grid-template-columns:1fr; }
  .fence-purchase-grid { grid-template-columns:1fr 1fr; }
  .fence-fit-result { padding:16px 12px; }
  .fence-pricing { grid-template-columns:1fr; padding:22px 16px; }
  .fence-pricing > div { grid-column:auto; padding:0; }
  .fence-pricing h2 { font-size:31px; }
  .fence-breadcrumb { margin-top:0; }
  .fence-hero-actions { align-items:stretch; flex-direction:column; gap:11px; }
  .fence-hero-actions .button { width:100%; text-align:center; }
  .fence-example { grid-template-columns:1fr; gap:18px; padding:18px 15px; }
  .fence-example > div { padding:0 0 18px; border-right:0; border-bottom:1px solid #ccd3c8; }
  .fence-example li { grid-template-columns:1fr; gap:5px; }
  .fence-related > div:last-child { grid-template-columns:1fr; }
  .fence-related a { min-height:0; }
}
@media(max-width:420px) {
  .fence-size-card,.fence-purchase-grid { grid-template-columns:1fr; }
  .fence-size-card > strong { grid-column:auto; }
}
