:root{--navy:#082865;--orange:#f58220;--blue:#00adef;--ink:#162c4d;--muted:#58677a;--line:#dce3eb;--cream:#f6f7f9;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:white;font-family:Roboto,Arial,sans-serif;font-size:17px;line-height:1.7}a{color:var(--navy);text-underline-offset:5px}a:hover{color:#b34b00}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,h4{color:var(--navy);line-height:1.13;letter-spacing:-.035em}h1{font-size:clamp(38px,4.2vw,65px);font-weight:650;margin:0 0 25px}h2{font-size:clamp(30px,3vw,44px);font-weight:600;margin:0 0 25px}h3{font-size:26px;font-weight:600}p{margin:0 0 22px}.skip{position:absolute;left:15px;top:-100px;z-index:100;background:white;padding:10px}.skip:focus{top:10px}.prototype-bar{background:#edf2f8;color:#435775;text-align:center;padding:7px 20px;font-size:12px;letter-spacing:.025em}.prototype-bar span{font-size:10px;font-weight:800;letter-spacing:.12em;padding-right:14px}.site-header{display:flex;align-items:center;justify-content:space-between;gap:30px;max-width:1440px;padding:23px 5%;margin:auto;background:white}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0;color:var(--navy)}.brand img{width:49px;height:49px;object-fit:contain}.brand strong{display:block;font-size:20px;letter-spacing:.16em;line-height:1.2}.brand small{display:block;font-size:12px;letter-spacing:.03em;margin-top:4px}nav{display:flex;gap:24px;align-items:center}nav a{font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;padding:8px 0}nav a[aria-current]{border-bottom:2px solid var(--orange)}.menu-toggle{display:none}.hero{max-width:1440px;display:grid;grid-template-columns:1fr 1fr;min-height:650px;margin:auto;background:var(--cream)}.hero-copy{padding:65px 9% 60px 10%;align-self:center}.eyebrow{font-size:11px;letter-spacing:.17em;font-weight:750;color:#9b4500;margin-bottom:22px;line-height:1.5}.lead{font-size:19px;line-height:1.65}.hero-photo{overflow:hidden;min-height:100%}.hero-photo img{height:100%;width:100%;object-fit:cover;object-position:65% center}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 23px;border:1px solid var(--orange);background:var(--orange);color:var(--navy);text-decoration:none;font-size:14px;font-weight:700;line-height:1.45;border-radius:3px;cursor:pointer;max-width:100%}.button:hover{background:#e77814;color:var(--navy)}.button.secondary{background:transparent;border-color:var(--navy)}.hero-detail{font-size:12px;color:var(--muted);margin-top:18px;margin-bottom:0}.section{max-width:1240px;padding:94px 50px;margin:0 auto}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.intro p{color:var(--muted)}.support{max-width:none;background:var(--cream);padding-left:max(5%,calc((100% - 1140px)/2));padding-right:max(5%,calc((100% - 1140px)/2))}.section-heading{max-width:750px;margin-bottom:45px}.section-heading p{color:var(--muted)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{background:white;border-top:3px solid var(--orange);padding:35px 30px;display:flex;flex-direction:column;min-height:435px;box-shadow:0 7px 30px #08286506}.service-card h3{margin:0 0 22px}.service-card p:not(.eyebrow){font-size:15px;color:var(--muted)}.service-card .service-meta{font-size:13px!important;color:var(--navy)!important;font-weight:600;margin-top:auto;padding-top:18px}.text-link{display:flex;justify-content:space-between;gap:16px;font-size:14px;font-weight:700;text-decoration:none;border-top:1px solid var(--line);padding-top:16px}.approach-band{margin:70px auto;background:var(--navy);padding:60px 65px;position:relative;overflow:hidden}.approach-band::after{content:'P';position:absolute;right:30px;top:-90px;color:#ffffff07;font-size:400px;font-weight:800;line-height:1;pointer-events:none}.approach-band h2{color:white;font-size:clamp(30px,3.2vw,46px);line-height:1.35}.approach-band .eyebrow{color:#ffb16e}.approach-band .button{color:white;border-color:#ffffff70}.about{display:grid;grid-template-columns:.8fr 1.1fr;gap:80px;align-items:center;padding-top:30px}.about-photo img{width:100%;max-height:630px;object-fit:cover;object-position:center 25%}.about p{color:var(--muted);font-size:16px}.about .eyebrow{color:#9b4500}.about p:first-of-type{font-weight:600}.testimonials{background:var(--cream);max-width:none;padding-left:max(5%,calc((100% - 1140px)/2));padding-right:max(5%,calc((100% - 1140px)/2))}.quote-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px}.quote{margin:0;background:white;padding:35px;border:1px solid var(--line)}.quote blockquote{margin:0 0 22px;font-size:17px;line-height:1.8}.quote blockquote::before{content:'“';display:block;color:var(--orange);font:60px Georgia,serif;line-height:1;margin-bottom:4px}.quote figcaption{font-size:12px;font-weight:700;color:var(--navy)}.contact{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact p{color:var(--muted)}form{background:var(--cream);padding:35px}label{display:block;font-size:13px;font-weight:600;margin-bottom:20px}input,textarea{display:block;width:100%;border:1px solid #b3c0d0;background:white;padding:12px;margin-top:7px;border-radius:2px;min-width:0}textarea{resize:vertical}.form-note{font-size:12px}.form-result,#form-result{font-size:14px;margin:16px 0 0;color:var(--navy)}footer{background:#f2f4f7;padding:55px max(5%,calc((100% - 1140px)/2)) 20px}.footer-top{display:flex;justify-content:space-between;gap:40px;align-items:start;padding-bottom:45px}.footer-top h2{font-size:24px}.footer-top p{font-size:14px}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:25px;font-size:11px}.footer-bottom div{display:flex;gap:20px}.page-heading{max-width:1140px;margin:auto;padding:55px 25px 35px;border-bottom:1px solid var(--line)}.page-heading h1{font-size:clamp(34px,4vw,56px);max-width:900px}.breadcrumb{font-size:12px;color:var(--muted);margin-bottom:28px}.content-flow{max-width:900px;margin:0 auto;padding:40px 25px 80px;overflow-wrap:anywhere}.content-flow>div{display:contents}.content-flow h2{margin-top:48px;font-size:32px}.content-flow h3{margin-top:35px;font-size:24px}.content-flow h4{font-size:20px}.content-flow p{font-size:17px;line-height:1.9}.content-flow img{max-height:580px;object-fit:contain;margin:30px auto}.content-flow a:not(.button){text-decoration-thickness:1px}.content-flow table{display:block;max-width:100%;overflow:auto;border-collapse:collapse}.content-flow td,.content-flow th{border:1px solid var(--line);padding:10px}.content-flow ul,.content-flow ol{padding-left:25px}.content-flow li{margin-bottom:10px}.content-flow.legal{max-width:860px}.content-flow.legal h2{font-size:27px}.content-flow.legal h3{font-size:21px}.archive-note,.prototype-note{background:#fff4e8;border-left:3px solid var(--orange);padding:20px;margin:20px 0;font-size:14px}.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.article-card{background:var(--cream);padding:30px;display:flex;flex-direction:column}.article-card h2{font-size:25px;margin:0 0 30px}.article-card h2 a{text-decoration:none}.article-card .text-link{margin-top:auto}.video-shell{aspect-ratio:16/9;background:var(--navy);color:white;border-radius:4px;overflow:hidden}.video-shell iframe{display:block;width:100%;height:100%;border:0}.video-load{width:100%;height:100%;color:white;background:transparent;border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:15px;cursor:pointer;padding:25px}.video-load .play{color:var(--orange);font-size:48px}.video-load span:last-child{font-size:13px}#get-clear,#get-confident,#make-it-happen,#contact{scroll-margin-top:25px}
@media(min-width:1440px){.hero-copy{padding-left:70px}}@media(max-width:1100px){nav{gap:15px}.site-header{padding:20px 4%}.brand strong{font-size:17px}nav a{font-size:12px}.section{padding:70px 35px}.hero-copy{padding:45px 8%}.hero{min-height:600px}.contact,.about,.intro{gap:45px}.approach-band{margin:40px 30px}.service-card{padding:28px 22px}.service-card h3{font-size:23px}}@media(max-width:900px){.menu-toggle{display:flex;gap:15px;background:transparent;border:1px solid var(--line);padding:8px 13px;color:var(--navy);font-size:13px}.site-header{position:relative;flex-wrap:wrap}.site-header nav{display:none;width:100%;flex-direction:column;align-items:stretch;gap:0;padding:12px 0}.site-header nav.is-open{display:flex}.site-header nav a{font-size:15px;padding:13px 0;border-bottom:1px solid var(--line)}.hero{grid-template-columns:1fr 1fr;min-height:560px}.hero h1{font-size:40px}.hero .lead{font-size:16px}.service-grid{gap:14px}.service-card{min-height:470px}.service-card h3{font-size:21px}.service-card p:not(.eyebrow){font-size:14px}.service-card .button{font-size:13px}.intro,.contact{gap:35px}.footer-bottom{flex-direction:column}.about{grid-template-columns:.75fr 1fr;gap:40px}}
@media(max-width:640px){body{font-size:16px}.prototype-bar{font-size:10px;line-height:1.5}.prototype-bar span{font-size:9px;display:block;padding:0}.site-header{padding:16px 22px}.brand img{width:40px;height:40px}.brand strong{font-size:17px}.brand small{font-size:11px}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:40px 25px}.hero h1{font-size:39px;line-height:1.1}.hero .lead{font-size:17px}.hero-photo{height:340px;min-height:0;grid-row:2}.hero-photo img{object-position:65% center}.hero .button{font-size:13px;padding:14px 17px}.section{padding:58px 25px}.intro,.about,.contact{grid-template-columns:1fr;gap:25px}.section h2{font-size:32px}.intro h2 br{display:none}.service-grid,.quote-grid,.article-grid{grid-template-columns:1fr}.service-card{min-height:0;padding:30px}.service-card h3{font-size:26px}.service-card p:not(.eyebrow){font-size:16px}.service-card .service-meta{padding-top:8px}.support .section-heading{margin-bottom:30px}.approach-band{margin:30px 18px;padding:35px 26px}.approach-band h2{font-size:29px}.about-photo img{height:420px;object-position:center 20%}.about{padding-top:25px}.quote{padding:26px}.quote blockquote{font-size:16px}.contact form{padding:25px}.footer-top{flex-direction:column}.footer-bottom div{flex-wrap:wrap;gap:12px 20px}.page-heading{padding:35px 25px 20px}.page-heading h1{font-size:36px}.content-flow{padding-top:25px}.content-flow h2{font-size:28px}.content-flow p{font-size:16px}.video-load strong{font-size:15px}.video-load span:last-child{font-size:11px}.video-load .play{font-size:30px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* First review pass: typography and buttons only. Section backgrounds are preserved. */
/* Navigation review: improve readability without changing the menu layout. */
.site-header{padding-right:0}
@media(max-width:1100px) and (min-width:901px){.site-header{padding-right:0}}
@media(max-width:900px){.site-header{padding-right:4%}}
@media(max-width:640px){.site-header{padding-right:22px}}
nav a{font-size:16px}
@media(min-width:901px) and (max-width:1100px){nav{gap:13px}nav a{font-size:14px}}
@media(max-width:900px){.site-header nav a{font-size:17px}.menu-toggle{font-size:16px}}
@font-face{font-family:Roboto;src:url('./fonts/roboto-latin.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--ink:#082865;--muted:#082865}
body,button,input,textarea{font-family:Roboto,Arial,sans-serif}
.eyebrow,.about .eyebrow{color:var(--navy)}
.hero .eyebrow{color:#F58220}
.hero-detail{font-size:14px}
.intro>.eyebrow,.intro>div>.eyebrow{font-size:14px}
.support>.section-heading>.eyebrow{color:#00adef}
.testimonials>.section-heading>.eyebrow{color:#00adef}
.contact .eyebrow{color:#F58220}
.contact form label{font-size:15px}
.contact form .form-note{font-size:16px}
.contact form{border-radius:16px;box-shadow:0 8px 24px rgba(8,40,101,.10),0 2px 6px rgba(8,40,101,.04)}
/* Contact review: shared heading, aligned columns and a common button baseline. */
.contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:72px;row-gap:0;align-items:stretch}
.contact-heading{grid-column:1/-1;margin-bottom:36px}
.contact-heading .eyebrow{margin-bottom:16px}
.contact-heading h2{margin-bottom:0}
.contact-copy{display:flex;flex-direction:column;padding:32px 0;min-width:0}
.contact-copy>p:first-child{font-size:19px;font-weight:500;line-height:1.65}
.contact-copy>p{max-width:490px}
.contact-copy .contact-details{margin-top:auto;padding-top:24px;margin-bottom:24px;line-height:1.9}
.contact-copy>.button{width:100%;justify-content:center;gap:16px;margin-top:0}
.contact form{padding:32px;margin:0;display:flex;flex-direction:column}
.contact form .form-note{margin-bottom:24px;line-height:1.65}
.contact form label{margin-bottom:20px}
.contact form input,.contact form textarea{border-radius:6px}
.contact form textarea{min-height:145px}
.contact form>.button{width:100%;justify-content:center;gap:16px;margin-top:auto}
.contact #form-result:empty{display:none}
@media(min-width:641px) and (max-width:900px){.contact{column-gap:36px}.contact form{padding:26px}.contact-copy{padding:26px 0}.contact-copy>.button{font-size:14px;padding:14px 12px}}
@media(max-width:640px){.contact{grid-template-columns:1fr;row-gap:28px}.contact-heading{margin-bottom:0}.contact-copy{padding:0}.contact-copy .contact-details{margin-top:0;padding-top:0}.contact form{padding:26px}.contact-copy>.button{font-size:15px}}

/* Contact correction: natural text flow; form top aligns with the main heading. */
.contact{align-items:start}
.contact-copy{display:block;padding:0}
.contact-copy>.eyebrow{margin-bottom:16px}
.contact-copy>h2{margin-bottom:28px}
.contact-copy>p{max-width:none}
.contact-copy .contact-details{margin-top:0;padding-top:0;margin-bottom:24px}
.contact-copy>.button,.contact form>.button{width:auto;display:inline-flex;align-self:flex-start;justify-content:space-between;margin-top:0;padding:14px 24px;font-size:16px}
.contact form{margin-top:37px}
@media(max-width:900px) and (min-width:641px){.contact-copy>.button{font-size:14px;padding:14px 16px}}
@media(max-width:640px){.contact form{margin-top:0}.contact-copy>.button{font-size:15px}}
.contact{row-gap:0}
.contact>.eyebrow{grid-column:1/-1;margin-bottom:16px}
.contact form{margin-top:0}
@media(max-width:640px){.contact form{margin-top:28px}}
/* Align only the contact buttons, leaving paragraph spacing natural. */
@media(min-width:641px){
  .contact{align-items:stretch}
  .contact-copy{display:flex;flex-direction:column;padding-bottom:32px}
  .contact-copy>.button{margin-top:auto;align-self:flex-start}
  .contact form>.button{margin-top:auto}
  .contact-copy .contact-details{margin-top:0;padding-top:0}
}
@media(min-width:641px) and (max-width:900px){.contact-copy{padding-bottom:26px}}
/* Hero review: lift the complete section as one surface. */
.hero{position:relative;z-index:1;border-radius:16px;overflow:hidden;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
@media(max-width:640px){.hero{border-radius:12px;box-shadow:0 8px 24px rgba(8,40,101,.14),0 2px 6px rgba(8,40,101,.06)}}
.approach-band .eyebrow{color:var(--orange)}
.approach-band .eyebrow{font-size:14px}
.approach-band::after{content:none}
.approach-band::before{content:"";position:absolute;inset:0 0 0 35%;background-image:url('./wp-content/uploads/2026/08/PHOTO-2025-08-31-17-51-40-2.jpg');background-size:cover;background-position:center 24%;opacity:.12;mask-image:linear-gradient(to right,transparent 0%,#000 72%);-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 72%);pointer-events:none;z-index:0}
.approach-band>*{position:relative;z-index:1}
@media(max-width:640px){.approach-band::before{left:0;background-position:65% 20%;opacity:.10;mask-image:linear-gradient(to right,transparent 5%,#000 100%);-webkit-mask-image:linear-gradient(to right,transparent 5%,#000 100%)}}
.button{font-size:16px;font-weight:600;line-height:1.4;padding:14px 24px;border-radius:8px;min-height:50px;color:var(--navy);transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.button:hover{background:var(--navy);border-color:var(--navy);color:var(--white)}
.button.secondary{color:var(--navy)}
.button.secondary:hover{background:var(--navy);color:var(--white)}
.approach-band .button.secondary{color:var(--white)}
.approach-band .button.secondary{border-color:#00adef}
.approach-band .button.secondary:hover{background:var(--orange);border-color:var(--orange);color:var(--navy)}
@media(max-width:900px){.service-card .button{font-size:15px}}
@media(max-width:640px){.hero .button{font-size:15px;padding:14px 20px}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}

/* Service cards: match the supplied reference without changing the section background. */
.hero .eyebrow,.intro .eyebrow,.support>.section-heading>.eyebrow,.approach-band>.eyebrow,.about .eyebrow,.testimonials>.section-heading>.eyebrow,.contact .eyebrow{font-family:Roboto,Arial,sans-serif;font-size:14px}
.support{position:relative;z-index:1;border-radius:16px;overflow:hidden;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
@media(max-width:640px){.support{border-radius:12px;box-shadow:0 8px 24px rgba(8,40,101,.14),0 2px 6px rgba(8,40,101,.06)}}
.service-grid{gap:36px;align-items:stretch}
.service-card{border:1px solid var(--line);border-top:6px solid var(--orange);border-radius:22px;padding:36px 30px 24px;min-height:520px;box-shadow:0 14px 36px rgba(8,40,101,.10);transition:transform .25s ease,box-shadow .25s ease}
.service-card:nth-child(2){border-top-color:var(--navy)}
.service-card:nth-child(3){border-top-color:var(--blue)}
.service-card .eyebrow{color:var(--orange);font-size:16px;font-weight:400;letter-spacing:0;margin-bottom:10px}
.service-card h3{font-size:23px;font-weight:650;line-height:1.45;letter-spacing:-.015em;min-height:67px;margin-bottom:18px}
.service-card p:not(.eyebrow){font-size:16px;line-height:1.8;color:var(--navy)}
.service-card .service-meta{font-size:15px!important;line-height:1.8;min-height:78px;padding-top:24px;margin-bottom:18px}
.service-card .service-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:68px;padding:13px 10px;border-radius:11px;text-align:center;font-size:15px;font-weight:700;line-height:1.3;color:var(--white)}
.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 44px rgba(8,40,101,.14)}
.service-card .service-button:hover{color:var(--white)}
@media(min-width:641px) and (max-width:900px){.service-grid{gap:20px}.service-card{padding:30px 20px 22px;min-height:560px}.service-card h3{font-size:20px;min-height:87px}.service-card p:not(.eyebrow){font-size:14px}.service-card .service-button{font-size:13px}}
@media(max-width:640px){.service-grid{gap:26px}.service-card{padding:30px 28px 24px;min-height:0}.service-card h3{font-size:24px;min-height:0}.service-card .service-meta{min-height:0;padding-top:18px}.service-card .service-button{font-size:15px}}
@media(prefers-reduced-motion:reduce){.service-card{transition:none}.service-card:hover{transform:none}}

/* Introduction: retain the eyebrow and follow the supplied portrait/text reference. */
/* Client experiences: softer cards, with the existing section background retained. */
.conversation h2{font-size:26px;margin-bottom:24px}
.social-links{display:flex;gap:25px;align-items:flex-start;flex-wrap:wrap}
.social-links a{display:flex;flex-direction:column;align-items:center;gap:9px;font-size:13px;font-weight:500;text-decoration:none;padding:0;white-space:nowrap}
.social-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:var(--white);color:var(--navy);transition:color .2s ease,border-color .2s ease}
.social-icon svg{width:23px;height:23px;fill:currentColor}
.social-links a:hover .social-icon{color:var(--orange);border-color:var(--blue)}
@media(max-width:900px){.social-links{gap:18px}.social-links a{font-size:12px}}
@media(max-width:640px){.conversation{width:100%}.conversation h2{font-size:25px}.social-links{gap:16px 20px}.social-links a{font-size:12px}.social-icon{width:44px;height:44px}}
.quote-grid{gap:28px}
.quote{border:1px solid var(--line);border-top:3px solid var(--blue);border-radius:20px;padding:32px 34px;box-shadow:0 10px 28px rgba(8,40,101,.09);display:flex;flex-direction:column}
.quote blockquote{font-size:17px;line-height:1.85;margin-bottom:28px}
.quote blockquote::before{font-size:48px;margin-bottom:10px;color:var(--orange)}
.quote figcaption{margin-top:auto;font-size:14px;font-weight:700;line-height:1.6}
.quote figcaption strong,.quote figcaption span{display:block}
.quote figcaption span{font-size:13px;font-weight:400;margin-top:3px}
@media(max-width:640px){.quote-grid{gap:24px}.quote{padding:28px 26px;border-radius:18px}.quote blockquote{font-size:16px}}
.about{position:relative;border-radius:16px;background:var(--white);box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
@media(max-width:640px){.about{border-radius:12px;box-shadow:0 8px 24px rgba(8,40,101,.14),0 2px 6px rgba(8,40,101,.06)}}
.about{grid-template-columns:350px minmax(0,1fr);gap:100px;align-items:start;padding-top:45px;padding-bottom:70px}
.about-photo img{width:100%;height:540px;max-height:none;object-fit:cover;object-position:center center;border-radius:24px;box-shadow:0 18px 38px rgba(8,40,101,.13)}
.about-photo .button{width:100%;margin-top:36px;min-height:58px;justify-content:center;padding:14px 18px;font-size:15px;color:var(--white)}
.about-photo .button span{display:none}
.about-copy h2{font-size:38px;margin:0 0 42px}
.about-copy .eyebrow{margin:0 0 13px}
.about-copy p:not(.eyebrow){font-size:18px;line-height:1.8;color:var(--navy);margin-bottom:18px}
.about-copy h2+p{border-left:4px solid var(--orange);padding:2px 0 2px 18px;font-style:italic;font-weight:650;margin-bottom:24px}
.about-copy p:last-child{font-weight:700;margin-top:22px;margin-bottom:0}
@media(min-width:641px) and (max-width:1100px){.about{grid-template-columns:32% minmax(0,1fr);gap:65px}.about-photo img{height:auto;aspect-ratio:322/500}.about-photo .button{font-size:14px;padding:14px 12px}.about-copy h2{font-size:36px}.about-copy p:not(.eyebrow){font-size:17px}}
@media(max-width:640px){.about{grid-template-columns:1fr;gap:38px;padding-top:32px}.about-photo{width:100%;max-width:350px;margin:0 auto}.about-photo img{height:auto;aspect-ratio:322/500}.about-photo .button{margin-top:26px;font-size:15px}.about-copy h2{font-size:34px;margin-bottom:30px}.about-copy p:not(.eyebrow){font-size:17px}}

/* Agreed homepage type scale. Preserve hero, card titles and footer hierarchy. */
/* Orange call-to-action buttons use the approved navy text. */
.button:not(.secondary),.service-card .service-button,.about-photo .button{color:var(--navy)}
.button:not(.secondary):hover,.service-card .service-button:hover,.about-photo .button:hover{color:var(--white)}
.approach-band{border-radius:16px;box-shadow:none}
@media(max-width:640px){.approach-band{border-radius:12px}}
main>.section h2,.about-copy h2{font-size:42px}
main .button,.hero .button,.service-card .service-button,.about-photo .button,.contact-copy>.button,.contact form>.button{font-family:Roboto,Arial,sans-serif;font-size:16px;font-weight:600}
.intro p:not(.eyebrow),.section-heading>p:not(.eyebrow),.service-card p:not(.eyebrow):not(.service-meta),.about-copy p:not(.eyebrow),.quote blockquote,.contact-copy>p:not(.eyebrow),.contact form .form-note{font-size:18px}
@media(max-width:640px){
  main>.section h2,.about-copy h2{font-size:32px}
  .intro p:not(.eyebrow),.section-heading>p:not(.eyebrow),.service-card p:not(.eyebrow):not(.service-meta),.about-copy p:not(.eyebrow),.quote blockquote,.contact-copy>p:not(.eyebrow),.contact form .form-note{font-size:16px}
}

/* Reveals activate only when JavaScript and motion preferences permit. */
.scroll-reveal{opacity:1;transform:none}
.scroll-reveal.reveal-pending{opacity:0;transform:translateY(22px)}
.scroll-reveal.reveal-pending,.scroll-reveal.reveal-visible{transition:opacity .65s ease var(--reveal-delay,0ms),transform .65s cubic-bezier(.2,.65,.3,1) var(--reveal-delay,0ms)}
.scroll-reveal.reveal-visible{opacity:1;transform:none}
.service-card.scroll-reveal.reveal-visible:hover{transform:translateY(-5px)}
@media(prefers-reduced-motion:reduce){.scroll-reveal,.scroll-reveal.reveal-pending,.scroll-reveal.reveal-visible{opacity:1;transform:none;transition:none}.service-card.scroll-reveal.reveal-visible:hover{transform:none}}

/* Support page: the homepage's established visual language, scoped to this page. */
.services-page{max-width:1440px;margin:0 auto}
.services-page p{font-size:18px;line-height:1.8;color:var(--navy)}
.services-page .eyebrow{font-size:14px;font-family:Roboto,Arial,sans-serif;color:var(--orange);line-height:1.5}
.services-page h2{font-size:42px;line-height:1.2}
.services-page .button{font-size:16px;font-weight:600}
.services-hero{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;padding:70px max(5%,calc((100% - 1140px)/2));background:var(--cream);border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06);align-items:start}
.services-hero h1{font-size:60px;line-height:1.12;margin:0}
.services-introduction p:first-child{font-weight:600;font-size:21px}
.services-introduction p:last-child{margin-bottom:0}
.services-approach{max-width:1240px;margin:80px auto;display:grid;grid-template-columns:1.1fr .8fr;gap:80px;padding:45px 50px 50px;align-items:center;border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.12),0 2px 8px rgba(8,40,101,.05)}
.services-approach img{width:100%;height:560px;object-fit:cover;object-position:center 24%;border-radius:24px;box-shadow:0 14px 32px rgba(8,40,101,.12)}
.services-approach .button{margin-top:8px}
.services-options{padding:65px max(5%,calc((100% - 1140px)/2));background:var(--cream);border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
.services-options-heading{margin-bottom:38px}
.services-options-heading .eyebrow{color:var(--blue)}
.services-offer{scroll-margin-top:35px;display:grid;grid-template-columns:310px minmax(0,1fr);gap:65px;padding:38px 40px;margin-bottom:32px;background:var(--white);border:1px solid var(--line);border-top:6px solid var(--orange);border-radius:22px;box-shadow:0 14px 36px rgba(8,40,101,.10)}
.services-offer:nth-of-type(2){border-top-color:var(--navy)}
.services-offer:nth-of-type(3){border-top-color:var(--blue)}
.offer-summary{display:flex;flex-direction:column;align-items:flex-start}
.offer-summary .eyebrow{font-size:16px;letter-spacing:0;font-weight:400;margin-bottom:12px}
.offer-summary h3{font-size:28px;line-height:1.35;font-weight:650;letter-spacing:-.015em;margin:0 0 24px}
.offer-summary .offer-meta{font-size:16px;font-weight:600;margin-bottom:26px}
.offer-summary .button{margin-top:auto;width:100%;justify-content:center;text-align:center;padding:14px 16px;gap:12px}
.offer-description p:first-child{font-weight:600}
.offer-description p:last-child{margin-bottom:0}
.services-choice{max-width:1000px;margin:70px auto 80px;padding:45px 50px;border-radius:16px;background:var(--navy)}
.services-choice h2,.services-choice p{color:var(--white)}
.services-choice .button{margin-top:8px}
@media(min-width:641px) and (max-width:1100px){.services-hero{gap:45px;padding:50px 35px}.services-hero h1{font-size:48px}.services-approach{margin:60px 30px;gap:40px;padding:35px}.services-approach img{height:540px}.services-options{padding:55px 35px}.services-offer{grid-template-columns:240px minmax(0,1fr);gap:35px;padding:30px}.services-choice{margin:60px 30px;padding:40px}}
@media(max-width:800px) and (min-width:641px){.services-hero{grid-template-columns:1fr;gap:32px}.services-hero h1 br{display:none}.services-approach{grid-template-columns:1fr}.services-approach img{height:400px;object-position:center 22%}.services-offer{grid-template-columns:1fr;gap:28px}.offer-summary .button{width:auto}.services-offer .offer-meta{margin-bottom:20px}}
@media(max-width:640px){.services-page p{font-size:16px}.services-page h2{font-size:32px}.services-page .eyebrow{font-size:14px}.services-hero{grid-template-columns:1fr;gap:28px;padding:40px 25px;border-radius:12px}.services-hero h1{font-size:39px}.services-hero h1 br{display:none}.services-introduction p:first-child{font-size:18px}.services-approach{grid-template-columns:1fr;margin:35px 18px;padding:30px 25px;gap:30px;border-radius:12px}.services-approach img{height:400px;object-position:center 22%}.services-options{padding:40px 25px;border-radius:12px}.services-offer{grid-template-columns:1fr;gap:28px;padding:28px 25px;margin-bottom:26px}.offer-summary .eyebrow{font-size:16px}.offer-summary h3{font-size:26px;margin-bottom:18px}.offer-summary .offer-meta{font-size:16px;margin-bottom:22px}.services-choice{margin:35px 18px 50px;padding:32px 25px;border-radius:12px}.services-choice .button{padding:14px 16px}}

/* Support hero review: homepage split layout, photograph on the left facing inward. */
.services-hero{grid-template-columns:1fr 1fr;gap:0;padding:0;align-items:stretch;overflow:hidden}
.services-hero .hero-photo{position:relative;min-height:650px;grid-row:auto}
.services-hero .hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:65% center;transform:scaleX(-1)}
.services-hero .hero-copy{padding:55px 10%;align-self:center}
.services-hero h1{font-size:clamp(38px,4.2vw,65px);line-height:1.13;margin-bottom:25px}
.services-hero .services-introduction>p:not(.eyebrow){font-size:18px;line-height:1.7;font-weight:400;margin-bottom:18px}
.services-hero .services-introduction>p:last-child{margin-bottom:0}
.services-hero .services-introduction>p.eyebrow{font-size:14px;font-weight:750;line-height:1.5;color:var(--orange)}
@media(min-width:641px) and (max-width:900px){.services-hero h1{font-size:40px}.services-hero .hero-copy{padding:45px 8%}.services-hero .services-introduction>p:not(.eyebrow){font-size:16px}}
@media(max-width:640px){.services-hero{grid-template-columns:1fr}.services-hero .hero-photo{height:340px;min-height:0;grid-row:1}.services-hero .hero-copy{padding:40px 25px}.services-hero h1{font-size:39px}.services-hero .services-introduction>p:not(.eyebrow){font-size:16px}}

/* Slightly smaller headings on the support page. */
.services-hero h1{font-size:clamp(36px,3.8vw,58px)}
.services-page h2{font-size:38px}
.offer-summary h3{font-size:26px}
@media(min-width:641px) and (max-width:900px){.services-hero h1{font-size:38px}}
@media(max-width:640px){.services-hero h1{font-size:35px}.services-page h2{font-size:30px}.offer-summary h3{font-size:24px}}

/* Approach section: navy label and an open, flat layout. */
.services-approach .eyebrow{color:var(--navy)}
.services-approach{box-shadow:none;border-radius:0}
.services-approach .button.secondary{border-color:var(--orange)}

/* Homepage hero: a slightly smaller headline. */
main>.hero:not(.services-hero) h1{font-size:clamp(36px,3.9vw,60px)}
@media(max-width:900px){main>.hero:not(.services-hero) h1{font-size:38px}}
@media(max-width:640px){main>.hero:not(.services-hero) h1{font-size:36px}}

/* Match the support hero headline to the homepage hero. */
.services-hero h1{font-size:clamp(36px,3.9vw,60px)}
@media(max-width:900px){.services-hero h1{font-size:38px}}
@media(max-width:640px){.services-hero h1{font-size:36px}}

/* Support hero: smaller headline following review. */
.services-hero h1{font-size:clamp(34px,3.4vw,52px)}
@media(max-width:900px){.services-hero h1{font-size:35px}}
@media(max-width:640px){.services-hero h1{font-size:33px}}

/* Project P Approach: preserve the WordPress content with homepage styling. */
.approach-page{max-width:1440px;margin:0 auto;color:var(--navy)}
.approach-page .pp-wrap{max-width:1140px;margin:0 auto}
.approach-page p,.approach-page li{font-size:18px;line-height:1.8}
.approach-page h2{font-size:42px;line-height:1.2;margin:0 0 26px}
.approach-page h3{font-size:26px;line-height:1.3;margin:0 0 24px}
.approach-page .pp-hero{padding:65px max(5%,calc((100% - 1140px)/2));background:var(--cream);border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
.approach-page .pp-hero .pp-wrap{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:80px;align-items:start}
.approach-page .pp-hero h1{font-size:clamp(34px,3.4vw,52px);grid-column:1;margin-bottom:30px}
.approach-page .pp-hero .promise{grid-column:1;border-left:3px solid var(--orange);padding-left:22px;font-size:22px;line-height:1.6;margin:0}
.approach-page .pp-hero .lead{grid-column:2;grid-row:1 / span 2}
.approach-page .pp-hero .lead p:last-child{margin-bottom:0}
.approach-page .pp-section{padding:75px max(5%,calc((100% - 1140px)/2))}
.approach-page .pp-section:nth-child(2){background:var(--navy);border-radius:16px;margin-top:65px;padding-bottom:60px}
.approach-page .pp-section:nth-child(2) h2,.approach-page .pp-section:nth-child(2) p{color:var(--white)}
.approach-page .pp-section:nth-child(2) .pp-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}
.approach-page .pp-section:nth-child(2) .pp-copy>p:first-child{font-size:23px;line-height:1.5;color:var(--white);border-left:3px solid var(--orange);padding-left:22px;margin-bottom:26px}
.approach-page .pp-section:nth-child(3){padding-top:45px;padding-bottom:25px}
.approach-page .pp-journey{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.approach-page .pp-card{border:1px solid var(--line);border-top:6px solid var(--orange);border-radius:22px;padding:32px 28px;background:var(--white);box-shadow:0 14px 36px rgba(8,40,101,.10)}
.approach-page .pp-card:nth-child(2){border-top-color:var(--navy)}
.approach-page .pp-card:nth-child(3){border-top-color:var(--blue)}
.approach-page .pp-card .pp-step{font-size:14px;font-weight:750;letter-spacing:.08em;color:var(--orange);margin-bottom:18px}
.approach-page .pp-card p:last-child{margin-bottom:0}
.approach-page .pp-section:nth-child(n+4) .pp-wrap{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}
.approach-page .pp-section:nth-child(5){background:var(--cream);border-radius:16px}
.approach-page ul{padding-left:22px;margin:0 0 26px}
.approach-page li{padding-left:6px;margin-bottom:12px}
.approach-page li::marker{color:var(--orange)}
.approach-page .pp-choice{background:var(--navy);border-radius:16px;padding:60px max(5%,calc((100% - 1000px)/2));margin:0 0 70px}
.approach-page .pp-choice h2,.approach-page .pp-choice h3,.approach-page .pp-choice p{color:var(--white)}
.approach-page .pp-choice h3{font-size:24px;color:var(--white)}
.approach-page .pp-choice .button{margin-top:12px;font-size:16px;font-weight:600}
.approach-page .approach-support-link{display:block;margin-top:24px;color:var(--white);font-size:16px;text-underline-offset:5px}
@media(max-width:1000px){.approach-page .pp-hero .pp-wrap,.approach-page .pp-section:nth-child(2) .pp-wrap,.approach-page .pp-section:nth-child(n+4) .pp-wrap{column-gap:40px}.approach-page .pp-journey{grid-template-columns:1fr}.approach-page .pp-card{padding:32px}.approach-page .pp-card h3{font-size:28px}}
@media(max-width:640px){.approach-page .pp-hero{padding:40px 25px;border-radius:12px}.approach-page .pp-hero .pp-wrap,.approach-page .pp-section:nth-child(2) .pp-wrap,.approach-page .pp-section:nth-child(n+4) .pp-wrap{display:block}.approach-page .pp-hero h1{font-size:33px}.approach-page .pp-hero .promise{font-size:20px;margin-bottom:30px}.approach-page p,.approach-page li{font-size:16px}.approach-page h2{font-size:32px}.approach-page .pp-section{padding:45px 25px}.approach-page .pp-section:nth-child(2){margin-top:35px;border-radius:12px}.approach-page .pp-section:nth-child(2) .pp-copy>p:first-child{font-size:20px}.approach-page .pp-card{padding:28px 25px}.approach-page .pp-card h3{font-size:26px}.approach-page .pp-choice{padding:40px 25px;margin-bottom:35px;border-radius:12px}.approach-page .pp-choice .button{padding:14px 17px}}

/* Faint workshop photograph within the navy Founder's M.O. section. */
.approach-page .pp-section:nth-child(2){position:relative;overflow:hidden;isolation:isolate}
.approach-page .pp-section:nth-child(2)::before{content:"";position:absolute;inset:0;background-image:url('./assets/founders-mo-workshop.png');background-size:cover;background-position:center 30%;opacity:.12;pointer-events:none;z-index:-1;mask-image:linear-gradient(to right,#000 0%,#000 30%,transparent 95%);-webkit-mask-image:linear-gradient(to right,#000 0%,#000 30%,transparent 95%)}
@media(max-width:640px){.approach-page .pp-section:nth-child(2)::before{opacity:.10;background-position:45% center}}

/* Give the exploration section the hero's soft elevation. */
.approach-page .pp-section:nth-child(5){box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}

/* Match the closing invitation box to the support page. */
.approach-page .pp-choice{max-width:1000px;margin:70px auto 80px;padding:45px 50px;border-radius:16px}
@media(min-width:641px) and (max-width:1100px){.approach-page .pp-choice{margin:60px 30px;padding:40px}}
@media(max-width:640px){.approach-page .pp-choice{margin:35px 18px 50px;padding:32px 25px;border-radius:12px}}

/* Noticeboard follows the prototype's shared typography and section treatments. */
.noticeboard-page{max-width:1440px;margin:auto}
.noticeboard-page p{font-size:18px;line-height:1.8}
.noticeboard-page h2{font-size:42px;line-height:1.2}
.noticeboard-page h3{font-size:30px;line-height:1.3;margin:0 0 25px}
.noticeboard-page .button{font-size:16px;font-weight:600}
.noticeboard-hero{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;background:var(--cream);padding:60px max(5%,calc((100% - 1140px)/2));border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
.noticeboard-hero h1{font-size:clamp(34px,3.4vw,52px)}
.noticeboard-hero p:first-of-type{font-weight:650}
.noticeboard-hero p:last-child{margin-bottom:0;font-weight:650}
.noticeboard-hero img{width:100%;border-radius:16px}
.noticeboard-section{max-width:1240px;margin:75px auto;padding:0 50px}
.noticeboard-section>h2{margin-bottom:40px}
.noticeboard-feature{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:start}
.noticeboard-feature img{width:100%;border-radius:20px;box-shadow:0 14px 32px rgba(8,40,101,.12)}
.noticeboard-feature p:first-of-type{font-weight:600}
.noticeboard-events{background:var(--cream);border-radius:16px;padding:45px 50px 50px;box-shadow:0 12px 36px rgba(8,40,101,.12),0 2px 8px rgba(8,40,101,.05)}
.noticeboard-events img{height:540px;object-fit:cover;object-position:center}
.noticeboard-page .noticeboard-date{font-size:16px;font-weight:600;color:var(--navy);padding-left:18px;border-left:3px solid var(--orange)}
.noticeboard-newsletter{max-width:1000px;margin:70px auto 80px;padding:45px 50px;border-radius:16px;background:var(--navy)}
.noticeboard-newsletter h2,.noticeboard-newsletter p{color:var(--white)}
.noticeboard-newsletter .button{margin-top:8px}
@media(max-width:1100px) and (min-width:641px){.noticeboard-hero{padding:45px 35px;gap:35px}.noticeboard-section{margin:60px 30px;padding:0}.noticeboard-feature{gap:35px}.noticeboard-events{padding:35px}.noticeboard-newsletter{margin:60px 30px;padding:40px}}
@media(max-width:800px){.noticeboard-feature{grid-template-columns:1fr}.noticeboard-feature>div:first-child{max-width:600px}.noticeboard-events img{height:400px}.noticeboard-hero{grid-template-columns:1fr}.noticeboard-hero img{max-width:600px}}
@media(max-width:640px){.noticeboard-page p{font-size:16px}.noticeboard-page h2{font-size:32px}.noticeboard-page h3{font-size:26px}.noticeboard-hero{padding:40px 25px;gap:30px;border-radius:12px}.noticeboard-hero h1{font-size:33px}.noticeboard-section{margin:40px 18px;padding:0 7px}.noticeboard-section>h2{margin-bottom:28px}.noticeboard-feature{gap:30px}.noticeboard-events{padding:30px 25px;border-radius:12px}.noticeboard-events img{height:350px}.noticeboard-newsletter{margin:35px 18px 50px;padding:32px 25px;border-radius:12px}.noticeboard-page .button{padding:14px 17px}}

/* Announcement reference: one wide, raised card with centred action. */
.noticeboard-announcement{display:block;border-top:6px solid var(--orange);border-radius:22px;background:var(--white);padding:50px 48px 55px;box-shadow:0 14px 36px rgba(8,40,101,.10)}
.noticeboard-announcement>div:first-child{max-width:none}
.noticeboard-announcement h3{margin-bottom:25px}
.noticeboard-announcement .button{display:flex;width:320px;max-width:100%;justify-content:center;text-align:center;margin:65px auto 0}
@media(max-width:640px){.noticeboard-announcement{padding:30px 25px 35px}.noticeboard-announcement .button{margin-top:35px}}

/* Workshop reference: blue-topped event card with a separate heading row. */
.noticeboard-events{background:transparent;border-radius:0;padding:0 50px;box-shadow:none}
.noticeboard-event-card{background:var(--white);border-top:6px solid var(--blue);border-radius:22px;overflow:hidden;box-shadow:0 14px 36px rgba(8,40,101,.10);padding-bottom:55px}
.noticeboard-event-header{position:relative;padding:42px 48px 25px;background:linear-gradient(white,#fcfcfd)}
.noticeboard-event-header h3{padding-right:95px;margin-bottom:18px}
.noticeboard-page .noticeboard-event-header .noticeboard-date{border:0;padding:0;margin:0;font-size:18px}
.past-event-badge{position:absolute;right:28px;top:22px;border-radius:20px;background:var(--orange);color:var(--navy);font-size:14px;font-weight:700;padding:3px 14px}
.noticeboard-event-body{display:grid;grid-template-columns:1fr 2fr;gap:42px;padding:28px 58px 0}
.noticeboard-events .noticeboard-event-body img{width:100%;height:300px;object-fit:cover;border-radius:16px}
.noticeboard-event-body p:first-child{font-weight:650}
.noticeboard-event-card>.button{display:flex;justify-content:center;text-align:center;width:320px;max-width:calc(100% - 50px);margin:30px auto 0}
@media(min-width:641px) and (max-width:1100px){.noticeboard-events{padding:0}.noticeboard-event-header{padding:50px 32px 25px}.noticeboard-event-body{padding:28px 32px 0;gap:30px}}
@media(max-width:640px){.noticeboard-events{padding:0 7px}.noticeboard-event-header{padding:60px 25px 25px}.noticeboard-event-header h3{padding-right:0}.noticeboard-page .noticeboard-event-header .noticeboard-date{font-size:16px}.noticeboard-event-body{grid-template-columns:1fr;padding:25px 25px 0;gap:25px}.noticeboard-events .noticeboard-event-body img{height:280px}.noticeboard-event-card{padding-bottom:35px}.past-event-badge{right:25px;top:18px}}

/* Keep the audit's original landing-page layout and isolate its preview notice. */
.audit-page .audit-preview-form{padding:25px;background:#f6f7f9;border:1px solid #dfe5ef;border-radius:6px;margin:25px 0}
.audit-page .audit-preview-form p{font-size:16px}
.audit-page .audit-preview-form .button{color:#082865;font-size:16px}

/* Lift the audit offer panel with the prototype's soft shadow. */
.audit-page .audit-offer{box-shadow:0 12px 36px rgba(8,40,101,.18),0 2px 8px rgba(8,40,101,.08)}

/* Brand orange for the audit hero label. */
.audit-page .audit-hero>div>.audit-eyebrow{color:var(--orange)}

/* Improve readability of the smaller text inside the audit offer. */
.audit-page .audit-offer .audit-eyebrow{font-size:14px}
.audit-page .audit-offer .audit-price span{font-size:16px}
.audit-page .audit-offer .audit-small{font-size:15px;line-height:1.6}

/* Match the raised boxes used across the prototype. */
.audit-page .audit-deliver{border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
@media(max-width:640px){.audit-page .audit-deliver{border-radius:12px}}

/* Brand orange for the audit scope label. */
.audit-page .audit-scope>.audit-eyebrow{color:var(--orange)}

/* Align the audit intake with the surrounding page content. */
.audit-page .audit-intake{max-width:none;width:100%;margin:0;padding:36px 0}
.audit-page .audit-intake .hs-form-frame,.audit-page .audit-intake iframe{width:100%;max-width:100%}

/* Lift the embedded audit form while preserving its full width. */
.audit-page .audit-intake .hs-form-frame{background:var(--white);border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06);overflow:hidden}
@media(max-width:640px){.audit-page .audit-intake .hs-form-frame{border-radius:12px}}

/* Highlight the report's top priorities in brand orange. */
.audit-page .audit-deliver li strong{color:var(--orange)}

/* Exact brand navy for the audit header descriptor. */
.audit-page .audit-header>span{color:#082865}

/* Reflections uses the homepage's typography, elevation and generous spacing. */
.reflections-page{max-width:1440px;margin:auto}
.reflections-hero{padding:65px max(5%,calc((100% - 1140px)/2));background:var(--cream);border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
.reflections-hero .eyebrow{font-size:14px;color:var(--orange)}
.reflections-hero h1{font-size:clamp(34px,3.4vw,52px);max-width:900px}
.reflections-hero>p:last-child{font-size:18px;line-height:1.8;max-width:850px;margin-bottom:0}
.reflections-list{max-width:1240px;margin:65px auto 80px;padding:0 50px}
.reflection-entry{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:45px 0;border-bottom:1px solid var(--line)}
.reflection-entry:first-child{padding-top:10px}
.reflection-entry:last-child{border-bottom:0}
.reflection-entry h2{font-size:32px;line-height:1.3;margin:0}
.reflection-entry h2 a{color:var(--navy);text-decoration:none}
.reflection-entry h2 a:hover{color:var(--blue)}
.reflection-entry p{font-size:18px;line-height:1.8;margin-bottom:25px}
.reflection-entry .button{font-size:16px;font-weight:600}
@media(max-width:900px){.reflection-entry{gap:35px}.reflections-list{padding:0 35px}.reflections-hero{padding:50px 35px}.reflection-entry h2{font-size:28px}}
@media(max-width:640px){.reflections-hero{padding:40px 25px;border-radius:12px}.reflections-hero h1{font-size:33px}.reflections-hero>p:last-child,.reflection-entry p{font-size:16px}.reflections-list{padding:0 25px;margin:45px auto}.reflection-entry{grid-template-columns:1fr;gap:20px;padding:35px 0}.reflection-entry h2{font-size:26px}}

/* Restore each original article photograph on the left. */
.reflection-entry{grid-template-columns:.85fr 1.15fr;align-items:start}
.reflection-photo{display:block;overflow:hidden;border-radius:16px;box-shadow:0 12px 30px rgba(8,40,101,.12)}
.reflection-photo img{display:block;width:100%;height:auto}
.reflection-entry h2{margin-bottom:22px}
@media(max-width:640px){.reflection-entry{grid-template-columns:1fr}}

/* Boundaries article: original image, orange quote accent and shared CTA. */
.content-flow.reflection-article .reflection-article-image{width:100%;height:auto;max-height:none;object-fit:contain;border-radius:16px;margin:0 0 38px}
.reflection-article .reflection-author-quote{margin:30px 0;padding:8px 0 8px 24px;border-left:4px solid var(--orange)}
.reflection-article .reflection-author-quote p{margin:0;font-style:italic;font-weight:600;color:var(--navy)}
.reflection-article .button{font-family:Roboto,Arial,sans-serif;font-size:16px;font-weight:600;color:var(--navy)}

/* Slightly smaller title for the Boundaries article. */
body:has(.reflection-article) .page-heading h1{font-size:clamp(32px,3.5vw,50px)}
@media(max-width:640px){body:has(.reflection-article) .page-heading h1{font-size:33px}}

/* Consistent article headline typography, including headings bolded in WordPress. */
.reflection-article h2,.reflection-article h2 strong{font-family:Roboto,Arial,sans-serif;font-size:32px;font-weight:600;line-height:1.13;letter-spacing:-.035em}
.reflection-article h3,.reflection-article h3 strong{font-family:Roboto,Arial,sans-serif;font-size:24px;font-weight:600;line-height:1.13;letter-spacing:-.035em}
@media(max-width:640px){.reflection-article h2,.reflection-article h2 strong{font-size:28px}}
.reflection-article .reflection-author-quote h2{margin:0;font-style:italic}

/* Keep emphasis markup from changing article headline typography. */
.reflection-article h2 em,.reflection-article h3 em{font-style:normal;font-size:inherit;font-weight:inherit}
.reflection-article figure{margin:30px 0}
.reflection-article figure img{width:100%;border-radius:16px}
.reflection-article figcaption{font-size:14px;line-height:1.6;margin-top:10px}

/* Archived workshop, styled consistently with the prototype. */
.workshop-page{max-width:1440px;margin:auto;color:var(--navy)}
.workshop-hero{padding:60px max(5%,calc((100% - 1140px)/2));background:var(--cream);border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
.workshop-hero .eyebrow{font-size:14px;color:var(--orange)}
.workshop-hero h1{font-size:clamp(32px,3.5vw,50px);max-width:1000px}
.workshop-hero .workshop-intro{max-width:900px;font-size:20px}
.workshop-page p,.workshop-page li{font-size:18px;line-height:1.8}
.workshop-page .button{font-size:16px;font-weight:600}
.workshop-section{max-width:1140px;margin:65px auto;padding:0 25px;scroll-margin-top:30px}
.workshop-section h2{font-size:32px;margin-bottom:28px}
.workshop-section h3{font-size:24px}
.workshop-section>div{max-width:900px}
.workshop-section img{max-height:500px;width:auto;max-width:100%;object-fit:contain;border-radius:16px;margin:30px 0}
.workshop-section .video-shell{max-width:800px;margin:30px 0;border-radius:16px}
.workshop-section:nth-child(4),.workshop-section:nth-child(6){background:var(--cream);padding:40px;border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.10)}
.workshop-section details{border-bottom:1px solid var(--line);padding:18px 0}
.workshop-section summary{cursor:pointer;font-weight:600}
@media(max-width:640px){.workshop-hero{padding:40px 25px;border-radius:12px}.workshop-hero h1{font-size:33px}.workshop-page p,.workshop-page li{font-size:16px}.workshop-hero .workshop-intro{font-size:18px}.workshop-section{margin:40px 18px;padding:0 7px}.workshop-section h2{font-size:28px}.workshop-section:nth-child(4),.workshop-section:nth-child(6){padding:30px 25px}.workshop-page .button{padding:14px 17px}}

/* Tighten workshop copy and checklist spacing consistently. */
.workshop-page p,.workshop-page li{line-height:1.65}
.workshop-page p{margin-bottom:16px}
.workshop-page .workshop-checklist{line-height:1.65;margin-bottom:8px}
.workshop-section h2{margin-bottom:22px}
.workshop-section h3{margin-top:28px;margin-bottom:16px}
.workshop-section>div>p:last-child{margin-bottom:0}
.workshop-section{margin-top:50px;margin-bottom:50px}
@media(max-width:640px){.workshop-section{margin-top:35px;margin-bottom:35px}}

/* A raised personal note with Lolita's photo on the right. */
.workshop-page .workshop-personal-note{display:grid;grid-template-columns:1.2fr .8fr;gap:55px;align-items:center;background:var(--cream);padding:45px 50px;border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
.workshop-personal-note .workshop-note-photo img{width:100%;height:470px;max-height:none;object-fit:cover;object-position:center 25%;border-radius:20px;margin:0}
.workshop-note-copy p:last-child{margin-bottom:0}
@media(max-width:640px){.workshop-page .workshop-personal-note{grid-template-columns:1fr;padding:30px 25px;gap:30px;border-radius:12px}.workshop-personal-note .workshop-note-photo img{height:380px}}

/* Venue gallery: one raised box with equally sized photographs in a row. */
.workshop-page .workshop-space{background:var(--cream);padding:45px 50px;border-radius:16px;box-shadow:0 12px 36px rgba(8,40,101,.14),0 2px 8px rgba(8,40,101,.06)}
.workshop-space>.workshop-space-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;max-width:none;margin-top:28px}
.workshop-space-gallery img{width:100%;height:260px;max-height:none;object-fit:cover;border-radius:16px;margin:0}
@media(max-width:640px){.workshop-page .workshop-space{padding:30px 25px;border-radius:12px}.workshop-space>.workshop-space-gallery{grid-template-columns:repeat(3,230px);gap:16px;overflow-x:auto;padding-bottom:12px}.workshop-space-gallery img{height:220px}}

/* Match the workshop title to the support page hero headline. */
.workshop-hero h1{font-size:clamp(34px,3.4vw,52px)}
@media(max-width:900px){.workshop-hero h1{font-size:35px}}
@media(max-width:640px){.workshop-hero h1{font-size:33px}}

/* Slightly reduce the workshop hero title following review. */
.workshop-hero h1{font-size:clamp(32px,3.1vw,47px)}
@media(max-width:900px){.workshop-hero h1{font-size:33px}}
@media(max-width:640px){.workshop-hero h1{font-size:31px}}

/* The authorised Google mail form keeps the existing contact card treatment. */
.google-enquiry-frame{display:block;width:100%;height:630px;border:0;background:var(--cream)}
.contact form .google-enquiry-fallback{font-size:14px;margin:16px 0 0}

/* Newsletter invitation beneath the Reflections introduction. */
.reflections-hero .button{margin-top:10px;font-size:16px;font-weight:600}
.reflections-hero>p:not(.eyebrow){font-size:18px;line-height:1.8;max-width:850px;margin-bottom:22px}
@media(max-width:640px){.reflections-hero>p:not(.eyebrow){font-size:16px}}

/* Open approach layout, matching the homepage's Space to Think section. */
.services-page .services-approach{grid-template-columns:1fr 1fr;gap:90px;align-items:start;background:transparent;border-radius:0;box-shadow:none}
.services-approach-heading h2{margin-bottom:0}
.services-approach-copy p:last-of-type{margin-bottom:22px}
@media(min-width:641px) and (max-width:1100px){.services-page .services-approach{gap:45px}}
@media(max-width:640px){.services-page .services-approach{grid-template-columns:1fr;gap:25px}}

/* Slightly shorter page heroes, retaining the approved typography and widths. */
.hero{min-height:590px}
.hero .hero-copy{padding-top:55px;padding-bottom:50px}
.services-hero .hero-photo{min-height:590px}
.services-hero .hero-copy{padding-top:48px;padding-bottom:48px}
.approach-page .pp-hero,.reflections-hero{padding-top:55px;padding-bottom:55px}
.noticeboard-hero,.workshop-hero{padding-top:50px;padding-bottom:50px}
.audit-page .audit-hero{padding-top:56px;padding-bottom:54px}
.page-heading{padding-top:48px;padding-bottom:30px}
@media(max-width:1100px){.hero{min-height:550px}.hero .hero-copy{padding-top:40px;padding-bottom:40px}.noticeboard-hero{padding-top:40px;padding-bottom:40px}}
@media(max-width:900px){.hero{min-height:510px}.services-hero .hero-copy{padding-top:40px;padding-bottom:40px}.reflections-hero{padding-top:43px;padding-bottom:43px}}
@media(max-width:760px){.audit-page .audit-hero{padding-top:32px;padding-bottom:32px}}
@media(max-width:640px){
 .hero{min-height:0}
 .hero .hero-copy,.services-hero .hero-copy{padding-top:34px;padding-bottom:34px}
 .hero .hero-photo,.services-hero .hero-photo{height:310px;min-height:0}
 .approach-page .pp-hero,.reflections-hero,.noticeboard-hero,.workshop-hero{padding-top:34px;padding-bottom:34px}
 .page-heading{padding-top:30px;padding-bottom:17px}
}

/* Further soften the homepage hero headline scale. */
main>.hero:not(.services-hero) h1{font-size:clamp(34px,3.4vw,52px)}
@media(max-width:900px){main>.hero:not(.services-hero) h1{font-size:35px}}
@media(max-width:640px){main>.hero:not(.services-hero) h1{font-size:33px}}

/* One shared main-headline style across every page and article. */
:root{--hero-headline-size:clamp(34px,3.4vw,52px)}
body #main h1,body #audit-top h1{font-family:Roboto,Arial,sans-serif;font-size:var(--hero-headline-size);font-weight:650;line-height:1.13;letter-spacing:-.035em;margin-top:0;margin-bottom:25px}
@media(max-width:900px){:root{--hero-headline-size:35px}}
@media(max-width:640px){:root{--hero-headline-size:33px}}
