/* Photographic opening and a calmer, more compact page rhythm. */
.hero{position:relative;isolation:isolate;overflow:hidden}
.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 52%;z-index:-2}
.hero::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(5,15,26,.96) 0%,rgba(5,15,26,.87) 36%,rgba(5,15,26,.38) 70%,rgba(5,15,26,.12) 100%),linear-gradient(0deg,rgba(5,15,26,.75),transparent 40%)}
.hero-grid{display:block;padding:92px 0 70px}
.hero-grid>div{max-width:790px}
.hero h1{font-size:clamp(3.5rem,6.3vw,6.15rem);line-height:1.06;letter-spacing:-.05em}
.hero h1 span{color:#b6d2ff}
.hero-intro{max-width:555px;font-size:1.125rem;color:#d5dfe9;margin-top:28px}
.hero .actions{margin-top:30px}
.hero .button{min-width:190px;min-height:56px;font-size:.95rem}
.hero-note{margin-top:16px;color:#d3deea;font-size:.875rem}
.hero-note strong{font-weight:700;color:white}
.hero-trust{list-style:none;display:flex;gap:25px;flex-wrap:wrap;padding:0;margin:42px 0 0;font-size:.8rem;color:#d5e0ed}
.hero-trust li+li{border-left:1px solid #ffffff45;padding-left:25px}
.service-strip{border-color:#ffffff28;padding:23px 0;color:#e0e8f2}
.section{padding:90px 0}
.section-heading{margin-bottom:40px}
.problems .section-heading h2 br{display:none}
.problems .section-heading h2{max-width:650px}
.problem-row{padding:25px 0}
.problem-row:hover{background:#f4f7fb}
.problem-row .row-arrow{transition:transform .18s ease}
.problem-row:hover .row-arrow{transform:translate(2px,-2px)}
.service-card{background:white;padding:30px}
.service-card .number{color:#516c8a}
.service-card h3{margin-top:23px}
.service-card p{margin:14px 0 24px}
.experience{background:white}
.experience-stat strong{color:#145fc8}
.experience-grid{padding-bottom:36px}
.founder{align-items:start;padding-top:35px;grid-template-columns:150px 1fr}
.founder>img{width:150px;height:170px;object-fit:cover}
.personal-membership{margin-top:20px;padding-top:20px}
.process{background:var(--pale);padding:65px 0}
.process h2{font-size:clamp(2rem,3vw,2.8rem);margin-bottom:34px}
.process h2 br{display:none}
.steps h3{font-size:1.15rem;margin:15px 0 12px}
.fee-note{background:white;margin-top:32px;max-width:none;border-left-color:#b3c9e6;font-size:.875rem}
.send-section{background:#eaf1fb}
.send-grid{gap:72px;align-items:start}
.send-copy h2{font-size:clamp(2.5rem,4vw,3.75rem);max-width:510px;line-height:1.1}
.send-copy h2 br{display:block!important}
.send-copy>.lead{font-size:1.0625rem;line-height:1.8;margin-top:25px}
.assessment-offer{border-radius:0 6px 6px 0;padding:18px 20px}
.assessment-offer span{font-size:.875rem}
.assurance{padding-top:20px}
.enquiry-form{padding:30px}
.enquiry-form legend{font-size:1.15rem;letter-spacing:-.025em;margin-bottom:8px}
.upload-zone{padding:21px 12px}
.final-cta{padding:75px 0}
.final-cta h2{font-size:clamp(2.5rem,4.1vw,3.8rem)}
.site-footer{padding-top:45px}
.mobile-cta{bottom:max(14px,env(safe-area-inset-bottom))}
@media(max-width:1100px){.hero-grid{padding:80px 0 60px}.hero-grid>div{max-width:720px}.hero h1{font-size:clamp(3.5rem,7vw,5.5rem)}.send-grid{gap:40px}.section{padding:75px 0}}
@media(max-width:820px){.hero-grid{padding:66px 0 50px}.hero-grid>div{max-width:620px}.hero h1{font-size:clamp(3.4rem,8vw,4.5rem)}.hero-photo{object-position:60% center}.hero::before{background:linear-gradient(90deg,#05101bec,rgba(5,16,27,.76) 60%,rgba(5,16,27,.4)),linear-gradient(0deg,#05101b99,transparent)}.hero .actions{flex-direction:row;align-items:center}.hero-trust{gap:17px;margin-top:32px}.hero-trust li+li{padding-left:17px}.service-strip{font-size:.8rem}.send-grid{gap:32px}.send-copy h2{max-width:560px}.founder{grid-template-columns:120px 1fr;gap:28px}.founder>img{width:120px;height:140px}}
@media(max-width:600px){.hero-grid{padding:55px 0 40px}.hero h1{font-size:clamp(2.9rem,11.5vw,4.2rem)}.hero h1 span{display:inline}.hero .eyebrow{font-size:.68rem;line-height:1.8;max-width:300px}.hero-photo{object-position:58% center}.hero::before{background:linear-gradient(90deg,rgba(5,16,27,.91),rgba(5,16,27,.66)),linear-gradient(0deg,rgba(5,16,27,.65),transparent)}.hero-intro{font-size:1rem;line-height:1.75;margin-top:24px}.hero .button{flex:none;width:auto;min-width:190px}.hero-note{font-size:.8rem}.hero-trust{display:block;margin-top:28px;font-size:.75rem;line-height:1.9}.hero-trust li+li{padding:0;border:0}.service-strip{padding:18px 0;gap:5px 16px;font-size:.75rem}.section{padding:58px 0}.section-heading{margin-bottom:28px}.problem-row{padding:22px 0}.problem-row p{font-size:.95rem}.service-card{padding:25px}.service-card h3{margin-top:17px}.founder{grid-template-columns:1fr;gap:22px}.founder>img{width:115px;height:130px}.personal-membership{flex-direction:row;gap:20px;align-items:center}.founder .rics-personal-logo{width:90px;height:32px}.personal-membership span{font-size:.8rem}.send-copy h2{font-size:2.65rem}.send-copy>.lead{font-size:1rem}.enquiry-form{padding:24px 18px}.enquiry-form legend{font-size:1.1rem}.assessment-offer{margin-top:23px}.steps{gap:24px}.process{padding:50px 0}.fee-note{padding:18px;font-size:.8rem}.final-cta{padding:58px 0}.site-footer{padding-top:35px}}
@media(prefers-reduced-motion:reduce){.problem-row .row-arrow{transition:none}}
.service-strip .service-item{color:inherit;display:inline-block;white-space:nowrap}.enquiry-form{scroll-margin-top:0}@media(min-width:1500px){.hero-grid>div{max-width:900px}}@media(max-width:600px){.service-strip{justify-content:flex-start;gap:8px 18px}.service-strip .service-divider{display:none}}

/* Refinements from homepage feedback. */
.hero-note{margin-top:24px;font-size:1rem;line-height:1.5}
.hero-note strong{display:block;font-size:clamp(1.55rem,2.3vw,2.25rem);letter-spacing:-.025em;line-height:1.2;margin-bottom:7px}
.problem-intro{color:var(--blue);font-size:1.125rem;font-weight:600;margin-top:20px}
.risk-list>div{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;align-items:start;padding:15px 10px}
.risk-detail strong{display:block;font-size:1rem;font-weight:700;line-height:1.4}
.risk-detail p{font-size:.875rem;line-height:1.6;color:#536171;margin:5px 0 0}
.risk-list .number{padding-top:3px}.contract-sheet{transform:none}
@media(prefers-reduced-motion:no-preference){.hero-photo{transform:translateY(var(--hero-shift,0px)) scale(1.08);will-change:transform}.hero-grid{animation:hero-arrive .8s ease-out both}@keyframes hero-arrive{from{opacity:.3;translate:0 12px}to{opacity:1;translate:0 0}}}
@media(max-width:600px){.risk-list>div{padding:13px 5px;gap:9px}.hero-note strong{font-size:1.65rem}.problem-intro{font-size:1rem}}
