/* Shared spacing and responsive rhythm for the two portfolio homepages. */
body{--layout-line:#c8d4c7;--layout-card:#f4ede1;--layout-accent:#925239;line-height:1.6}
body.global{--layout-line:#334958;--layout-card:#112330;--layout-accent:#67cce8}
html{scroll-padding-top:24px}
main,.section-heading>*,.service,.work-step,.project-copy,.hero-copy,.wordpress-copy{min-width:0}
h1,h2,h3{text-wrap:balance;overflow-wrap:break-word}
p{ text-wrap:pretty }
.section,.wordpress-inner{padding-block:clamp(68px,7vw,108px)}
.section-heading,.care-section .section-heading{grid-template-columns:minmax(0,1.45fr) minmax(260px,.75fr);gap:clamp(32px,5vw,72px);margin-bottom:40px}
.section h2{font-size:clamp(2.75rem,4.6vw,4.75rem);line-height:1.15;letter-spacing:-.035em;margin-top:20px}
.global .section h2{font-size:clamp(3.3rem,5.4vw,5.6rem);line-height:1.04;letter-spacing:.005em}
.section-heading p{font-size:.98rem;line-height:1.85;max-width:40ch;margin:0 0 5px}
.eyebrow,.number,.label{display:block;line-height:1.65}
.service-grid,.work-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;background:transparent;border:0;align-items:stretch}
.service,.work-step{padding:32px clamp(24px,2.4vw,36px) 36px;min-height:0;border:1px solid var(--layout-line);border-radius:8px;background:var(--layout-card);display:flex;flex-direction:column}
.service:last-child,.work-step:last-child{border-right:1px solid var(--layout-line)}
.work-step{border-top:3px solid var(--layout-accent)}
.service h3,.work-step h3{font-size:clamp(1.65rem,2.15vw,2.1rem);line-height:1.25;letter-spacing:-.025em;margin:28px 0 16px;text-wrap:balance}
.global .service h3,.global .work-step h3{font-size:clamp(1.95rem,2.6vw,2.75rem);line-height:1.12;letter-spacing:.005em;margin:28px 0 16px}
.service p,.work-step p{font-size:.94rem;line-height:1.85;max-width:none;margin:0}
.global .service{background:linear-gradient(135deg,#142b3a,#0f202c)}
.global .work-step{background:#11212e}
.project-list{gap:24px}
.project-copy{padding:clamp(26px,3.2vw,44px);gap:0}
.project-copy h3{margin:18px 0 16px;line-height:1.12}
.project-copy p{margin:0 0 26px;line-height:1.85}
.explore{line-height:1.6;padding-top:8px}
.project-card{border-radius:8px}
.care-grid{gap:20px}
.care-card{border-radius:8px;padding:clamp(28px,3.5vw,44px)}
.care-card h3{margin:24px 0 16px;line-height:1.25}
.care-card p{line-height:1.85}
.panel-row>div{min-width:0}
.panel-symbol{flex-shrink:0}
.hero-foot{flex-wrap:wrap;line-height:1.7;row-gap:10px}
.hero h1{line-height:1.1}
.global .hero h1{font-size:clamp(4.2rem,8vw,8.7rem);line-height:1.01}
.global .hero-copy{max-width:880px}
.global .hero-inner{gap:32px}
.hero-index{line-height:1.1}
.hero-index small{display:block;margin-top:12px;line-height:1.6}
.closing h2{line-height:1.13;font-size:clamp(3.2rem,6.4vw,6.7rem)}
.global .closing h2{line-height:1.02;font-size:clamp(4rem,8vw,8rem)}
.site-footer{flex-wrap:wrap;align-items:center;line-height:1.8}
@media(min-width:981px){.service h3,.work-step h3{min-height:2.5em}.global .service h3,.global .work-step h3{min-height:2.24em}}
@media(max-width:980px){
 .section-heading,.care-section .section-heading{grid-template-columns:1fr;gap:22px}
 .section-heading p{max-width:65ch}
 .service-grid,.work-grid{grid-template-columns:1fr;gap:16px}
 .service,.work-step{display:grid;grid-template-columns:150px minmax(0,1fr);column-gap:28px;padding:28px}
 .service .number,.work-step .number{grid-row:1/3;padding-top:6px}
 .service h3,.work-step h3,.global .service h3,.global .work-step h3{margin:0 0 12px}
 .service p,.work-step p{grid-column:2}
 .site-header{flex-wrap:wrap;gap:18px}
 .main-nav{gap:20px;flex-wrap:wrap}
 .global .hero-inner{display:block;padding-bottom:42px}
 .global .hero-index{position:static;margin:40px 0 0;text-align:left;font-size:2rem}
 .global .hero-index small{display:inline-block;margin:0 0 0 15px}
 .global .hero h1{font-size:clamp(4rem,9vw,7rem)}
}
@media(max-width:600px){
 .section,.wordpress-inner{padding-block:64px;padding-inline:22px}
 .section-heading,.care-section .section-heading{gap:20px;margin-bottom:30px}
 .section h2,.care-section h2{font-size:clamp(2.35rem,8.8vw,3.25rem);line-height:1.2}
 .global .section h2{font-size:clamp(2.85rem,10vw,3.8rem);line-height:1.07}
 .service,.work-step{display:flex;padding:26px 24px 30px}
 .service .number,.work-step .number{padding:0}
 .service h3,.work-step h3,.global .service h3,.global .work-step h3{margin:24px 0 14px}
 .service h3,.work-step h3{font-size:1.85rem}
 .global .service h3,.global .work-step h3{font-size:2.2rem}
 .hero h1{font-size:clamp(2.8rem,10.2vw,4rem)}
 .global .hero h1{font-size:clamp(3.35rem,12vw,4.8rem)}
 .hero-copy{padding-top:56px;min-height:0}
 .global .hero-inner{padding-top:70px;min-height:0}
 .hero-lead{font-size:1rem;line-height:1.85}
 .hero-art{min-height:380px}
 .actions{gap:20px}
 .ticker{gap:12px 16px;line-height:1.7}
 .ticker b{display:none}
 .care-grid,.project-list{grid-template-columns:1fr}
 .care-card{padding:28px 24px}
 .care-card h3{font-size:1.85rem}
 .site-header{padding:18px 22px;gap:16px}
 .main-nav{gap:12px}
 .wordmark{font-size:.62rem}
 .closing{padding:66px 22px}
 .closing h2{font-size:clamp(2.9rem,10vw,4rem)}
 .global .closing h2{font-size:clamp(3.1rem,11vw,4.5rem)}
 .project-copy h3{font-size:2.65rem}
 .global .project-copy h3{font-size:3rem}
 .image-badge{max-width:calc(100% - 40px);line-height:1.6}
 .site-footer{align-items:flex-start}
}
@media(min-width:981px){
 .service,.work-step{display:grid;grid-template-rows:subgrid;grid-row:span 3;row-gap:0}
 .service h3,.work-step h3,.global .service h3,.global .work-step h3{min-height:0}
}
@media(max-width:600px){.global .hero h1{font-size:clamp(2.6rem,9vw,3.4rem);line-height:1.08}.global .hero-copy{width:100%}}
