/* Mobile composition audit. Every override is contained below 768px. */
@media(max-width:767px){
 :root{--section:44px}
 main .section{padding-block:44px}
 main .hero{padding-block:28px 32px;min-height:0}
 main .hero h1{margin-bottom:16px}
 main .hero .eyebrow{margin-bottom:12px}
 main .hero .lede{font-size:16px;line-height:1.55;margin-bottom:20px}
 main .hero .actions{gap:12px}
 main .hero .actions:empty{display:none}
 main .hero.editorial-hero{gap:24px}
 main .hero h1,main .hero h2{min-height:0}
 main h2{margin-bottom:20px}
 main h3{margin-bottom:12px}
 main .section-copy{font-size:16px;line-height:1.6;margin-bottom:20px}
 main .eyebrow{margin-bottom:12px}
 main p{line-height:1.6}
 main .split,main .pricing-layout{gap:24px;margin-top:24px}
 main .split p{font-size:16px;margin-bottom:16px}
 main .button{min-height:48px;white-space:normal;line-height:1.4}
 main .actions>.button{padding:12px 18px;gap:12px}
 main .text-link,main .quiet{display:inline-flex;align-items:center;min-height:44px}
 main .hero+.section{padding-top:24px}
 /* Keep closing invitations short, with every existing action still available. */
 main .section.container:has(>.cta){padding-top:24px;padding-bottom:44px}
 main .cta{padding:28px 24px;border-radius:24px}
 main .cta>.eyebrow{display:none}
 main .cta h2{font-size:30px;line-height:1.15;margin-bottom:16px}
 main .cta>p:not(.eyebrow){font-size:16px;line-height:1.5;margin-bottom:20px}
 main .cta .quiet{margin-top:8px}
 main .equal-consultations{gap:12px}
 /* Numbered service rows keep the sequence visible without separate tall cards. */
 main .steps,main .steps.five.buyer-journey{grid-template-columns:1fr;gap:0;margin-block:24px}
 main .steps>li,main .buyer-journey>li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:4px 16px;padding:16px 0;border-top:1px solid var(--border)}
 main .steps>li>span{grid-column:1;grid-row:1/3;width:36px;height:36px;margin:0;font-size:16px}
 main .steps h3{grid-column:2;font-size:22px;line-height:1.2;margin:0}
 main .steps p{grid-column:2;font-size:16px;line-height:1.5;margin:0}
 main .pricing-path{gap:16px}
 main .pricing-path li{gap:16px}
 main .pricing-path li>span{width:40px;height:40px;font-size:16px}
 main .pricing-path li:not(:last-child)::after{left:19px;top:48px;bottom:-8px}
 main .pricing-path h3{font-size:22px;margin-bottom:6px}
 main .pricing-path p{font-size:16px;line-height:1.5}
 main .service-rows article{gap:16px;padding:16px 0}
 main .service-rows h3{font-size:22px;margin-bottom:8px}
 main .faqs button{min-height:56px;padding-block:14px;font-size:17px;line-height:1.4}
 main .faqs p{font-size:16px;line-height:1.6}
 /* Home: retain the compact calculator and a sideways, contained photo showcase. */
 .home-page .proof-section{padding-top:0;padding-bottom:24px}
 .home-page .proof{margin-bottom:8px}
 .home-page .proof>div,.home-page .proof>div:first-child{padding-block:14px}
 .home-page .proof p{font-size:16px;line-height:1.5;margin:0}
 .home-page #savings-calculator{padding-block:24px}
 .home-page #savings-calculator h2{margin-bottom:12px}
 .home-page .hero-photo{margin-top:20px}
 .home-page .hero-photo>.property{aspect-ratio:2/1}
 .home-page #why-nesta .marketing-intro{margin-bottom:20px}
 .home-page #why-nesta .marketing-intro .button{margin-top:0}
 .home-page #why-nesta .compact-showcase{margin-top:20px;grid-auto-columns:min(82%,280px)}
 .home-page #why-nesta .compact-showcase p{font-size:16px;line-height:1.5}
 .home-page .seller-decisions-intro{margin-bottom:20px}
 .home-page .seller-decisions-composition{gap:20px}
 .home-page .seller-proceeds{padding:24px}
 .home-page .seller-proceeds>p:last-child{font-size:16px;line-height:1.5;margin-top:16px}
 .home-page .seller-decision-pair{grid-template-columns:1fr;gap:0}
 .home-page .seller-decision-pair>div{display:grid;grid-template-columns:104px minmax(0,1fr);gap:8px 16px;padding:16px 0}
 .home-page .seller-decision-pair>div+div{border-top:1px solid var(--border);padding-top:16px}
 .home-page .decision-topic{grid-column:1/-1;font-size:12px;margin:0}
 .home-page .seller-decision-pair h3{grid-column:1;font-size:22px;margin:0}
 .home-page .seller-decision-pair p{grid-column:2;font-size:16px;line-height:1.5;max-width:none}
 .home-page .seller-decisions-action{margin-top:16px}
 .home-page .buyer-layout,.home-page .team-intro-layout{gap:20px}
 .home-page .buyer-visual .property{display:block;width:100%;height:148px;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 54%;background:var(--subtle)}
 .home-page .team-introduction .team-card:nth-child(2){margin-top:0}
 .home-page .team-introduction .team-card img{width:112px;height:112px;margin-bottom:12px}
 .home-page .team-introduction .team-card h3{font-size:20px;line-height:1.2;margin-bottom:6px}
 .home-page .team-introduction .team-card p{font-size:16px;margin-bottom:0}
 /* Sell: compact fee treatment, real examples, and a small responsibility diagram. */
 .page-sell .seller-value-visual{padding:24px;display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px 16px;align-items:center;min-height:0}
 .page-sell .seller-value-visual>.eyebrow{grid-column:1/-1;margin:0}
 .page-sell .seller-value-visual>strong{font-size:64px;grid-column:1;grid-row:2;margin:0}
 .page-sell .seller-value-visual h2{font-size:26px;grid-column:2;grid-row:2;margin:0}
 .page-sell .seller-value-visual>p:not(.eyebrow){grid-column:1/-1;margin:0;font-size:16px}
 .page-sell .seller-value-visual>p.small{font-size:14px;line-height:1.5}
 .page-sell .marketing-showcase{grid-template-columns:1fr;gap:20px;margin-top:24px}
 .page-sell .marketing-showcase figure:not(:first-child){display:grid;grid-template-columns:104px minmax(0,1fr);gap:16px;align-items:center}
 .page-sell .marketing-showcase figure:not(:first-child) .property{height:auto;aspect-ratio:auto;border-radius:16px}
 .page-sell .marketing-showcase figure:not(:first-child) figcaption{padding:0}
 .page-sell .marketing-showcase figure:first-child .property{height:auto;aspect-ratio:auto}
 .page-sell .marketing-showcase figcaption{padding-top:12px}
 .page-sell .marketing-showcase h3{font-size:21px;line-height:1.2;margin-bottom:8px}
 .page-sell .marketing-showcase p{font-size:16px;line-height:1.5}
 .page-sell .shared-plan{padding:24px 20px}
 .page-sell .shared-plan-heading{padding-bottom:16px}
 .page-sell .plan-dot{display:none}
 .page-sell .shared-plan-heading strong{font-size:26px;line-height:1.2}
 .page-sell .shared-plan-heading p{margin-top:8px}
 .page-sell .shared-plan-columns{padding-top:16px;gap:16px}
 .page-sell .shared-plan-columns>div{display:grid;grid-template-columns:40px minmax(0,1fr);gap:6px 12px;text-align:left;padding:0}
 .page-sell .shared-plan-columns>div+div{padding-top:16px}
 .page-sell .plan-person{grid-column:1;grid-row:1/3;width:24px;height:24px;margin:18px auto 0;border-radius:12px 12px 6px 6px}
 .page-sell .plan-person::before{width:14px;height:14px;left:5px;top:-17px}
 .page-sell .shared-plan-columns h3{grid-column:2;font-size:22px;margin:0}
 .page-sell .shared-plan-columns p{grid-column:2;font-size:16px;line-height:1.5;margin:0;max-width:none}
 .page-sell .plan-finish{margin-top:16px;padding-top:16px;font-size:16px;line-height:1.5}
 .page-sell #process{padding-top:24px}
 /* Buy: photography supports the introduction; the journey uses numbered rows. */
 .page-buy .buyer-hero-photo{max-width:none;border-radius:24px}
 .page-buy .buyer-hero-photo .property{display:block;width:100%;height:148px;aspect-ratio:auto;object-fit:cover;object-position:50% 54%;background:var(--lavender)}
 .page-buy .split>.property{display:block;width:100%;height:156px;max-height:none;aspect-ratio:auto;object-fit:cover;object-position:50% 44%;background:var(--subtle)}
 /* Our Difference: small supporting photos and a compact hierarchy. */
 .page-why-nesta .difference-hero{padding-bottom:24px}
 .page-why-nesta .pillar-links{margin-top:20px;gap:10px}
 .page-why-nesta .pillar-links a{min-height:48px;padding:10px 14px;font-size:14px}
 .page-why-nesta .training-research-panel{padding:24px 20px;gap:24px}
 .page-why-nesta .training-heading{gap:16px}
 .page-why-nesta .training-heading h2{margin:0}
 .page-why-nesta .training-heading>p:last-of-type{font-size:16px;line-height:1.6;margin:0}
 .page-why-nesta .research-client-decisions{gap:16px;margin:0;padding-top:16px}
 .page-why-nesta .training-property{display:grid;grid-template-columns:104px minmax(0,1fr);gap:0;align-items:center;border-radius:16px}
 .page-why-nesta .training-property img{height:100%;min-height:96px;aspect-ratio:auto;object-fit:cover}
 .page-why-nesta .training-property figcaption{display:block;padding:16px}
 .page-why-nesta .research-photo-label{font-size:11px;max-width:none;margin-bottom:8px}
 .page-why-nesta .training-property figcaption strong{font-size:20px;line-height:1.2}
 .page-why-nesta .research-prompts-label{margin-bottom:12px}
 .page-why-nesta .research-prompts summary{min-height:64px;padding-block:12px;font-size:16px}
 .page-why-nesta .research-prompts summary small{font-size:13px}
 .page-why-nesta .research-prompts details>p{padding-right:0;margin-bottom:16px;font-size:16px}
 .page-why-nesta .team-support-feature{padding:24px 20px;gap:20px}
 .page-why-nesta .team-support-copy h2{font-size:32px;margin-bottom:16px}
 .page-why-nesta .team-support-lede{font-size:16px;margin-bottom:20px}
 .page-why-nesta .team-support-benefits>div{padding-top:16px;gap:12px}
 .page-why-nesta .team-support-benefits>div+div{margin-top:16px}
 .page-why-nesta .team-support-people{max-width:220px}
 .page-why-nesta .collaboration-portraits{max-width:200px;gap:16px}
 .page-why-nesta .collaboration-portraits figure{width:calc(50% - 8px)}
 .page-why-nesta .collaboration-portraits figure:last-child{margin-top:0}
 .page-why-nesta .team-support-people>p{display:none}
 .page-why-nesta .pillar-intro{gap:16px;margin-bottom:24px}
 .page-why-nesta .preparation-heading{gap:20px;margin-bottom:24px}
 .page-why-nesta .preparation-rows{gap:28px}
 .page-why-nesta .preparation-row.buyer-preparation{padding-top:24px}
 .page-why-nesta .preparation-copy h3{margin-bottom:16px}
 .page-why-nesta .preparation-deliverables{gap:14px}
 .page-why-nesta .preparation-copy .preparation-note{margin-top:16px}
 .page-why-nesta .preparation-row .buyer-worksheet{padding:24px 20px}
 .page-why-nesta .value-spotlight{gap:20px}
 .page-why-nesta .value-spotlight>article{padding:24px}
 .page-why-nesta .value-spotlight .audience-label{margin-bottom:20px}
 .page-why-nesta .fee-focus{display:flex;align-items:center;gap:16px;margin-bottom:20px;max-width:100%}
 .page-why-nesta .value-spotlight .fee-figure{font-size:76px;flex:none;margin:0}
 .page-why-nesta .value-spotlight .fee-focus h3{font-size:23px;line-height:1.15;margin:0}
 .page-why-nesta .value-spotlight p.value-summary{font-size:16px;line-height:1.5;margin-bottom:16px}
 .page-why-nesta .value-spotlight .buyer-representation-value h3{font-size:30px;margin-bottom:20px}
 .page-why-nesta .offer-review{margin-bottom:16px}
 .page-why-nesta .offer-review>div{padding-block:12px}
 .page-why-nesta .value-spotlight .small{padding-top:16px;font-size:14px;line-height:1.6}
 /* About: smaller portraits with names still centered beneath each photo. */
 .page-about .about-team{padding-top:20px}
 .page-about .about-section-heading{margin-bottom:24px}
 .page-about .about-team-grid{gap:28px}
 .page-about .about-person .about-portrait{max-width:176px;margin-inline:auto}
 .page-about .about-person .about-portrait img{aspect-ratio:4/3;object-position:50% 35%}
 .page-about .about-person:nth-child(2) .about-portrait img{object-position:50% 20%}
 .page-about .about-person-label{margin:12px 0}
 .page-about .about-person-label h3{font-size:23px;line-height:1.2;margin-bottom:6px}
 .page-about .about-person-label>.about-agent-dre{margin-top:6px}
 .page-about .about-person>p{font-size:16px;line-height:1.6;max-width:38ch}
 .page-about .about-story-layout{gap:20px}
 .page-about .about-story-copy>.section-copy{font-size:16px}
 .page-about .about-story-copy>p{font-size:16px;margin-bottom:16px}
 .page-about .about-story-copy>.button{margin-top:0}
 .page-about .fund-eyebrow{margin-bottom:20px}
 .page-about .fund-story{gap:24px}
 .page-about .fund-statement h2{font-size:32px;margin-bottom:16px;max-width:20ch}
 .page-about .fund-flow{gap:20px}
 .page-about .fund-flow>li{grid-template-columns:56px minmax(0,1fr);gap:16px}
 .page-about .fund-symbol{width:56px}
 .page-about .fund-percent strong{font-size:32px}
 .page-about .fund-arrow{left:20px;bottom:-20px;font-size:18px}
 .page-about .fund-flow h3{font-size:16px}
 .page-about .fund-impact{grid-template-columns:28px minmax(0,1fr);gap:12px;padding:20px;margin-top:24px}
 .page-about .fund-client-credit{margin-top:20px;padding-top:20px}
 /* Contact and consultation forms: tighter group spacing, full-size controls. */
 .page-contact .contact-options{padding-top:24px;padding-bottom:40px}
 .page-contact .contact-layout{gap:24px}
 .page-contact .contact-layout aside h1{margin-bottom:16px}
 .page-contact .contact-layout aside>.contact-introduction{font-size:16px;line-height:1.6}
 .page-contact .direct-contact{margin:20px 0;gap:0}
 .page-contact .contact-link-panels>a{min-height:64px;padding-block:12px}
 main .nesta-inquiry{padding:24px 20px}
 main .nesta-form .form-required-note{margin-bottom:16px}
 main .nesta-form .form-grid{grid-template-columns:1fr;gap:16px;margin-bottom:16px}
 main .nesta-form .inquiry-field{margin-bottom:16px}
 main .nesta-form .form-grid .inquiry-field{margin-bottom:0}
 .page-contact .nesta-form .form-grid,.page-contact .nesta-form .inquiry-field{margin-bottom:16px}
 .page-contact .nesta-form .form-grid{gap:16px}
 .page-contact .nesta-form .form-grid .inquiry-field{margin-bottom:0}
 main .nesta-form label{font-size:16px;margin-bottom:6px}
 main .nesta-form input,main .nesta-form textarea{font-size:16px}
 main .nesta-form textarea{height:112px;min-height:112px}
 main .nesta-form .inquiry-submit{min-height:52px}
 main .nesta-inquiry .inquiry-notice{margin-top:16px;padding-top:16px;font-size:14px}
 main .inquiry-alternative{font-size:14px;line-height:1.6;margin-top:16px}
 main .nesta-inquiry .inquiry-success{padding-block:20px}
 /* Reviews retain every word, measured widths, controls and loop behavior. */
 main .reviews-hero{padding-block:24px}
 main .reviews-section{padding-top:24px}
 main .review-note{margin-block:16px;font-size:14px}
 main .review-track{padding-block:16px;gap:16px}
 main .review-belt{gap:16px}
 main .review-track .review-card{padding:16px;min-height:0}
 main .review-track .review-card .review-stars{margin-bottom:12px}
 main .review-track .review-card blockquote p{font-size:16px;line-height:1.55}
 main .review-track .review-card figcaption{padding-top:16px}
 main .review-play{min-height:44px}
 /* Utility pages use a readable document rhythm, without large chapter gaps. */
 main .policy-index{gap:4px 16px;margin:16px 0 24px}
 main .policy-topic{margin-bottom:32px}
 main .policy-topic h2{margin-bottom:16px}
 main .policy-topic p,main .reading p{font-size:16px;line-height:1.6;margin-bottom:16px}
 /* Footer navigation fits two short rows; contact text gets a full line. */
 .site-footer{padding-block:32px 20px}
 .site-footer-layout{grid-template-columns:minmax(0,1fr);gap:24px}
 .site-footer-menu nav{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px}
 .site-footer h2{margin-bottom:16px}
 .site-footer-menu nav a{font-size:15px;line-height:1.4;min-height:44px}
 .site-footer-contact{display:grid;grid-template-columns:1fr;gap:0;min-width:0}
 .site-footer-contact>a:not(.site-footer-invitation){font-size:16px;min-height:44px}
 .site-footer .site-footer-invitation{justify-self:start;margin-top:12px;min-height:44px}
 .site-footer-identity{grid-column:auto}
 .site-footer-identity .site-footer-brand{width:112px}
 .site-footer-identity p{margin-top:8px}
 .site-footer-legal{margin-top:24px}
}
