.packages-opening { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:64px; align-items:end; padding-block:46px 58px; }
.packages-opening h1 em { color:var(--sage); }
.packages-lead { width:100%; max-width:560px; }
.packages-lead .subpage-lead { margin-bottom:18px; }
.packages-lead .copy { max-width:none; }
.package-guide { padding-block:62px; color:var(--paper); background:linear-gradient(90deg,#263b35d7,#263b35bd),url("../../images/packages/package-guide-bg-1456.webp") center 56%/cover no-repeat; }
.package-guide-heading { display:grid; grid-template-columns:.8fr 1.2fr; gap:70px; align-items:end; margin-bottom:38px; }
.package-guide-heading .eyebrow { margin:0; color:#f2f0e9; }
.package-guide-heading h2 { color:#f2f0e9; }
.package-guide-heading h2 em { color:#d6f28a; }
.package-guide-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid #f2f0e966; }
.package-guide-grid article { padding:25px 28px 0 0; }
.package-guide-grid article + article { padding-left:28px; border-left:1px solid #f2f0e93d; }
.package-guide-grid span { color:#d6f28a; font-size:10px; }
.package-guide-grid h3 { margin:12px 0 10px; font-size:17px; line-height:1.35; }
.package-guide-grid p { color:#e6e9e2; font-size:12px; line-height:1.8; }
.packages-heading,.rates-heading { display:grid; grid-template-columns:1fr .75fr; gap:80px; align-items:end; margin-bottom:45px; }
.packages-heading .copy,.rates-heading .copy { max-width:465px; justify-self:end; }
.package-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; align-items:stretch; }
.package-card { position:relative; display:grid; grid-template-rows:auto auto 1fr auto; padding:26px 24px 23px; border-top:3px solid var(--coral); background:#e8eadf; }
.package-card:nth-child(even) { background:#ede9df; }
.package-card-head { padding-bottom:20px; border-bottom:1px solid var(--line); }
.package-index { display:block; margin-bottom:13px; color:var(--sage); font-size:10px; }
.package-badge { position:absolute; top:21px; right:20px; display:block; width:max-content; max-width:calc(100% - 70px); margin:0; padding:8px 12px; border-radius:999px; background:var(--coral); color:var(--ink); font-size:10px; line-height:1.35; font-weight:600; letter-spacing:.025em; }
.package-card h3 { font-size:22px; line-height:1.25; letter-spacing:-.035em; }
.package-price { margin-top:10px; font:italic 500 28px/1.15 Cormorant,Georgia,serif; color:var(--sage); }
.package-fit { min-height:137px; padding:20px 0; color:var(--muted); font-size:12px; line-height:1.8; }
.package-card ul { margin:0 0 24px; padding:0; list-style:none; border-top:1px solid var(--line); }
.package-card li { position:relative; padding:10px 0 10px 17px; border-bottom:1px solid var(--line); font-size:11px; line-height:1.55; }
.package-card li::before { content:'+'; position:absolute; left:0; color:var(--sage); }
.package-card > a { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-top:16px; border-top:1px solid var(--ink); font-size:11px; font-weight:600; }
.package-card > a .arrow { width:16px; height:16px; }
.climate-audit-package,.custom-package { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:90px; margin-top:24px; padding-inline:48px; }
.climate-audit-package { align-items:start; padding-block:38px 40px; border-top:3px solid var(--coral); background:#dce6c4; }
.climate-audit-heading .eyebrow { margin-bottom:24px; }
.climate-audit-package h2 { font-size:30px!important; line-height:1.15!important; letter-spacing:-.05em!important; }
.climate-audit-price { margin-top:12px; font:italic 500 23px/1.15 Cormorant,Georgia,serif; color:var(--sage); }
.climate-audit-fit { color:var(--muted); }
.climate-audit-actions { gap:14px 24px; }
.subpage .climate-audit-actions .text-link { margin:0; }
.custom-package { padding-block:48px; border-top:3px solid var(--coral); background:var(--ink); color:var(--paper); }
.custom-package h2 em { color:var(--coral); }
.climate-audit-details,.custom-package > div:last-child { max-width:650px; }
.climate-audit-fit,.custom-package > div:last-child > p { font-size:14px; line-height:1.9; }
.custom-package > div:last-child > p,.custom-package ul { color:#d4d8cf; }
.climate-audit-details ul,.custom-package ul { display:flex; flex-wrap:wrap; gap:8px 22px; margin:22px 0 27px; padding:0; list-style:none; font-size:11px; }
.climate-audit-details ul { color:var(--muted); }
.climate-audit-details li::before,.custom-package li::before { content:'•'; margin-right:9px; color:var(--coral); }
.climate-audit-package .button { background:#263b35; color:var(--paper); }
.custom-package .button { background:var(--coral); color:var(--ink); }
.pricing-scope { display:grid; grid-template-columns:1.05fr .95fr; gap:85px; align-items:center; border-bottom:1px solid var(--line); }
.pricing-sheet { margin:0 12px 12px 0; padding:18px 18px 0; background:#dce6c4; }
.pricing-sheet > div { position:relative; height:470px; overflow:hidden; background:#fff; }
.pricing-sheet > div::after { content:''; position:absolute; inset:0; box-shadow:inset 0 0 0 1px #263b3512; pointer-events:none; }
.pricing-sheet img { width:100%; height:100%; object-fit:cover; object-position:center; mix-blend-mode:multiply; }
.pricing-sheet figcaption { display:flex; justify-content:space-between; gap:25px; padding-block:16px; color:var(--muted); font-size:10px; }
.pricing-scope-copy dl { margin:27px 0 0; border-top:1px solid var(--line); }
.pricing-scope-copy dl > div { display:grid; grid-template-columns:150px 1fr; gap:28px; padding:17px 0; border-bottom:1px solid var(--line); }
.pricing-scope-copy dt { font-size:13px; font-weight:500; }
.pricing-scope-copy dd { margin:0; color:var(--muted); font-size:12px; line-height:1.8; }
.rate-list { display:grid; grid-template-columns:1fr 1fr; column-gap:55px; border-top:1px solid var(--line); }
.rate-row { display:grid; grid-template-columns:1fr auto; grid-template-areas:'copy price' 'copy unit'; gap:3px 25px; align-items:start; padding:20px 0; border-bottom:1px solid var(--line); }
.rate-row > div { grid-area:copy; }
.rate-row h3 { font-size:15px; line-height:1.4; }
.rate-row p { max-width:430px; margin-top:6px; color:var(--muted); font-size:11px; line-height:1.7; }
.rate-row > span { grid-area:unit; justify-self:end; color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
.rate-row > strong { grid-area:price; white-space:nowrap; font:italic 500 20px/1.2 Cormorant,Georgia,serif; color:var(--sage); }
.rates-note { margin-top:20px; max-width:700px; }
.packages-faq { display:grid; grid-template-columns:.8fr 1.2fr; gap:100px; }
.packages-faq .details-list { align-self:start; }
.packages-contact { padding-block:64px; background:var(--coral); }
.packages-contact .wrap { display:grid; grid-template-columns:1.2fr 1fr; gap:80px; align-items:center; }
.packages-contact h2 em { color:var(--ink); }
.packages-contact .wrap > div:last-child > p { max-width:430px; font-size:14px; line-height:1.9; }
.packages-contact .button { margin-top:23px; background:var(--ink); color:var(--paper); }

@media (max-width:1100px) {
  .packages-opening { gap:55px; }
  .package-guide-grid { grid-template-columns:repeat(2,1fr); row-gap:30px; }
  .package-guide-grid article:nth-child(3) { padding-left:0; border-left:0; }
  .package-grid { grid-template-columns:repeat(2,1fr); }
  .package-fit { min-height:0; }
  .climate-audit-package,.custom-package { gap:40px; }
  .pricing-scope { gap:45px; }
  .pricing-sheet > div { height:400px; }
  .packages-faq { gap:55px; }
}
@media (max-width:800px) {
  .packages-opening,.package-guide-heading,.packages-heading,.rates-heading,.climate-audit-package,.custom-package,.pricing-scope,.packages-faq,.packages-contact .wrap { grid-template-columns:1fr; gap:28px; }
  .packages-opening { padding-block:38px 48px; }
  .package-guide { padding-block:50px; }
  .package-guide-heading { margin-bottom:32px; }
  .package-grid { grid-template-columns:1fr; }
  .package-card { padding:25px 22px; }
  .climate-audit-package { padding:30px 25px; margin-top:16px; }
  .custom-package { padding:34px 25px; margin-top:16px; }
  .pricing-scope { align-items:start; }
  .pricing-sheet { order:2; }
  .pricing-sheet > div { height:auto; aspect-ratio:1040/1080; }
  .pricing-scope-copy dl > div { grid-template-columns:1fr; gap:7px; }
  .rate-list { grid-template-columns:1fr; }
  .rate-row { column-gap:16px; }
  .packages-contact { padding-block:50px; }
}
@media (max-width:480px) {
  .package-guide-grid { grid-template-columns:1fr; row-gap:0; }
  .package-guide-grid article,.package-guide-grid article + article { padding:20px 0; border-left:0; border-bottom:1px solid #f2f0e93d; }
  .pricing-sheet figcaption { display:block; }
  .pricing-sheet figcaption span { display:block; }
  .pricing-sheet figcaption span + span { margin-top:4px; }
  .rate-row { grid-template-columns:1fr; grid-template-areas:'copy' 'price' 'unit'; gap:7px; }
  .rate-row > strong,.rate-row > span { justify-self:start; }
}
