/* Mobile usability follow-up: contact flow, image order, compact packages, legibility. */
.hero.hero--early-visual{grid-template-areas:"heading visual" "summary visual";grid-template-rows:auto auto;row-gap:0}
.hero--early-visual .hero-heading{grid-area:heading;align-self:end;padding:16px 0 0}
.hero--early-visual .hero-summary{grid-area:summary;align-self:start;padding:0 0 16px}
.hero--early-visual .hero-visual.land-demo{grid-area:visual}
.contact-panel{scroll-margin-top:120px;min-width:0}
.contact-panel:focus{outline:none}
.contact-panel:focus-visible{outline:2px solid #8b794f;outline-offset:8px;border-radius:8px}
.mobile-contact[hidden]{display:none!important}

.package-summary{margin:0 0 18px;padding:0;display:grid;gap:9px;font-size:14px;line-height:1.7}
.package-summary>div{display:grid;grid-template-columns:78px minmax(0,1fr);gap:10px}
.package-summary dt{color:#5f6e57;font-weight:400}
.package-summary dd{margin:0;color:var(--ink);overflow-wrap:anywhere;font-weight:500}
.package-details{margin:0 0 18px;flex:1;min-width:0}
.package-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:12px 0;min-height:46px;border-block:1px solid #d6dfce;font-size:14px;line-height:1.6;font-weight:500;list-style:none}
.package-details>summary::-webkit-details-marker{display:none}
.package-disclosure-icon{width:19px;height:19px;flex:none;transition:transform .18s}
.package-hide-label{display:none}
.package-details[open] .package-show-label{display:none}
.package-details[open] .package-hide-label{display:inline}
.package-details[open] .package-disclosure-icon{transform:rotate(180deg)}
.package-details[data-desktop-expanded]>summary{display:none}
.package-details-body{padding-top:16px}
.package-details[data-desktop-expanded] .package-details-body{padding-top:0}
.package-details-body>.muted{font-size:14px;line-height:1.8;margin-bottom:17px;color:#5c6955}
.package-details-body>.note{font-size:13px;line-height:1.8;color:#5c6955;margin:14px 0 0;padding-bottom:0}
.package-details .package-features{margin-bottom:0}
.package .number{font-size:12px}
.package .package-price small{font-size:13px;color:#5c6955}
.package-budget{font-size:13px}
.package.featured .package-summary dt,.package.featured .package-price small,.package.featured .package-details-body>.muted,.package.featured .package-details-body>.note{color:#d2ddc9}
.package.featured .package-summary dd{color:#fcfaf1}
.package.featured .package-details>summary{color:#f5eddb;border-color:#ffffff38}
.package.featured :focus-visible{outline-color:#e6d6b5}

.land-view-label{font-size:13px;padding:5px 8px;border-radius:5px;background:#183326dc;backdrop-filter:blur(4px)}
.land-motion-toggle{font-size:12px;min-height:44px}
.land-legend{width:max-content;max-width:calc(100% - 38px);padding:6px 9px;background:#153124dc;border-radius:5px;font-size:12px;text-shadow:none}
.land-disclaimer{font-size:13px;color:#d2ddc9}
.land-area-label{font-size:12px;color:#d2ddc9}
.land-area-metric{font-size:12px}
.land-demo.is-motion .land-area-number{animation:none;opacity:1;transform:none}
.work-album-caption{font-size:13px;color:#596753;line-height:1.8}
.work-card-copy .work-category{font-size:13px;color:#75572f}
.work-card-copy>.work-example-caption{font-size:13px;color:#596753}
.work-example-note{font-size:13px;color:#596753}
.work-album .work-tag,.work-album-count{font-size:12px;line-height:1.6}
.work-photo-action{font-size:12px}
.process-visual figcaption,.equipment-section figcaption{font-size:13px;line-height:1.8}
.process-visual figcaption{color:#c9d7c4}
.equipment-section figcaption{color:#596753}
.pricing-section>.note,.form .note{font-size:13px;color:#596753;line-height:1.8}
.form .check{font-size:14px;line-height:1.8}
.footer-legal a,.footer-legal span{font-size:12px}

@media(max-width:1180px){.hero.hero--early-visual{row-gap:0}.land-view-label{font-size:12px}}
@media(max-width:760px){
 .hero.hero--early-visual{grid-template-areas:"heading" "visual" "summary";grid-template-rows:auto auto auto;gap:22px;padding-top:26px;padding-bottom:30px}
 .hero--early-visual .hero-heading{padding:0;align-self:auto}
 .hero-heading .eyebrow{margin-bottom:15px}
 .hero-heading h1{margin-bottom:0;font-size:clamp(32px,8.8vw,43px);line-height:1.36}
 .hero--early-visual .hero-summary{padding:0;align-self:auto}
 .hero-summary .lead{font-size:16px;margin-bottom:17px;line-height:1.8}
 .hero .hero-region{font-size:14px;line-height:1.8}
 .hero-region .service-icon{width:17px;height:19px;margin-top:3px}
 .hero-deliverables{font-size:12px;gap:8px 14px;line-height:1.7}
 .hero .actions .button{font-size:14px}
 .contact-panel{scroll-margin-top:100px}
 .package{padding:22px}
 .package-heading{margin-bottom:8px;gap:9px}
 .package-heading .package-symbol{display:none}
 .package h2{font-size:24px;line-height:1.45;margin-bottom:0}
 .package-price{font-size:34px;margin:16px 0 15px}
 .package .package-price small{font-size:13px}
 .package-budget{font-size:13px;margin-bottom:16px;padding:10px 11px}
 .package-summary{gap:8px;font-size:14px;margin-bottom:16px}
 .package-summary>div{grid-template-columns:75px minmax(0,1fr);gap:9px}
 .package-details{margin-bottom:17px;flex:0 1 auto}
 .package-details>summary{font-size:14px}
 .package-details-body>.muted{font-size:14px}
 .package-details-body>.note{font-size:13px}
 .package .button{font-size:14px;min-height:48px}
 .land-view-label{font-size:12px;padding:5px 7px;gap:6px}
 .land-motion-toggle{font-size:12px;padding:7px 8px;gap:5px;min-height:44px}
 .land-legend{font-size:12px;max-width:calc(100% - 24px);padding:5px 7px;gap:5px 13px;bottom:10px}
 .land-legend i{width:18px}
 .land-caption{padding:16px 17px 14px}
 .land-area-label,.land-area-metric{font-size:12px}
 .land-disclaimer{font-size:13px;line-height:1.8;margin-top:12px;padding-top:10px}
 .work-album-caption,.work-card-copy>.work-example-caption,.work-card-copy .work-category,.work-example-note{font-size:13px}
 .work-album .work-tag,.work-album-count,.work-photo-action{font-size:12px}
 .work-album .work-tag,.work-album-count{padding:4px 7px}
 .process-visual figcaption,.equipment-section figcaption{font-size:13px}
 .service-overview small{font-size:13px;line-height:1.8}
 .service-overview strong{font-size:15px}
 .site-footer p,.site-footer .contact-links a{font-size:14px}
 .footer-legal a,.footer-legal span{font-size:12px}
}
@media(max-width:359px){.hero .actions .button{font-size:13px;padding-inline:9px}.hero-heading h1{font-size:32px}.land-view-label{font-size:11px}.land-motion-toggle{font-size:11px}.land-legend{font-size:11px;gap:5px 10px}.land-disclaimer,.land-area-label,.land-area-metric{font-size:13px}.package{padding:21px}.package h2{font-size:23px}.package-summary>div{grid-template-columns:69px minmax(0,1fr);gap:7px}}
@media(prefers-reduced-motion:reduce){.package-disclosure-icon{transition:none}}
