/* Round 56 | Editorial typography | PMM Homes & Construction
   Fine, understated hierarchy. No external fonts or visual assets. */
:root {
 --pmm-editorial-serif: "Iowan Old Style", "Baskerville", "Palatino Linotype", Georgia, serif;
 --pmm-editorial-body: "Avenir Next", "Helvetica Neue", "Segoe UI", Arial, sans-serif;
}
body.pmm-home,body.pmm-modern,body.pmm-eco,body.tn-page,body.nomad-page {
 font-family:var(--pmm-editorial-body)!important;
 font-size:16px;line-height:1.7;letter-spacing:.005em;
 -webkit-font-smoothing:antialiased;
}
body.pmm-home h1,body.pmm-home h2,body.pmm-home h3,
body.pmm-modern h1,body.pmm-modern h2,body.pmm-modern h3,
body.pmm-eco h1,body.pmm-eco h2,body.pmm-eco h3 {
 font-family:var(--pmm-editorial-serif)!important;
 font-weight:400!important;
 letter-spacing:-.025em;
 text-wrap:balance;
}
/* Landing and photographic collection heroes */
body.pmm-home:not(.nomad-page):not(.tn-page) .r5-hero h1,
body.pmm-modern .r5-hero h1,body.pmm-eco .r5-hero h1 {
 font-size:clamp(46px,5vw,76px)!important;
 line-height:1.08!important;
 font-weight:400!important;
 letter-spacing:-.033em!important;
 max-width:760px;
}
body.pmm-home:not(.nomad-page):not(.tn-page) .r5-hero p,
body.pmm-modern .r5-hero p,body.pmm-eco .r5-hero p {
 font-family:var(--pmm-editorial-body)!important;
 font-weight:400!important;
 font-size:clamp(16px,1.25vw,19px)!important;
 line-height:1.72!important;
 letter-spacing:.004em;
 max-width:650px;
}
/* Sections and cards: graceful range rather than extreme headline sizes */
.r5-section .r5-heading,.r5-section .r5-head h2,
.r5-section .r5-header h2,.r5-section .section-header h2,
body.pmm-eco .r5-section h2,body.pmm-modern .r5-section h2 {
 font-family:var(--pmm-editorial-serif)!important;
 font-size:clamp(37px,3.65vw,54px)!important;
 line-height:1.14!important;
 letter-spacing:-.027em!important;
 font-weight:400!important;
}
.r5-section .r5-grid article.r39-model-card h3,
.r5-section .r5-grid.r27-collections article.r43-luxe-card .r43-luxe-body h3,
.r5-section .r5-grid article.r43-luxe-card h3 {
 font:400 clamp(24px,2.05vw,30px)/1.2 var(--pmm-editorial-serif)!important;
 letter-spacing:-.015em!important;
 margin-bottom:12px!important;
}
.r5-section .r5-grid article.r39-model-card .r39-card-body p,
.r5-section .r5-grid article.r43-luxe-card p,
.r5-section .r5-grid article.r39-model-card .r39-card-specs {
 font-family:var(--pmm-editorial-body)!important;
 font-size:clamp(14px,1.03vw,15px)!important;
 font-weight:400!important;
 line-height:1.65!important;
 color:#4b6258!important;
}
.r5-section .r5-grid article.r39-model-card .r39-card-price,
.r5-section .r5-grid article.r43-luxe-card .r39-card-price {
 font-family:var(--pmm-editorial-body)!important;
 font-size:20px!important;
 font-weight:650!important;
 letter-spacing:-.01em!important;
}
.r5-section .r5-grid article.r39-model-card .r39-card-price small {font-size:12px!important;font-weight:450!important;line-height:1.55!important;}
.r5-section .r5-grid article.r39-model-card a.r39-card-action,
.r5-section .r5-grid article.r43-luxe-card a.r43-card-action {
 font-family:var(--pmm-editorial-body)!important;
 font-size:14px!important;line-height:1.45!important;
 font-weight:650!important;letter-spacing:.015em!important;
}
/* Nordic collection: bring headline and introduction together, avoid wandering two-column prose */
body.tn-page .tn-hero h1 {
 font-family:var(--pmm-editorial-serif)!important;
 font-size:clamp(48px,5vw,76px)!important;
 line-height:1.08!important;letter-spacing:-.035em!important;
 font-weight:400!important;max-width:830px;
}
body.tn-page .tn-hero p {font-size:clamp(16px,1.35vw,19px)!important;line-height:1.7!important;font-weight:400!important;max-width:600px;}
body.tn-page .tn-overview {padding:76px 0 79px!important;}
body.tn-page .tn-overview-grid {
 display:grid!important;grid-template-columns:minmax(0,1fr)!important;
 gap:9px!important;align-items:start!important;
 max-width:970px!important;
 margin-inline:auto;
}
body.tn-page .tn-overview h2 {font-size:clamp(38px,4.1vw,58px)!important;line-height:1.16!important;letter-spacing:-.028em!important;margin:8px 0 8px!important;}
body.tn-page .tn-overview-grid>div:last-child {max-width:800px!important;}
body.tn-page .tn-overview p {font-size:clamp(16px,1.15vw,18px)!important;line-height:1.8!important;margin:4px 0 0!important;}
body.tn-page .tn-section-head h2,
body.tn-page .tn-divider-visual h2,
body.tn-page .tn-choice h2 {
 font:400 clamp(38px,4.1vw,60px)/1.12 var(--pmm-editorial-serif)!important;
 letter-spacing:-.026em!important;
}
body.tn-page .tn-section-head p,body.tn-page .tn-choice p {
 font-family:var(--pmm-editorial-body)!important;font-size:clamp(15px,1.1vw,17px)!important;line-height:1.75!important;font-weight:400!important;
}
body.tn-page .tn-card h3 {
 font:400 clamp(26px,2.15vw,31px)/1.2 var(--pmm-editorial-serif)!important;
 letter-spacing:-.014em!important;
}
body.tn-page .tn-card .tn-desc {font-size:15px!important;line-height:1.7!important;}
body.tn-page .tn-area-pill {font-size:12px!important;font-weight:650!important;}
body.tn-page .tn-card-cta {font-size:14px!important;font-weight:650!important;}
/* NOMAD: softened opening line and timeless editorial proportions */
body.nomad-page .nomad-hero h1 {
 font-family:var(--pmm-editorial-serif)!important;
 font-size:clamp(74px,9vw,132px)!important;
 line-height:1.0!important;
 letter-spacing:-.035em!important;
 font-weight:400!important;
}
body.nomad-page .nomad-hero p {
 font-family:var(--pmm-editorial-body)!important;
 font-size:clamp(17px,1.4vw,21px)!important;
 line-height:1.8!important;
 font-weight:400!important;
 letter-spacing:.01em!important;
 max-width:610px!important;
 text-wrap:pretty;
}
body.nomad-page .nomad-intro h2,body.nomad-page .nomad-story h2,
body.nomad-page .nomad-utilities h2,body.nomad-page .nomad-closing h2,
body.nomad-page .nomad-gallery h2,body.nomad-page .nomad-transport h2 {
 font:400 clamp(38px,4.15vw,60px)/1.13 var(--pmm-editorial-serif)!important;
 letter-spacing:-.025em!important;
}
body.nomad-page .nomad-intro p,body.nomad-page .nomad-story p,
body.nomad-page .nomad-utilities p,body.nomad-page .nomad-closing p,
body.nomad-page .nomad-gallery p,body.nomad-page .nomad-transport p {
 font-family:var(--pmm-editorial-body)!important;
 font-size:clamp(15.5px,1.15vw,17px)!important;
 line-height:1.85!important;font-weight:400!important;
}
/* Eco Cabin model catalog and open gallery */
body.pmm-eco .eco45-headline h2,
body.pmm-eco .eco45-modal-heading h2 {
 font-family:var(--pmm-editorial-serif)!important;
 font-size:clamp(31px,3.65vw,48px)!important;
 font-weight:400!important;line-height:1.17!important;
}
body.pmm-eco .eco45-card h3,
body.pmm-eco .eco45-card-title {font-family:var(--pmm-editorial-serif)!important;font-weight:400!important;letter-spacing:-.01em!important;}
body.pmm-eco .eco45-card p,body.pmm-eco .eco45-modal-heading p,
body.pmm-eco .eco45-spec-block p,body.pmm-eco .eco45-facts dd {
 font-family:var(--pmm-editorial-body)!important;line-height:1.7!important;
}
body.pmm-eco .eco45-price-panel strong {font-size:23px!important;font-weight:650!important;letter-spacing:-.01em!important;}
/* Subtle finishing touches */
.pmm-r43-land-copy h2{font-family:var(--pmm-editorial-serif)!important;font-weight:400!important;letter-spacing:-.02em!important;}
.pmm-r43-land-price strong{font-family:var(--pmm-editorial-serif)!important;font-weight:400!important;letter-spacing:-.018em!important;}
.pmm-r43-land-copy p,.pmm-r43-land-price span {font-family:var(--pmm-editorial-body)!important;line-height:1.55!important;}
.r39-footer .r39-footer-intro>strong {font-family:var(--pmm-editorial-serif)!important;font-weight:400!important;}
.r39-footer .r39-footer-bottom small {font-size:12px!important;line-height:1.6!important;letter-spacing:.005em;}
.pmm-language-float a {font-family:var(--pmm-editorial-body)!important;font-weight:650!important;}
body.pmm-home .eyebrow,body.pmm-modern .eyebrow,body.pmm-eco .eyebrow,
body.tn-page .tn-label,body.tn-page .tn-eyebrow,body.nomad-page .nomad-kicker {
 font-family:var(--pmm-editorial-body)!important;font-weight:650!important;letter-spacing:.15em!important;
}
@media(max-width:760px){
 body.pmm-home:not(.nomad-page):not(.tn-page) .r5-hero h1,body.pmm-modern .r5-hero h1,body.pmm-eco .r5-hero h1 {font-size:clamp(39px,8vw,55px)!important;}
 body.tn-page .tn-overview {padding:56px 0 58px!important;}
 body.tn-page .tn-hero h1 {font-size:clamp(41px,9vw,62px)!important;}
 body.tn-page .tn-section-head h2 {font-size:clamp(35px,7.2vw,47px)!important;}
 body.nomad-page .nomad-hero h1 {font-size:clamp(72px,17vw,116px)!important;}
 body.nomad-page .nomad-hero p {font-size:17px!important;line-height:1.7!important;}
 body.nomad-page .nomad-intro h2,body.nomad-page .nomad-story h2,
 body.nomad-page .nomad-utilities h2,body.nomad-page .nomad-closing h2 {font-size:clamp(34px,7vw,49px)!important;}
}
