/* H&P Group — full design direction based on the supplied motion references. */
:root{--paper:#f4f4f2;--ink:#17253a;--line:#d8dbe0}
body{background:var(--paper);color:var(--ink)}
.wp-site-blocks>header,.home .wp-site-blocks>header{background:#f4f4f2e8}
.site-header{min-height:80px}.brand-logo{width:116px}.main-nav{font-size:10px;letter-spacing:.01em}

/* Opening: oversized type with a compact image that grows on scroll. */
.editorial-hero{position:relative;overflow:clip;padding:0;background:var(--paper)}
.editorial-copy{height:calc(100svh - 80px);min-height:650px;position:relative;display:flex;flex-direction:column;justify-content:center;text-align:center;padding-bottom:135px}
.editorial-copy>.eyebrow{position:absolute;top:72px;left:0;right:0;margin:0;color:#697482}
.editorial-copy h1{position:relative;z-index:1;max-width:none;margin:0!important;font-size:clamp(76px,9vw,142px);line-height:.86;letter-spacing:-.075em;font-weight:400}
.editorial-copy h1 span{color:#7d8793}
.editorial-hero-bottom{position:absolute;z-index:4;left:50%;bottom:45px;transform:translateX(-50%);width:min(560px,90%);margin:0!important;gap:18px}
.editorial-lead{font-size:14px;line-height:1.55;color:#556170}
.editorial-collage{position:relative;z-index:3;display:block;width:min(1180px,90vw);height:620px;margin:-61vh auto 180px;transform-origin:center center!important}
.editorial-collage figure{height:100%;border-radius:0}.editorial-collage .collage-main{display:block}.collage-main img{object-position:center 42%}
.editorial-collage .collage-detail,.editorial-collage .collage-note,.editorial-collage .collage-ocean{display:none}

/* Seven-company index: tall category panels, like the supplied selection films. */
.group-brands{margin:0;background:#e4e5e9;color:#fff;padding:70px 28px 85px}
.group-brands>.wrap{max-width:1500px}.group-brands>.wrap>.family-label{color:#596575;margin:0 0 20px!important}
.family-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:8px;border:0}
.family-item{border:0}.family-item a{position:relative;display:block;min-height:360px;padding:22px;background:#1b2a42;color:#fff;border-radius:0;overflow:hidden}
.family-item:nth-child(2) a{background:#333a44}.family-item:nth-child(3) a{background:#27425a}.family-item:nth-child(4) a{background:#392b48}.family-item:nth-child(5) a{background:#3d4542}.family-item:nth-child(6) a{background:#27504a}.family-item:nth-child(7) a{background:#4c483c}.family-item:nth-child(8) a{background:#087eb4}
.family-item a:before{display:none}.family-number{display:block;position:absolute;top:20px;left:20px;color:#c7cfda;font:9px/1 Consolas,monospace}
.family-logo{position:absolute;left:20px;right:20px;bottom:25px;width:auto;height:48px;margin:0}.family-logo img{object-position:left bottom}
.family-item strong{position:absolute;right:16px;top:80px;display:block;writing-mode:vertical-rl;transform:rotate(180deg);font-size:20px;font-weight:400;line-height:1;color:#fff}
.family-sector{display:block;position:absolute;left:20px;bottom:90px;max-width:100px;color:#bfc7d2;font-size:8px;line-height:1.4}.family-arrow{display:block;position:absolute;right:20px;top:18px;color:#fff}
.family-item a:hover{background:#fff;color:var(--ink);transform:translateY(-8px)}.family-item a:hover strong,.family-item a:hover .family-number,.family-item a:hover .family-arrow{color:var(--ink)}.family-item a:hover .family-sector{color:#596575}.family-item a:hover .family-logo{transform:none;filter:brightness(0) saturate(100%) invert(13%) sepia(18%) saturate(1684%) hue-rotate(176deg)}

/* Companies become full-screen colour chapters. */
.scroll-companies{padding:115px 0 0;background:var(--paper)}
.chapter-heading{max-width:1000px;margin-bottom:90px;text-align:left}.chapter-heading .eyebrow{margin-bottom:24px}.chapter-heading h2{font-size:clamp(60px,7.2vw,110px);line-height:.9;font-weight:400}.chapter-heading h2 span{color:#89919b}.chapter-heading .section-intro{font-size:15px}
.chapter-stack.wrap{max-width:none;padding:0 28px 40px}.company-chapter{grid-template-columns:1fr 1fr;top:94px;height:calc(100svh - 122px);min-height:610px;margin-bottom:105px;border-radius:0;background:#19293f;box-shadow:0 24px 60px #14253c14}
.company-chapter.business-02{background:#313943}.company-chapter.business-03{background:#24415a}.company-chapter.business-04{background:#342843}.company-chapter.business-05{background:#394541}.company-chapter.business-06{background:#244e49}.company-chapter.business-07{background:#474438}.company-chapter.business-08{background:#087eb4}
.company-chapter:nth-child(even) .chapter-copy{grid-column:2;grid-row:1}.company-chapter:nth-child(even) .chapter-visual{grid-column:1;grid-row:1}
.chapter-copy{padding:clamp(38px,5vw,82px)}.chapter-index{position:absolute;top:35px;left:clamp(38px,5vw,82px)}
.chapter-logo{width:min(280px,75%);height:78px;margin-bottom:42px}.company-chapter h3{max-width:580px;font-size:clamp(52px,5vw,82px);line-height:.93;font-weight:400;letter-spacing:-.06em}.chapter-description{font-size:14px}.chapter-visual{background:#23364e}.chapter-photo img{filter:saturate(.7) contrast(.95)}
.chapter-art,.business-04 .chapter-art,.business-07 .chapter-art{background:transparent}.chapter-art-title{font-size:clamp(68px,8vw,130px);line-height:.82;color:#ffffffb8;padding:8%;letter-spacing:-.075em}
.chapter-closing{min-height:50vh;padding:80px 5%;border-bottom:1px solid var(--line)}.chapter-closing h3{font-size:clamp(52px,6vw,92px);line-height:.95;max-width:800px}

/* The rest of the page follows the same quiet editorial system. */
.mission{border-radius:0;background:transparent;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:90px 0}
.mission-grid{gap:0}.mission-card{padding:30px 25px;border-top:1px solid var(--line);border-right:1px solid var(--line)}
.people-intro h2,.about-copy h2,.presence-copy h2{font-weight:400;letter-spacing:-.055em}.people-photo,.about-image img,.presence-image img,.purpose{border-radius:0}
.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.stats p{min-height:190px;display:flex;flex-direction:column;justify-content:space-between}.stats strong{font-size:68px;font-weight:400}
.dark-band{background:#17253a}.sectors-heading h2{font-size:clamp(55px,7vw,104px);font-weight:400;line-height:.9}.sector h3{font-size:clamp(34px,4vw,60px);font-weight:400}
.purpose{margin-left:28px;margin-right:28px;max-width:none;min-height:70vh;display:flex;flex-direction:column;justify-content:center}.purpose h2{font-size:clamp(65px,8vw,120px);font-weight:400}
.contact-band:before{opacity:.42}.contact h2{font-size:clamp(72px,9vw,145px);font-weight:400;line-height:.82;letter-spacing:-.07em}.site-footer{background:var(--paper)}

@media(max-width:1050px){.family-grid{grid-template-columns:repeat(4,1fr)}.family-item a{min-height:280px}.editorial-copy h1{font-size:clamp(68px,9.5vw,100px)}.editorial-collage{margin-top:-55vh}.company-chapter h3{font-size:52px}}
@media(max-width:781px){.editorial-copy{height:auto;min-height:620px;padding:110px 20px 185px}.editorial-copy>.eyebrow{top:45px}.editorial-copy h1{font-size:clamp(47px,12vw,70px);line-height:.94}.editorial-hero-bottom{bottom:45px}.editorial-collage{width:calc(100% - 40px);height:360px;margin:-105px auto 70px;transform:none!important}.group-brands{padding:48px 20px}.family-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:10px;padding-bottom:12px}.family-item{min-width:72vw;scroll-snap-align:start}.family-item a{min-height:350px}.chapter-heading{text-align:left;margin-bottom:45px}.chapter-heading h2{font-size:52px}.chapter-stack.wrap{padding:0 20px}.company-chapter{display:flex;height:auto;min-height:0;margin-bottom:28px;border-radius:0}.company-chapter:nth-child(even) .chapter-copy,.company-chapter:nth-child(even) .chapter-visual{grid-column:auto;grid-row:auto}.chapter-visual{height:330px;min-height:330px}.chapter-copy{padding:40px 26px 35px}.chapter-index{position:static}.company-chapter h3{font-size:45px}.chapter-art-title{font-size:64px}.chapter-closing{padding:60px 20px}.mission{padding:60px 22px}.purpose{margin-left:20px;margin-right:20px}.contact h2{font-size:64px}}

@media(prefers-reduced-motion:reduce){.editorial-collage{transform:none!important}}

.editorial-collage{transform-origin:center top!important}

@media(max-width:781px){.editorial-collage{margin:0 auto 70px}.editorial-copy{min-height:680px}}

html,body{overflow-x:clip}
/* Realevate-like information architecture: centred brand, two-link header, image-led story. */
@media(min-width:782px){.site-header{position:relative}.brand-logo{position:absolute;z-index:3;left:50%;transform:translateX(-50%);margin:0}.main-nav{width:100%}.main-nav .wp-block-navigation__container{width:100%;justify-content:space-between}.main-nav .wp-block-navigation-item:nth-child(2){display:none}.main-nav .wp-block-navigation-item:last-child a{padding:0}}
.about{max-width:none;padding:0 28px 150px;display:flex;flex-direction:column-reverse;gap:90px}.about-visual{width:100%;position:relative}.about-image{height:min(72vh,760px);margin:0}.about-image img{width:100%;height:100%;object-fit:cover}.about-copy{width:min(900px,90%);margin:auto;text-align:center}.about-copy .eyebrow{margin-bottom:28px}.about-copy h2{font-size:clamp(62px,7.8vw,118px);line-height:.9}.about-copy .large-copy{font-size:clamp(22px,2.5vw,36px);line-height:1.25}.about-copy .wp-block-buttons{justify-content:center}.image-caption{left:28px;right:auto;bottom:28px}.people-section{border-top:1px solid var(--line)}.presence{border-top:1px solid var(--line)}.site-footer{min-height:110px;border-top:1px solid var(--line)}
@media(max-width:781px){.about{padding:0 20px 80px;gap:50px}.about-copy{width:100%}.about-copy h2{font-size:49px}.about-copy .large-copy{font-size:20px}.about-image{height:440px}.main-nav .wp-block-navigation-item:nth-child(2){display:flex}}
