.price-tap{left:35%;bottom:0;width:30%;height:18%}

/* City edition label: keeps regional variants clear without changing artwork */
.city-edition{display:flex;align-items:center;justify-content:center;gap:12px;padding:6px 16px;color:#fff;background:linear-gradient(90deg,#064e86 0%,#08752c 48%,#075f2a 100%);border-top:1px solid #fff8;border-bottom:1px solid #004d21;font-weight:800;line-height:1.2}
.city-edition strong{padding:4px 14px;color:#075f2a;background:#fff;border-radius:999px;font-size:16px;box-shadow:0 1px 4px #002b1940}
.city-edition span{font-size:17px;letter-spacing:.04em}

/* Category cards: supplied photography with searchable HTML copy */
.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.category-card{overflow:hidden;background:#fff;border:1px solid #b9d9b5;border-radius:10px}
.category-card h3{margin:0;padding:8px 10px;color:var(--green);font-size:17px;font-weight:900;line-height:1.2}
.category-card h3 span{margin-right:4px}
.category-card img{display:block;width:100%;aspect-ratio:2.12/1;object-fit:cover}
.category-card p{margin:0;padding:8px 10px 10px;font-size:13px;font-weight:600;line-height:1.55}

@media(max-width:600px){
  .city-edition{gap:7px;padding:5px 8px}
  .city-edition strong{padding:4px 9px;font-size:13px}
  .city-edition span{font-size:13px;letter-spacing:0}
  .categories{padding:5px 8px 10px}
  .categories h2{margin:7px 0;font-size:18px}
  .category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .category-card{border-radius:8px}
  .category-card h3{display:flex;align-items:center;min-height:43px;padding:7px 6px;font-size:14px}
  .category-card h3 span{flex:none}
  .category-card img{aspect-ratio:1.72/1}
  .category-card p{padding:7px 7px 9px;font-size:14px;font-weight:500;line-height:1.5}
}

/* Real case carousel: three-up on desktop, swipeable one-up on mobile */
.case-carousel{position:relative;padding:0 12px 20px}
.case-viewport{overflow:hidden}
.case-track{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.case-card{overflow:hidden;margin:0;background:#fff;border:1px solid #e8ddcc;border-radius:10px;box-shadow:0 2px 8px #472a1514}
.case-card h3{margin:0;padding:7px 8px;text-align:center;font-size:14px;line-height:1.25}
.case-card img{display:block;width:100%;height:auto}
.case-arrow{display:none}
.case-dots{display:none}

@media(max-width:600px){
  .case-carousel{padding:0 21px 20px}
  .case-viewport{overflow:hidden;touch-action:pan-y}
  .case-track{display:flex;gap:0;transition:transform .32s ease}
  .case-card{flex:0 0 100%;border-radius:9px}
  .case-card h3{padding:8px;font-size:15px}
  .case-card img{width:100%}
  .case-arrow{position:absolute;z-index:2;top:50%;display:grid;width:30px;height:30px;place-items:center;padding:0;transform:translateY(-65%);border:0;border-radius:50%;color:#fff;background:var(--green);font-size:27px;line-height:1;box-shadow:0 2px 5px #0003;cursor:pointer}
  .case-prev{left:2px}.case-next{right:2px}
  .case-dots{position:absolute;bottom:3px;left:0;display:flex;width:100%;justify-content:center;gap:6px}
  .case-dots button{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#d2d2d2;cursor:pointer}
  .case-dots button.is-active{background:var(--green)}
}

/* Flatbed-truck package pricing supplied by the client */
.pricing-packs{margin:0 27px 10px;padding:5px 12px 10px;border:1px solid var(--line);border-radius:12px;background:#fff}
.pricing-packs h2{margin:0 0 8px;color:var(--green);font-size:25px;font-weight:900;line-height:1.2}
.pricing-packs h2:before{content:"♧ ";font-weight:400}
.pack-scroll{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.pack-card{overflow:hidden;text-align:center;background:#fff;border:2px solid #d6ead5;border-radius:10px}
.pack-card h3{margin:0;padding:8px 4px;color:#fff;background:#094d8b;font-size:16px;line-height:1.15}
.pack-card.pack-green h3{background:#078432}
.pack-card img{display:block;width:100%;aspect-ratio:1.67/1;object-fit:cover}
.pack-card p{min-height:34px;margin:2px 3px 0;color:#075e27;font-size:11px;font-weight:800;line-height:1.35}
.pack-card strong{display:block;color:#e90012;font-size:22px;line-height:1.15;white-space:nowrap}
.pack-card strong small{font-size:10px}
.pack-card>span{display:block;margin:3px 2px 9px;color:#4d4d4d;font-size:10px;font-weight:800;white-space:nowrap}
.pack-detail{display:block;width:225px;margin:7px auto -10px;padding:5px;text-align:center;color:#fff;background:linear-gradient(#178f36,#087326);border-radius:7px;text-decoration:none;font-size:17px;font-weight:900}
.flow-desktop{display:none!important}
.flow-mobile{display:grid;gap:10px;padding:8px 27px 10px}
.flow-mobile>img{display:block;width:min(100%,600px);height:auto;margin:auto;border:1px solid #e8ddcc;border-radius:10px;background:#fff}
.flow-steps{min-width:0;padding:10px;border:1px solid #e8ddcc;border-radius:10px;background:#fff;overflow:hidden}
.flow-title-row{display:flex;align-items:baseline;gap:12px}
.flow-title-row h2{margin:0;color:var(--green);font-size:25px;line-height:1.3}
.flow-title-row h2:before{content:"♧ ";font-weight:400}
.flow-title-row>span{color:#17652e;font-size:14px;font-weight:800}
.flow-swipe-hint{display:none}
.flow-scroll{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-top:8px}
.flow-card{position:relative;min-width:0;min-height:205px;padding:12px 8px 14px;text-align:center;border:2px solid #d6ead5;border-radius:12px;background:linear-gradient(#fff,#fbfffb);box-shadow:0 3px 9px #123b1d13}
.flow-card:not(:last-child):after{content:"→";position:absolute;z-index:2;top:50%;right:-18px;width:24px;height:24px;transform:translateY(-50%);color:#fff;background:var(--green);border-radius:50%;font-size:18px;font-weight:900;line-height:23px}
.flow-card b{display:inline-block;padding:3px 11px;color:#fff;background:var(--green);border-radius:999px;font-size:13px}
.flow-card .flow-icon{display:block;width:auto;height:50px;margin:9px auto 3px;border:0;border-radius:0;object-fit:contain;background:#fff}
.flow-card h3{margin:6px 0 5px;color:#124f25;font-size:17px;line-height:1.3}
.flow-card p{margin:0;color:#26382b;font-size:13px;line-height:1.55}
.table-swipe-hint{display:none}
.reasons thead th:last-child{color:#171717;background:#ededed}
.reasons thead th:nth-child(2){color:#fff;background:linear-gradient(#e72b22,#bc0707)}
.reasons tbody td:last-child{color:#171717;font-weight:400}
.reasons tbody td:nth-child(2){color:var(--red);font-weight:800}

@media(max-width:600px){
  html,body{max-width:100%;overflow-x:hidden}
  .page{width:100%;max-width:100%;overflow-x:hidden}
  .pricing-packs{margin:0 8px 8px;padding:5px 7px 11px}
  .pricing-packs h2{font-size:18px}
  .pack-scroll{display:flex;width:100%;max-width:100%;overflow-x:auto;gap:8px;padding:0 0 8px;scroll-snap-type:x mandatory;scrollbar-width:none}
  .pack-scroll::-webkit-scrollbar{display:none}
  .pack-card{flex:0 0 72%;scroll-snap-align:start;border-radius:10px}
  .pack-card h3{padding:9px 4px;font-size:18px}
  .pack-card p{min-height:auto;margin:6px 3px 3px;font-size:15px}
  .pack-card strong{font-size:31px}
  .pack-card strong small{font-size:14px}
  .pack-card>span{margin:4px 2px 11px;font-size:14px}
  .pack-detail{width:200px;font-size:14px}
  .reasons .reason-layout{display:flex;width:100%;min-width:0;max-width:100%;flex-direction:column;gap:12px}
  .table-swipe-hint{display:block;margin:2px 0 5px;color:#48634f;font-size:12px;font-weight:700;text-align:right}
  .table-swipe-hint span{color:var(--green);font-size:17px}
  .reasons .table-scroll{width:100%;min-width:0;max-width:100%;overflow-x:auto;border:1px solid #bfc8c0;border-radius:8px;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .reasons table{display:table;width:700px;min-width:700px;height:auto;background:#fff;font-size:13px}
  .reasons thead{position:static;width:auto;height:auto;overflow:visible;clip:auto}
  .reasons tbody{display:table-row-group}
  .reasons tr{display:table-row}
  .reasons th,.reasons td{display:table-cell;padding:7px 8px;line-height:1.4;white-space:nowrap}
  .reasons th:first-child{position:sticky;left:0;z-index:1;width:105px;background:#f2f5f2;box-shadow:2px 0 3px #0001}
  .reasons thead th:first-child{z-index:2;background:#e5e8e5}
  .reasons tbody td:before{content:none}
  .reasons tbody td:last-child{color:#171717;background:#fff;font-weight:400}
  .reasons tbody td:nth-child(2){color:var(--red);background:#fffaf8;font-weight:800}
  .reasons .reason-aside{align-self:center;width:230px;height:auto;border-radius:10px}
  .flow-mobile{display:grid;gap:9px;padding:4px 9px 6px}
  .flow-mobile>img{width:100%}
  .flow-steps{min-width:0;padding:8px 0 10px;border:1px solid #e8ddcc;border-radius:10px;background:#fff;overflow:hidden}
  .flow-title-row{display:flex;align-items:baseline;gap:10px;padding:0 10px}
  .flow-title-row h2{margin:0;color:var(--green);font-size:20px;line-height:1.3}
  .flow-title-row h2:before{content:"♧ ";font-weight:400}
  .flow-title-row>span{color:#17652e;font-size:12px;font-weight:800}
  .flow-swipe-hint{margin:2px 10px 5px;color:#48634f;font-size:12px;font-weight:700;text-align:right}
  .flow-swipe-hint span{color:var(--green);font-size:17px}
  .flow-scroll{display:flex;width:100%;max-width:100%;gap:10px;overflow-x:auto;padding:2px 10px 10px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .flow-card{position:relative;flex:0 0 76%;min-height:220px;padding:13px 14px 16px;text-align:center;border:2px solid #d6ead5;border-radius:12px;background:linear-gradient(#fff,#fbfffb);scroll-snap-align:start;box-shadow:0 3px 9px #123b1d13}
  .flow-card:not(:last-child):after{content:"→";position:absolute;z-index:2;top:50%;right:-18px;width:24px;height:24px;transform:translateY(-50%);color:#fff;background:var(--green);border-radius:50%;font-size:18px;font-weight:900;line-height:23px}
  .flow-card b{display:inline-block;padding:3px 11px;color:#fff;background:var(--green);border-radius:999px;font-size:13px}
  .flow-card .flow-icon{width:auto;height:55px;margin:10px auto 4px;border:0;border-radius:0}
  .flow-card h3{margin:7px 0 5px;color:#124f25;font-size:21px;line-height:1.3}
  .flow-card p{margin:0;color:#26382b;font-size:15px;line-height:1.65}
  .area-text{margin:1px 14px 10px;font-size:14px;line-height:1.65;color:#38513f}
  .faq{padding:0 12px 12px}
  .faq-grid{grid-template-columns:1fr;gap:7px}
  .faq details{width:100%;padding:9px 13px;font-size:14px;line-height:1.55;border-radius:12px}
  .faq summary{font-size:15px;line-height:1.45}
  .fixed-cta a{min-width:0;overflow:hidden}
}
