/*
Theme Name: Vision Luxe
Theme URI: https://vision-services.co.in/
Author: Vision Services
Description: Custom mobile-first WordPress theme for Vision Services.
Version: 1.0.0
Text Domain: vision-luxe
*/

:root{--ink:#17191d;--muted:#646970;--red:#b62432;--red-dark:#871b27;--paper:#f8f6f2;--white:#fff;--line:#e5e0d9;--radius:22px;--content:1200px;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}img{max-width:100%;height:auto}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--red);outline-offset:3px}.container{width:min(calc(100% - 40px),var(--content));margin-inline:auto}.skip-link{position:absolute;left:12px;top:-80px;background:var(--white);padding:12px;z-index:100}.skip-link:focus{top:12px}.site-header{position:relative;z-index:20;background:rgba(248,246,242,.94);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:74px;gap:20px}.brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none;font-weight:800;letter-spacing:.08em;font-size:.78rem}.brand img{width:48px;height:48px;object-fit:contain}.menu-toggle{border:1px solid var(--line);background:var(--white);border-radius:12px;padding:10px 13px}.primary-nav{display:none;position:absolute;left:0;right:0;top:74px;background:var(--paper);padding:12px 20px 24px;border-bottom:1px solid var(--line);box-shadow:0 20px 30px #17191d12}.primary-nav.is-open{display:block}.primary-nav ul{padding:0;margin:0;list-style:none;display:grid;gap:4px}.primary-nav a{display:block;padding:12px;text-decoration:none;font-weight:600}.primary-nav a:hover{color:var(--red)}.header-cta{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;padding:14px 22px;background:var(--red);color:var(--white);text-decoration:none;font-weight:700;border:1px solid var(--red);transition:transform .3s cubic-bezier(.2,.8,.2,1),background .3s}.button:hover{transform:translateY(-3px);background:var(--red-dark)}.button.ghost{background:transparent;color:var(--ink);border-color:#9c9a96}.button.ghost:hover{background:var(--white)}.eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--red);font-weight:700;font-size:.72rem}.hero{overflow:hidden;background:radial-gradient(circle at 90% 12%,#eddcda,transparent 35%),var(--paper);padding:56px 0 76px}.hero-grid{display:grid;gap:40px}.hero h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-.055em;line-height:1.02;font-size:clamp(3.3rem,10vw,7.5rem);margin:18px 0 24px}.hero h1 em{font-style:normal;color:var(--red)}.lead{font-size:1.08rem;line-height:1.7;color:var(--muted);max-width:58ch}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.hero-visual{min-height:360px;border-radius:var(--radius);background:linear-gradient(145deg,#292328,#8f2632 70%,#dc816e);position:relative;overflow:hidden;display:grid;place-items:center}.hero-visual:before{content:"";position:absolute;inset:8%;border:1px solid #ffffff70;border-radius:50%;transform:scale(.85);animation:orbit-in 1.4s cubic-bezier(.2,.8,.2,1) both}.hero-visual img{width:min(60%,330px);filter:drop-shadow(0 25px 30px #0004);animation:float-in 1.1s cubic-bezier(.2,.8,.2,1) both}.visual-caption{position:absolute;left:24px;bottom:20px;color:white;text-transform:uppercase;letter-spacing:.2em;font-size:.68rem}.section{padding:76px 0}.section-head{max-width:740px;margin-bottom:34px}.section h2{font-family:Georgia,serif;font-size:clamp(2.5rem,6vw,4.8rem);font-weight:400;letter-spacing:-.045em;line-height:1.07;margin:10px 0 18px}.section-intro{line-height:1.7;color:var(--muted);font-size:1.04rem}.services-grid{display:grid;gap:14px}.service-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:27px;min-height:235px;text-decoration:none;display:flex;flex-direction:column;justify-content:space-between;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .4s}.service-card:hover{transform:translateY(-7px);box-shadow:0 20px 50px #17191d14}.service-card .number{font-size:.75rem;color:var(--red);font-weight:800}.service-card h3{font-family:Georgia,serif;font-size:2rem;font-weight:400;margin:15px 0 5px}.service-card p{margin:0;color:var(--muted);line-height:1.55}.dark-section{background:#1b1d21;color:var(--white)}.dark-section .section-intro{color:#c2c2c1}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:40px}.stat{border-top:1px solid #ffffff4d;padding-top:15px}.stat strong{display:block;font-family:Georgia,serif;font-size:clamp(2.4rem,7vw,4rem);font-weight:400}.stat span{color:#c2c2c1}.story-grid{display:grid;gap:35px;align-items:center}.story-art{min-height:360px;border-radius:var(--radius);background:linear-gradient(145deg,#e6d5cc,#a3323c);position:relative;overflow:hidden}.story-art:after{content:"VISION";position:absolute;left:-8%;bottom:-9%;font-family:Georgia,serif;font-size:clamp(6rem,22vw,17rem);letter-spacing:-.1em;color:#ffffff60}.insight-grid{display:grid;gap:16px}.insight-card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:25px;text-decoration:none}.insight-card h3{font-family:Georgia,serif;font-size:1.5rem;font-weight:400;line-height:1.2}.insight-card time{color:var(--muted);font-size:.8rem}.page-title{padding:55px 0 25px}.page-title h1{font-family:Georgia,serif;font-size:clamp(3rem,8vw,5rem);font-weight:400;letter-spacing:-.05em;margin:10px 0}.content-area{background:white;padding:35px;border-radius:var(--radius);line-height:1.75;overflow-wrap:anywhere}.content-area h2,.content-area h3{font-family:Georgia,serif;line-height:1.2}.content-area a{color:var(--red)}.post-list{display:grid;gap:20px;padding-bottom:80px}.post-card{border-radius:var(--radius);border:1px solid var(--line);padding:25px;background:white}.post-card h2{font-family:Georgia,serif;font-weight:400}.post-card a{text-decoration:none}.pagination{padding:20px 0 70px}.site-footer{background:#141518;color:white;padding:64px 0 26px}.footer-grid{display:grid;gap:30px}.footer-grid h2,.footer-grid h3{font-family:Georgia,serif;font-weight:400}.footer-grid ul{padding:0;list-style:none;line-height:2}.footer-grid a{text-decoration:none;color:#dfdcda}.footer-grid a:hover{color:white}.footer-bottom{border-top:1px solid #ffffff3b;margin-top:48px;padding-top:20px;color:#aaa;font-size:.85rem}
@keyframes orbit-in{from{opacity:0;transform:scale(.6) rotate(-35deg)}to{opacity:1;transform:scale(.85) rotate(0)}}@keyframes float-in{from{opacity:0;transform:translateY(35px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(min-width:680px){.services-grid{grid-template-columns:repeat(2,1fr)}.insight-grid{grid-template-columns:repeat(3,1fr)}.stat-grid{grid-template-columns:repeat(4,1fr)}}
@media(min-width:980px){.container{width:min(calc(100% - 72px),var(--content))}.header-inner{min-height:90px}.brand img{width:58px;height:58px}.menu-toggle{display:none}.primary-nav{display:block;position:static;background:none;box-shadow:none;border:0;padding:0}.primary-nav ul{display:flex;gap:2px}.primary-nav a{padding:10px;font-size:.9rem}.header-cta{display:inline-flex}.hero{padding:90px 0 110px}.hero-grid{grid-template-columns:1.1fr .9fr;align-items:center}.hero-visual{min-height:600px}.services-grid{grid-template-columns:repeat(4,1fr)}.section{padding:110px 0}.story-grid{grid-template-columns:1fr 1fr}.story-art{min-height:570px}.footer-grid{grid-template-columns:2fr repeat(3,1fr)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Homepage storytelling — mobile first */
.hero{padding:22px 0 58px;background:var(--paper)}.hero-grid{gap:0}.hero-copy{padding:38px 0 32px;position:relative;z-index:1}.hero h1{font-size:clamp(3.6rem,12.5vw,7.7rem);max-width:8ch}.hero .lead{font-size:1.08rem;max-width:57ch}.hero-note{margin-top:30px;color:var(--muted);font-size:.85rem;letter-spacing:.02em}.hero-visual{min-height:0;aspect-ratio:4/5;display:block;background:#26262a;border-radius:8px;box-shadow:0 25px 50px #17191d20}.hero-visual:before{display:none}.hero-visual picture,.hero-visual picture img{display:block;width:100%;height:100%}.hero-visual picture img{object-fit:cover;object-position:center;animation:none;filter:none}.hero-visual:after{content:"";position:absolute;inset:auto 0 0;height:24%;background:linear-gradient(transparent,#0008)}.hero-visual .visual-caption{z-index:1;left:22px;bottom:20px}.hero-actions .button{min-height:52px}.introduction{background:#fff}.intro-grid{display:grid;gap:18px}.intro-grid .section-intro{margin-top:0}.text-link{display:inline-flex;align-items:center;gap:8px;color:var(--red);font-weight:750;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:4px;transition:gap .3s}.text-link:hover{gap:16px}.detailed-services{grid-template-columns:1fr}.detailed-card{min-height:0;gap:30px;padding:30px}.detailed-card h3{font-size:2.35rem}.detailed-card ul{padding:18px 0 0 18px;margin:14px 0 0;border-top:1px solid var(--line);line-height:1.9;color:#4e5054}.detailed-card li::marker{color:var(--red)}.detailed-card .text-link{align-self:flex-start}.legacy-services{display:grid;gap:8px;margin-top:18px;padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:#f1eee9}.legacy-services strong{font-family:Georgia,serif;font-weight:400;font-size:1.35rem}.legacy-services p{margin:0;color:var(--muted);line-height:1.6}.story-grid{gap:38px}.story-photo,.operations-photo{position:relative;overflow:hidden;border-radius:8px;min-height:0;aspect-ratio:4/3;background:#ccc}.story-photo img,.operations-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.branded-photo:after{content:"";position:absolute;right:14px;bottom:14px;width:55px;height:55px;background:url('assets/vision-mark.png') center/contain no-repeat;opacity:.83;filter:drop-shadow(0 1px 5px #fff8)}.story-section .story-grid>div:last-child{max-width:580px}.operations-layout{display:grid;gap:28px}.operations-photo{aspect-ratio:3/2}.capability-grid{display:grid;gap:12px}.capability-card{border:1px solid #ffffff38;padding:24px;border-radius:16px;background:#ffffff0c}.capability-card .number{color:#df8b92;font-size:.75rem;font-weight:800}.capability-card h3,.process-grid h3,.reasons-grid h3{font-family:Georgia,serif;font-size:1.55rem;font-weight:400;margin:16px 0 9px}.capability-card p,.reasons-grid p{color:#c5c5c5;line-height:1.6;margin:0}.process-grid{list-style:none;margin:0;padding:0;display:grid;gap:10px;counter-reset:none}.process-grid li{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;min-height:190px}.step-number{color:var(--red);font-weight:800;letter-spacing:.12em}.process-grid p{color:var(--muted);line-height:1.6;margin:0}.industries-section{background:#e9e4de}.industry-layout{display:grid;gap:25px}.industry-list{padding:0;margin:0;list-style:none;border-top:1px solid #bcb4ab}.industry-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid #bcb4ab;padding:14px 0;font-family:Georgia,serif;font-size:1.35rem}.industry-list li span:last-child{font-family:Arial,sans-serif;font-size:1rem;color:var(--red)}.reasons-grid{display:grid;gap:10px}.reasons-grid article{padding:24px;border:1px solid #ffffff38;border-radius:16px}.reasons-grid .number{color:#df8b92;font-size:.75rem;font-weight:800}.values-section{background:#fff}.values-section ul{padding:0;margin:0;list-style:none}.values-section li{border-bottom:1px solid var(--line);padding:16px 0;font-family:Georgia,serif;font-size:1.45rem}.values-section li:first-child{border-top:1px solid var(--line)}.values-section li span{font-family:Arial,sans-serif;font-size:.7rem;color:var(--red);margin-right:25px;vertical-align:middle}.insights-section .insight-card{display:flex;min-height:230px;flex-direction:column;justify-content:space-between;transition:transform .3s,box-shadow .3s}.insights-section .insight-card:hover{transform:translateY(-5px);box-shadow:0 18px 35px #17191d12}.insights-section .insight-card span{font-weight:700;color:var(--red)}.insights-section .text-link{margin-top:25px}.contact-banner{background:#e8d8d2}.contact-banner-inner{display:grid;gap:24px;align-items:end}.contact-banner h2{max-width:800px}.contact-banner p{line-height:1.7;color:#4d4b4b}.contact-banner .button{justify-self:start}
@media(min-width:680px){.detailed-services{grid-template-columns:repeat(2,1fr)}.capability-grid,.process-grid,.reasons-grid{grid-template-columns:repeat(2,1fr)}.hero-visual{aspect-ratio:16/9}.hero-visual picture img{object-position:center}.intro-grid{grid-template-columns:1fr 1fr}.contact-banner-inner{grid-template-columns:1fr auto}}
@media(min-width:980px){.hero{padding:45px 0 80px}.hero-grid{grid-template-columns:.92fr 1.08fr;align-items:center;gap:0}.hero-copy{padding:20px 0;max-width:670px;margin-right:-65px}.hero h1{font-size:clamp(5rem,7.1vw,7.9rem);position:relative;text-shadow:0 2px 20px #f8f6f2bd}.hero .lead{position:relative;max-width:50ch;background:#f8f6f2c9;border-radius:6px}.hero-visual{aspect-ratio:auto;height:min(73vh,690px);min-height:500px}.hero-visual picture img{object-position:62% center}.intro-grid{grid-template-columns:1fr 1fr;gap:90px}.detailed-services{grid-template-columns:repeat(4,1fr)}.detailed-card{padding:26px}.detailed-card h3{font-size:1.95rem}.operations-layout{grid-template-columns:.9fr 1.1fr;align-items:stretch}.operations-photo{aspect-ratio:auto;min-height:560px}.capability-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(4,1fr)}.industry-layout{grid-template-columns:1fr 1fr;gap:90px}.reasons-grid{grid-template-columns:repeat(4,1fr)}.contact-banner-inner{gap:60px}}
.floating-call{position:fixed;right:18px;bottom:18px;z-index:30;width:56px;height:56px;border-radius:50%;display:grid;place-items:center;color:#fff;background:var(--red);box-shadow:0 12px 30px #871b2760;border:1px solid #ffffff80;transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}.floating-call:hover{transform:translateY(-5px) scale(1.04);box-shadow:0 18px 35px #871b2780}@media(min-width:980px){.floating-call{right:28px;bottom:28px;width:62px;height:62px}}
.site-header .header-cta{display:none}@media(min-width:980px){.site-header .header-cta{display:inline-flex}}
@media(max-width:679px){.hero{padding-top:14px}.hero-visual{order:-1;aspect-ratio:4/4.5}.hero-copy{padding:34px 0 12px}.hero h1{font-size:clamp(3.2rem,11vw,4.2rem);margin:14px 0 18px}.hero .lead{font-size:1rem}.hero-note{margin-top:20px}.hero-visual .visual-caption{font-size:.6rem}}
.hero-visual .visual-caption:before{content:"";display:inline-block;width:28px;height:28px;background:url('assets/vision-mark.png') center/contain no-repeat;vertical-align:middle;margin-right:10px;filter:drop-shadow(0 2px 4px #0008)}
.process-grid{position:relative}.process-grid:before{content:"";position:absolute;left:34px;top:0;bottom:0;width:2px;background:var(--red);transform-origin:top;transform:scaleY(0);opacity:.65;transition:transform 1.8s cubic-bezier(.2,.8,.2,1)}.process-section.in-view .process-grid:before{transform:scaleY(1)}.process-grid li{position:relative;margin-left:22px;transition:transform .7s cubic-bezier(.2,.8,.2,1),opacity .7s}.process-grid li:before{content:"";position:absolute;left:-27px;top:25px;width:10px;height:10px;border-radius:50%;background:var(--red);box-shadow:0 0 0 5px var(--paper)}.process-section:not(.in-view) .process-grid li{opacity:.5;transform:translateY(20px)}.process-section.in-view .process-grid li{opacity:1;transform:translateY(0)}.process-grid li:nth-child(2),.process-grid li:nth-child(6){transition-delay:.1s}.process-grid li:nth-child(3),.process-grid li:nth-child(7){transition-delay:.2s}.process-grid li:nth-child(4),.process-grid li:nth-child(8){transition-delay:.3s}.detailed-card{position:relative;overflow:hidden}.detailed-card:before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.services-section.in-view .detailed-card:before{transform:scaleX(1)}.detailed-card:nth-child(2):before{transition-delay:.1s}.detailed-card:nth-child(3):before{transition-delay:.2s}.detailed-card:nth-child(4):before{transition-delay:.3s}@media(min-width:680px){.process-grid:before,.process-grid li:before{display:none}.process-grid li{margin-left:0}}@media(prefers-reduced-motion:reduce){.process-grid:before,.detailed-card:before{transform:none}.process-section:not(.in-view) .process-grid li{opacity:1;transform:none}}
@keyframes flowPulse{0%,8%,100%{box-shadow:0 0 0 0 #b6243266;background:var(--red)}4%{box-shadow:0 0 0 13px #b6243200;background:#e96c77}}@keyframes capabilityPulse{0%,9%,100%{border-color:#ffffff38;background:#ffffff0c}4%{border-color:#da7580;background:#b6243229}}.process-section.in-view .process-grid li:before{animation:flowPulse 16s linear infinite}.process-grid li:nth-child(2):before{animation-delay:2s}.process-grid li:nth-child(3):before{animation-delay:4s}.process-grid li:nth-child(4):before{animation-delay:6s}.process-grid li:nth-child(5):before{animation-delay:8s}.process-grid li:nth-child(6):before{animation-delay:10s}.process-grid li:nth-child(7):before{animation-delay:12s}.process-grid li:nth-child(8):before{animation-delay:14s}.operations-section.in-view .capability-card{animation:capabilityPulse 12s linear infinite}.capability-card:nth-child(2){animation-delay:2s}.capability-card:nth-child(3){animation-delay:4s}.capability-card:nth-child(4){animation-delay:6s}.capability-card:nth-child(5){animation-delay:8s}.capability-card:nth-child(6){animation-delay:10s}@media(min-width:680px){.process-grid li:before{display:block;left:auto;right:24px;top:20px}}@media(prefers-reduced-motion:reduce){.process-section.in-view .process-grid li:before,.operations-section.in-view .capability-card{animation:none}}
.service-photo{position:relative;margin:-30px -30px 18px;aspect-ratio:16/11;overflow:hidden;border-radius:20px 20px 0 0;background:#d1c9c2}.service-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.service-photo:after{width:36px;height:36px;right:10px;bottom:10px}@media(min-width:980px){.service-photo{margin:-26px -26px 18px}}
.specialist-section{background:#efeae4}.specialist-grid{display:grid;gap:12px}.specialist-grid article{padding:27px;border-radius:18px;background:#fff;border:1px solid var(--line)}.specialist-grid .number{color:var(--red);font-size:.75rem;font-weight:800}.specialist-grid h3{font-family:Georgia,serif;font-weight:400;font-size:1.55rem;margin:45px 0 12px}.specialist-grid p{color:var(--muted);line-height:1.65;margin:0}@media(min-width:680px){.specialist-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:980px){.specialist-grid{grid-template-columns:repeat(4,1fr)}}
/* Services story page */
.service-page-hero{background:#1b1d21;color:white;padding:16px 0 70px}.service-page-hero .container{display:flex;flex-direction:column}.service-page-heading{padding:36px 0 0}.service-page-heading h1{font-family:Georgia,serif;font-size:clamp(3rem,11vw,7rem);font-weight:400;letter-spacing:-.05em;line-height:1.05;margin:16px 0 24px}.service-page-heading h1 em{font-style:normal;color:#ed9699}.service-page-heading .lead{color:#d2cfcd}.service-page-heading .button{margin-top:20px}.service-page-hero-photo{position:relative;overflow:hidden;order:-1;border-radius:9px;aspect-ratio:4/4.5;background:#393a3b}.service-page-hero-photo picture,.service-page-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.service-page-hero-photo:after{content:"";position:absolute;right:15px;bottom:15px;width:48px;height:48px;background:url('assets/vision-mark.png') center/contain no-repeat;filter:drop-shadow(0 2px 5px #fff6)}.services-detail-section{background:#fff}.service-detail{display:grid;gap:25px;align-items:center;padding:32px 0;border-top:1px solid var(--line)}.service-detail-photo{position:relative;overflow:hidden;border-radius:9px;aspect-ratio:4/3;background:#d1c9c2}.service-detail-photo img{width:100%;height:100%;object-fit:cover;object-position:center}.service-detail-copy h3{font-family:Georgia,serif;font-size:clamp(2.2rem,6vw,4rem);font-weight:400;letter-spacing:-.04em;line-height:1.1;margin:12px 0 18px}.service-detail-copy p{color:var(--muted);line-height:1.72;font-size:1.05rem}.service-detail-copy ul{padding-left:18px;columns:1;line-height:2;color:#45484b}.service-detail-copy li::marker{color:var(--red)}.service-detail-copy .text-link{margin-top:12px}@media(min-width:680px){.service-page-hero-photo{aspect-ratio:16/9}.service-detail{grid-template-columns:1fr 1fr;gap:42px}.service-detail:nth-child(even) .service-detail-photo{order:2}}@media(min-width:980px){.service-page-hero{padding:85px 0}.service-page-hero .container{display:grid;grid-template-columns:.9fr 1.1fr;gap:40px;align-items:center}.service-page-hero-photo{order:0;aspect-ratio:4/3;min-height:520px}.service-page-heading{padding:0}.service-detail{gap:90px;padding:75px 0}.service-detail-photo{min-height:500px}.service-detail-copy ul{columns:2}}
@media(min-width:980px){.service-page-heading h1{font-size:clamp(3.7rem,5.2vw,5.4rem);max-width:13ch}.service-page-hero .container{grid-template-columns:1fr 1.05fr}.service-page-hero-photo{min-height:0;aspect-ratio:1/1}}
.faq-section{background:#fff}.faq-layout{display:grid;gap:20px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:18px 0}.faq-list summary{cursor:pointer;font-family:Georgia,serif;font-size:1.25rem;line-height:1.35;list-style:none;display:flex;justify-content:space-between;gap:15px}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';font-family:Arial,sans-serif;color:var(--red)}.faq-list details[open] summary:after{content:'−'}.faq-list p{color:var(--muted);line-height:1.7;margin:14px 0 2px}@media(min-width:980px){.faq-layout{grid-template-columns:.9fr 1.1fr;gap:80px}}
/* About story page */
.about-hero{background:#e9e3dc;padding:60px 0 0}.about-hero-copy{max-width:870px;padding-bottom:35px}.about-hero-copy h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3.2rem,10vw,7rem);letter-spacing:-.055em;line-height:1.03;margin:15px 0 23px}.about-hero-copy h1 em{color:var(--red);font-style:normal}.about-hero-photo{position:relative;overflow:hidden;aspect-ratio:4/5;border-radius:9px 9px 0 0;background:#b8b2ab}.about-hero-photo picture,.about-hero-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.timeline-section .section-head{max-width:800px}.history-timeline{list-style:none;margin:0;padding:0;border-top:1px solid #ffffff46}.history-timeline li{display:grid;grid-template-columns:75px 1fr;gap:14px;padding:27px 0;border-bottom:1px solid #ffffff46;position:relative}.history-year{font-family:Georgia,serif;font-size:1.45rem;color:#e79ca0}.history-timeline h3{font-family:Georgia,serif;font-weight:400;font-size:1.55rem;margin:0 0 10px}.history-timeline p{margin:0;color:#c8c5c3;line-height:1.65}.vision-mission-section{background:#eee9e3}.vision-mission-grid{display:grid;gap:15px}.vision-mission-grid article{padding:30px;border-radius:18px;background:#fff;border:1px solid var(--line)}.vision-mission-grid h3{font-family:Georgia,serif;font-size:2rem;font-weight:400;line-height:1.1;margin:35px 0 18px}.vision-mission-grid p{color:var(--muted);line-height:1.75}.leadership-grid{display:grid;gap:15px}.leadership-grid article{border:1px solid #ffffff48;border-radius:18px;padding:30px;min-height:260px}.leadership-grid h3{font-family:Georgia,serif;font-size:2.5rem;font-weight:400;margin:45px 0 15px}.leadership-grid p{color:#c8c5c3;line-height:1.7}.about-approach-section{background:#fff}@media(min-width:680px){.about-hero-photo{aspect-ratio:16/10}.history-timeline li{grid-template-columns:160px 1fr;gap:40px}.vision-mission-grid,.leadership-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:980px){.about-hero{padding-top:90px}.about-hero-copy{padding-bottom:55px}.about-hero-photo{aspect-ratio:16/9;max-height:600px}.history-timeline li{grid-template-columns:230px 1fr;padding:38px 0}.history-year{font-size:2.3rem}.vision-mission-grid article{padding:50px}.leadership-grid article{padding:45px}}
@keyframes timelineGlow{0%,14%,100%{color:#e79ca0;text-shadow:none}7%{color:#fff;text-shadow:0 0 22px #ee8e98}}.timeline-section.in-view .history-year{animation:timelineGlow 9s linear infinite}.timeline-section.in-view .history-timeline li:nth-child(2) .history-year{animation-delay:3s}.timeline-section.in-view .history-timeline li:nth-child(3) .history-year{animation-delay:6s}@media(prefers-reduced-motion:reduce){.timeline-section.in-view .history-year{animation:none}}
/* Visible looping lifecycle motion graphic */
.flow-section{background:radial-gradient(circle at 85% 5%,#49252d 0,transparent 34%),#17191d;overflow:hidden}.flow-heading{max-width:920px}.flow-heading h2 em{font-style:normal;color:#ef9a9d}.flow-graphic{position:relative;margin-top:40px;padding:6px 0}.flow-track{position:absolute;left:23px;top:34px;bottom:36px;width:2px;background:linear-gradient(#ac4c57,#ffffff60,#ac4c57);overflow:visible}.flow-signal{display:block;position:absolute;left:-7px;top:0;width:16px;height:16px;border-radius:50%;background:#ffabb2;box-shadow:0 0 0 6px #b6243266,0 0 22px 10px #dc596d99;animation:flowTravelY 8s linear infinite}.flow-steps{position:relative;list-style:none;margin:0;padding:0;display:grid;gap:20px}.flow-steps li{display:flex;align-items:flex-start;gap:25px;min-height:148px;padding:12px 15px 12px 0}.flow-pin{flex:none;display:grid;place-items:center;width:48px;height:48px;border:1px solid #f7b4bc8a;border-radius:50%;background:#311e24;color:#fff;font-size:.78rem;font-weight:800;box-shadow:0 0 0 8px #17191d}.flow-steps strong{display:block;font-family:Georgia,serif;font-size:clamp(1.6rem,5vw,2.4rem);font-weight:400;line-height:1.12}.flow-steps p{color:#c6c2c1;line-height:1.6;font-size:.95rem;max-width:30ch;margin:10px 0 0}.flow-caption{margin:40px 0 0;padding-top:20px;border-top:1px solid #ffffff49;color:#e3c4c3;letter-spacing:.09em;text-transform:uppercase;font-size:.72rem;line-height:1.7}@keyframes flowTravelY{0%{top:0;opacity:0}3%{opacity:1}96%{opacity:1}100%{top:calc(100% - 16px);opacity:0}}@keyframes flowTravelX{0%{left:0;opacity:0}3%{opacity:1}96%{opacity:1}100%{left:calc(100% - 16px);opacity:0}}@media(min-width:800px){.flow-graphic{margin-top:70px;padding:0}.flow-track{left:25px;right:25px;top:27px;bottom:auto;width:auto;height:2px}.flow-signal{top:-7px;left:0;animation-name:flowTravelX}.flow-steps{grid-template-columns:repeat(4,1fr);gap:20px}.flow-steps li{display:block;min-height:260px;padding:0 20px 0 0}.flow-pin{margin-bottom:30px}.flow-steps p{max-width:25ch}.flow-caption{font-size:.83rem}}@media(prefers-reduced-motion:reduce){.flow-signal{animation:none;top:0;left:0;box-shadow:none}}
.hf-motion{margin:36px 0 0;border:1px solid #ba7d8670;border-radius:20px;overflow:hidden;background:#111216;box-shadow:0 30px 80px #0006}.hf-motion-video{display:block;width:100%;height:auto;aspect-ratio:1080/1350;object-fit:cover}.hf-motion-caption{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;color:#ddd}.hf-motion-caption li{border-top:1px solid #ffffff3a;padding-top:12px}.hf-motion-caption strong{display:block;font-family:Georgia,serif;font-size:1.22rem;font-weight:400;color:white}.hf-motion-caption span{display:block;font-size:.77rem;line-height:1.5;color:#c7bfc2;margin-top:4px}@media(min-width:768px){.hf-motion{margin-top:52px}.hf-motion-video{aspect-ratio:16/9}.hf-motion-caption{grid-template-columns:repeat(4,1fr);gap:25px}.hf-motion-caption strong{font-size:1.5rem}.hf-motion-caption span{font-size:.85rem}}
.hf-story{border-color:#d5c5c0;box-shadow:0 25px 65px #2b202122;margin-top:34px}.hf-story .hf-motion-video{aspect-ratio:1080/1260}@media(min-width:768px){.hf-story{margin-top:55px}.hf-story .hf-motion-video{aspect-ratio:1920/800}}@media(max-width:767px){.flow-section .hf-motion{margin-left:-18px;margin-right:-18px;border-radius:0}}
.hf-hero-visual .hf-motion-video{width:100%;height:100%;aspect-ratio:auto;object-fit:cover}.hf-hero-visual{aspect-ratio:4/5}@media(min-width:768px){.hf-hero-visual{aspect-ratio:16/9}}@media(min-width:980px){.hf-hero-visual{aspect-ratio:auto}}@media(max-width:767px){.hf-hero-visual{aspect-ratio:4/5;min-height:0}}.hero-copy .eyebrow,.hero-copy h1,.hero-copy .lead,.hero-actions,.hero-note{animation:heroCopyReveal .85s both cubic-bezier(.18,.8,.2,1)}.hero-copy h1{animation-delay:.18s}.hero-copy .lead{animation-delay:.38s}.hero-actions{animation-delay:.56s}.hero-note{animation-delay:.68s}@keyframes heroCopyReveal{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.hero-copy .eyebrow,.hero-copy h1,.hero-copy .lead,.hero-actions,.hero-note{animation:none}}
.hero-copy .eyebrow,.hero-copy h1,.hero-copy .lead,.hero-actions,.hero-note{animation-duration:.48s;animation-timing-function:cubic-bezier(.22,.8,.2,1)}.hero-copy .eyebrow{animation-delay:0s}.hero-copy h1{animation-delay:.08s}.hero-copy .lead{animation-delay:.17s}.hero-actions{animation-delay:.24s}.hero-note{animation-delay:.31s}@keyframes heroCopyReveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
/* Keep every title inside the rendered HyperFrames canvas at desktop widths. */
@media(min-width:980px){.hero-visual.hf-hero-visual{aspect-ratio:16/9;height:auto;min-height:0}.hf-hero-visual .hf-motion-video{aspect-ratio:16/9;height:auto;object-fit:contain}}
/* Scroll reveals use only compositor-friendly properties and never gate content without JS. */
.aos-reveal{opacity:0;transform:translate3d(0,22px,0);transition:opacity .58s ease-out,transform .7s cubic-bezier(.22,.8,.2,1);transition-delay:var(--aos-delay,0ms)}.aos-reveal.is-revealed{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){.aos-reveal{opacity:1;transform:none;transition:none}}
.story-page{background:var(--paper)}.story-hero{padding:32px 0 68px;background:#ebe4dd}.story-hero-grid{display:grid;gap:30px}.story-hero-copy{align-self:center}.story-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(3.4rem,11vw,7rem);letter-spacing:-.055em;line-height:1.02;margin:20px 0 25px}.story-hero h1 em{font-style:normal;color:var(--red)}.story-hero .lead{max-width:48ch}.story-hero .button{margin-top:22px}.story-hero-art{overflow:hidden;border-radius:16px;aspect-ratio:4/5;background:#c8b9af;position:relative}.story-hero-art img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.story-split{display:grid;gap:30px}.story-split h2{max-width:14ch}.story-dark{background:#1b1d21;color:#fff}.story-dark .section-intro{color:#c8c5c2}.sector-grid{display:grid;gap:12px}.sector-card{border:1px solid #ffffff34;border-radius:16px;padding:26px;min-height:220px;display:flex;flex-direction:column}.sector-card>span{font-size:.75rem;color:#eaa0a4;letter-spacing:.18em}.sector-card h3{font-family:Georgia,serif;font-size:clamp(1.65rem,5vw,2.3rem);font-weight:400;line-height:1.1;margin:auto 0 12px}.sector-card p{color:#ccc9c6;line-height:1.5;margin:0}.story-steps{list-style:none;margin:0;padding:0}.story-steps li{border-top:1px solid var(--line);padding:22px 0}.story-steps strong{color:var(--red);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem}.story-steps p{font-size:1.15rem;line-height:1.55;max-width:50ch}.story-soft{background:#eee9e3}.story-link-grid{display:grid;gap:12px}.story-link-grid a{display:flex;justify-content:space-between;gap:25px;padding:28px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;font-family:Georgia,serif;font-size:clamp(1.4rem,4vw,2rem);line-height:1.2;transition:transform .25s,box-shadow .25s}.story-link-grid a:hover{transform:translateY(-4px);box-shadow:0 15px 30px #17191d15}.story-link-grid span{color:var(--red)}@media(min-width:700px){.sector-grid{grid-template-columns:repeat(2,1fr)}.story-link-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:980px){.story-hero{padding:80px 0}.story-hero-grid{grid-template-columns:1fr 1.05fr;gap:65px}.story-hero-art{aspect-ratio:5/4;min-height:480px}.story-split{grid-template-columns:.9fr 1.1fr;gap:90px}.sector-grid{grid-template-columns:repeat(5,1fr)}.sector-card{padding:22px;min-height:275px}}
.contact-choice-grid{display:grid;gap:16px}.contact-choice-grid article{background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;min-height:320px;display:flex;flex-direction:column}.contact-choice-grid h3{font:400 clamp(2rem,6vw,3.5rem)/1.12 Georgia,serif;letter-spacing:-.04em;margin:24px 0 16px}.contact-choice-grid p{color:var(--muted);line-height:1.65;max-width:48ch}.contact-choice-grid .text-link{margin-top:auto}.contact-facts article{border-top:1px solid #ffffff55;padding:24px 0;display:grid;gap:10px}.contact-facts span{color:#e99aa0;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem}.contact-facts a,.contact-facts address{font:400 clamp(1.35rem,4vw,2rem)/1.3 Georgia,serif;color:#fff;text-decoration:none;font-style:normal;overflow-wrap:anywhere}.contact-facts a:hover{text-decoration:underline}@media(min-width:760px){.contact-choice-grid{grid-template-columns:repeat(2,1fr)}.contact-choice-grid article{padding:40px}}
.contact-map-section{background:#eee9e3}.contact-map-intro{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:34px}.contact-map-intro h2{max-width:15ch}.contact-map-intro .section-intro{max-width:55ch}.contact-map-frame{width:100%;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:#d7d0c8;border:1px solid var(--line)}.contact-map-frame iframe{display:block;width:100%;height:100%;border:0}.contact-map-address{font-size:.96rem;line-height:1.65;color:var(--muted);margin:18px 0 0}.contact-map-address strong{color:var(--ink)}@media(min-width:760px){.contact-map-intro{flex-direction:row;align-items:end;justify-content:space-between;gap:40px}.contact-map-intro .button{flex:none}.contact-map-frame{aspect-ratio:16/7}}
.leader-photo{width:100%;aspect-ratio:1/1;overflow:hidden;border-radius:12px;background:#fff;margin:0 0 28px}.leader-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.leadership-grid article{padding:22px}.leadership-grid article h3{margin:18px 0 12px}@media(min-width:980px){.leadership-grid article{padding:28px}}
.editorial-page{background:var(--paper)}.editorial-hero{padding:76px 0 92px;background:#e8e0d7}.editorial-hero h1,.article-hero h1{font:400 clamp(3.6rem,10vw,8rem)/1.02 Georgia,serif;letter-spacing:-.055em;max-width:12ch;margin:25px 0}.editorial-hero h1 em{font-style:normal;color:var(--red)}.editorial-hero .lead{max-width:55ch}.editorial-search{max-width:600px;margin-top:44px}.editorial-search label{display:block;text-transform:uppercase;font-size:.72rem;letter-spacing:.16em;font-weight:700;color:var(--red);margin-bottom:12px}.editorial-search>div{display:flex;background:#fff;border:1px solid var(--line);border-radius:999px;padding:5px}.editorial-search>div:focus-within{outline:3px solid var(--red);outline-offset:3px}.editorial-search input{flex:1;min-width:0;border:0;background:none;padding:12px 18px;outline:0}.editorial-search button{border:0;border-radius:999px;background:var(--red);color:#fff;padding:12px 22px;font-weight:700}.editorial-grid{display:grid;gap:20px}.editorial-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;display:flex;flex-direction:column}.editorial-card-image{display:block;aspect-ratio:16/10;background:#211c20;color:#edb0b3;text-decoration:none;overflow:hidden}.editorial-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .55s}.editorial-card:hover img{transform:scale(1.04)}.editorial-card-image>span{height:100%;display:grid;place-items:center;font:400 2rem Georgia,serif;letter-spacing:.08em}.editorial-card-body{padding:24px;display:flex;flex-direction:column;flex:1}.editorial-meta{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:.78rem;letter-spacing:.04em}.editorial-card h3{font:400 clamp(1.6rem,4vw,2.1rem)/1.2 Georgia,serif;margin:20px 0 15px}.editorial-card h3 a{text-decoration:none}.editorial-card h3 a:hover{color:var(--red)}.editorial-card p{line-height:1.55;color:var(--muted);margin:0 0 20px}.editorial-card .text-link{margin-top:auto}.editorial-pagination{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:45px}.editorial-pagination a,.editorial-pagination span{padding:10px 15px;border:1px solid var(--line);border-radius:99px;text-decoration:none}.editorial-pagination .current{background:var(--red);color:#fff}.article-hero{padding:70px 0 55px;background:#eee7e0}.article-hero h1{max-width:17ch;font-size:clamp(3rem,8vw,6.5rem)}.article-back{text-decoration:none}.article-featured{margin-top:35px}.article-featured img{display:block;width:100%;max-height:620px;object-fit:cover;border-radius:16px}.article-layout{display:grid;gap:30px;padding-top:35px;padding-bottom:95px}.article-body{padding:25px;min-width:0;font-size:1.07rem;line-height:1.85}.article-body img{max-width:100%;height:auto}.article-aside{border-top:1px solid var(--line);padding-top:25px}.article-aside p{color:var(--muted)}.article-tags{display:flex;gap:8px;flex-wrap:wrap;margin:25px 0}.article-tags a{border:1px solid var(--line);padding:8px 12px;border-radius:99px;text-decoration:none;font-size:.8rem}@media(min-width:700px){.editorial-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1050px){.editorial-grid{grid-template-columns:repeat(3,1fr)}.article-layout{grid-template-columns:minmax(0,780px) 220px;gap:55px}.article-body{padding:50px}.article-aside{position:sticky;top:30px;align-self:start}}
.client-hero .story-hero-art,.contact-hero .story-hero-art,.career-page .story-hero-art,.careers-gateway .story-hero-art{aspect-ratio:4/3;min-height:0}
.gallery-hero{background:#ded5cc;padding:85px 0 90px}.gallery-hero h1{font:400 clamp(3.5rem,10vw,8rem)/1.03 Georgia,serif;letter-spacing:-.055em;max-width:12ch;margin:22px 0}.gallery-hero h1 em{color:var(--red);font-style:normal}.gallery-hero .lead{max-width:50ch}.gallery-disclosure{font-size:.82rem;color:var(--muted);margin-top:35px}.gallery-grid{display:grid;gap:35px}.gallery-grid figure{margin:0}.gallery-image{position:relative;aspect-ratio:4/3;overflow:hidden;border-radius:16px;background:#d7ccc3}.gallery-image img{display:block;width:100%;height:100%;object-fit:cover}.gallery-grid figcaption{padding:20px 0}.gallery-grid figcaption p{font:400 clamp(1.5rem,4vw,2.2rem)/1.2 Georgia,serif;margin:12px 0 0;max-width:22ch}@media(min-width:700px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1100px){.gallery-grid{grid-template-columns:repeat(3,1fr)}}
.jobs-hero{padding:35px 0 70px;background:#e5dbd3}.jobs-hero h1{font:400 clamp(3.5rem,10vw,7rem)/1.02 Georgia,serif;letter-spacing:-.055em;margin:20px 0}.jobs-hero h1 em{font-style:normal;color:var(--red)}.jobs-widget{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;min-height:150px}.jobs-widget p{line-height:1.65}.jobs-widget input,.jobs-widget select{max-width:100%}.jobs-widget a{overflow-wrap:anywhere}@media(min-width:700px){.jobs-widget{padding:45px}}@media(min-width:980px){.jobs-hero{padding:75px 0}.jobs-hero .story-hero-art{aspect-ratio:4/3;min-height:0}}
.archive-hero{background:#e8e0d7;padding:70px 0}.archive-hero h1{font:400 clamp(3.2rem,8vw,6rem)/1.05 Georgia,serif;letter-spacing:-.05em;margin:20px 0;overflow-wrap:anywhere}.archive-hero .section-intro{max-width:65ch}.job-detail-page .article-body{margin:0}
@media(max-width:699px){.job-detail-page .tooltiptext{left:auto;right:0;width:min(250px,calc(100vw - 40px));max-width:none}}
.service-detail-photo,.service-detail-copy{min-width:0}.service-detail-photo{width:100%}
.story-hero-art.branded-photo:after,.gallery-image.branded-photo:after{top:14px;bottom:auto}
.career-page .story-hero-art.branded-photo:after,.careers-gateway .story-hero-art.branded-photo:after{left:14px;right:auto}
.talent-featured{position:relative;padding:0}.talent-featured img{width:100%;max-height:650px;object-fit:cover;border-radius:16px}.talent-featured:after{top:20px;bottom:auto;right:20px}
.career-process-grid{list-style:none;margin:0;padding:0;display:grid;gap:12px}.career-process-grid li{border:1px solid #ffffff35;border-radius:16px;padding:28px;min-height:220px}.career-process-grid span{font-size:.78rem;letter-spacing:.15em;color:#e99aa0}.career-process-grid h3{font:400 clamp(1.8rem,5vw,2.4rem)/1.15 Georgia,serif;margin:36px 0 12px}.career-process-grid p{color:#c8c5c2;line-height:1.6;margin:0}@media(min-width:700px){.career-process-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1100px){.career-process-grid{grid-template-columns:repeat(4,1fr)}}

/* Client review, October 2026: compact mobile layouts and service detail pages. */
.home-refresh .section,.service-single .section,.services-overview .section{padding:48px 0}
.home-refresh h2,.service-single h2,.services-overview h2{font-size:clamp(2.1rem,5vw,3.65rem);line-height:1.1}
.home-hero{padding:28px 0 38px;background:#f4f5ef}
.home-hero .hero-grid{gap:28px}
.home-hero .hero-copy{padding:0;margin:0;max-width:none}
.home-hero h1{font-size:clamp(3.55rem,11vw,6.8rem);margin:14px 0 18px;max-width:9ch;text-shadow:none}
.home-hero .lead{background:none;margin:0;line-height:1.6}
.home-hero .hero-actions{margin-top:22px;align-items:center;gap:20px}
.home-hero-photo{position:relative;overflow:hidden;border-radius:16px;aspect-ratio:3/2;background:#e2e9e2}
.home-hero-photo img{display:block;width:100%;height:100%;object-fit:cover}
.home-hero-photo>span{position:absolute;bottom:14px;left:14px;background:#ffffffed;border-radius:99px;padding:9px 13px;font-size:.68rem;letter-spacing:.06em}
.solution-cards{display:grid;gap:14px}
.solution-card{display:grid;grid-template-columns:110px minmax(0,1fr);gap:18px;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;transition:box-shadow .25s,transform .25s}
.solution-card:hover{box-shadow:0 12px 30px #17191d12;transform:translateY(-3px)}
.solution-card>img{width:100%;height:100%;min-height:190px;object-fit:cover}
.solution-card>div{padding:20px 16px 20px 0}
.solution-card h3{font:400 1.5rem/1.1 Georgia,serif;margin:0 0 10px;letter-spacing:-.025em}
.solution-card p{font-size:.88rem;color:var(--muted);line-height:1.55;margin:0 0 16px}
.solution-link{font-size:.82rem;font-weight:700;color:var(--red)}
.home-about,.solution-support{background:#e9efea}
.home-clients{background:#fff}
.client-logo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:24px 0;padding:0;list-style:none}
.client-logo-grid li{display:flex;align-items:center;justify-content:center;min-width:0;aspect-ratio:1.6;background:white;border:1px solid var(--line);border-radius:10px;padding:12px}
.client-logo-grid img{width:100%;height:100%;object-fit:contain}
.home-process,.solution-process{background:#f0edf5}
.delivery-steps{list-style:none;margin:24px 0;padding:0;display:grid;gap:0}
.delivery-steps li{display:grid;grid-template-columns:32px minmax(0,1fr);gap:16px;padding:20px 0;border-top:1px solid #c9c5cd}
.delivery-steps .step-number{font-size:.75rem;padding-top:6px}
.delivery-steps h3{font:400 1.45rem/1.2 Georgia,serif;margin:0 0 8px}
.delivery-steps p{color:#535a60;line-height:1.6;font-size:.94rem;margin:0}
.solution-hero{padding:30px 0;background:#edf1ef}
.solution-hero-grid{display:grid;gap:28px;align-items:center}
.solution-hero h1{font:400 clamp(2.85rem,9vw,5.3rem)/1.04 Georgia,serif;letter-spacing:-.045em;margin:16px 0 22px;max-width:15ch}
.solution-hero .lead{font-size:1rem;line-height:1.65}
.solution-hero .button{margin-top:10px}
.solution-hero-grid>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:16px}
.service-breadcrumb{font-size:.78rem;line-height:1.5;margin-bottom:26px;color:var(--muted)}
.service-breadcrumb a{color:var(--red);text-underline-offset:3px}
.section-nav{display:flex;flex-wrap:wrap;gap:6px 20px;border-top:1px solid #cbd5cf;padding-top:18px;margin-top:28px}
.section-nav a{padding:9px 0;font-size:.82rem;text-underline-offset:5px}
.service-single section[id],.services-overview section[id]{scroll-margin-top:24px}
.scope-grid{display:grid;gap:12px}
.scope-grid article{padding:24px;background:#fff;border:1px solid var(--line);border-radius:14px}
.scope-grid h3{font:400 1.6rem/1.15 Georgia,serif;margin:18px 0 12px}
.scope-grid p{margin:0;line-height:1.7;color:var(--muted)}
.support-list{list-style:none;margin:0;padding:0;align-self:center}
.support-list li{padding:18px 0 18px 28px;border-bottom:1px solid #c0cfc4;position:relative;line-height:1.6}
.support-list li:before{content:'✓';position:absolute;left:0;color:#43634d}
.sector-tags{list-style:none;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:0;align-content:start}
.sector-tags li{padding:12px 17px;border:1px solid #c7d3cf;border-radius:99px;background:#edf1ef;font-size:.9rem}
.service-enquiry{padding:14px 18px;border-left:3px solid var(--red);background:#fff;border-radius:0 8px 8px 0}
.service-enquiry a{color:var(--red)}
@media(min-width:680px){
 .solution-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .solution-card{display:flex;flex-direction:column;gap:0}
 .solution-card>img{height:auto;min-height:0;aspect-ratio:16/10}
 .solution-card>div{padding:24px;display:flex;flex-direction:column;flex:1}
 .solution-card h3{font-size:1.85rem}
 .solution-card p{font-size:1rem;flex:1}
 .scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .delivery-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 32px}
 .client-logo-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:18px}
 .home-clients .client-logo-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
}
@media(min-width:980px){
 .home-refresh .section,.service-single .section,.services-overview .section{padding:80px 0}
 .home-hero{padding:60px 0}
 .home-hero .hero-grid{grid-template-columns:.9fr 1.1fr;gap:42px}
 .home-hero-photo{aspect-ratio:1.15}
 .home-hero-photo>span{bottom:22px;left:22px;font-size:.78rem}
 .solution-hero{padding:50px 0}
 .solution-hero-grid{grid-template-columns:1fr 1fr;gap:55px}
 .solution-hero-grid>img{aspect-ratio:1.2}
 .home-refresh .solution-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
 .home-refresh .solution-card>div{padding:22px}
 .home-refresh .solution-card h3{font-size:1.65rem}
 .home-refresh .solution-card p{font-size:.94rem}
 .home-process .delivery-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}
 .home-process .delivery-steps li{display:block}
 .home-process .delivery-steps h3{margin-top:22px}
 .scope-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
 .scope-grid article{padding:32px}
}
@media(max-width:679px){
 .section{padding:48px 0}
 .section-head{margin-bottom:24px}
 .section h2{font-size:2.35rem}
 .about-hero,.story-hero,.jobs-hero{padding-top:30px}
 .about-hero-photo,.story-hero-art,.client-hero .story-hero-art,.contact-hero .story-hero-art,.career-page .story-hero-art,.careers-gateway .story-hero-art{aspect-ratio:3/2}
 .about-hero-copy h1,.story-hero h1,.jobs-hero h1{font-size:2.9rem}
 .story-hero .button{margin-top:12px}
 .process-section:not(.in-view) .process-grid li{opacity:1;transform:none}
 .hero-copy .eyebrow,.hero-copy h1,.hero-copy .lead,.hero-actions,.hero-note{animation:none}
 .aos-reveal{opacity:1;transform:none;transition:none}
 .site-footer{padding:40px 0 24px}.footer-grid{gap:22px}
 .floating-call{width:48px;height:48px;right:12px;bottom:12px}
}
.specialist-summary{margin-top:28px}.specialist-summary details{border-top:1px solid var(--line);padding-top:20px}.specialist-summary summary{font:400 1.4rem Georgia,serif;cursor:pointer}.specialist-summary p{max-width:80ch;line-height:1.7;color:var(--muted)}
@media(max-width:679px){
 .solution-card[href*="/recruitment/"]>img{object-position:25% center}
 .solution-card[href*="/payroll-workforce-management/"]>img,.solution-card[href*="/compliance-management/"]>img{object-position:30% center}
}

/* October client approval: identity, static testimonials and two enquiry paths. */
/* The original mark includes a thin baseline in its bottom 2%; hide that line
   without altering the supplied artwork or the proportions of the mark. */
.brand,.brand:hover,.brand:focus,.brand span{text-decoration:none;border-bottom:0}
.brand img,.branded-photo:after{clip-path:inset(0 0 2% 0)}
.footer-brand{color:#fff;font-size:.85rem;margin-bottom:10px}
.footer-company p,.footer-company address{max-width:38ch;color:#c8c5c3;font-size:.9rem;line-height:1.75}
.footer-company address{font-style:normal;margin-top:22px}
.footer-grid>div{min-width:0}.footer-grid a{overflow-wrap:anywhere}
.client-testimonials{background:#edf1ed}
.testimonial-grid{display:grid;gap:20px}
.testimonial-card{margin:0;padding:28px;background:#fff;border:1px solid #d9e2d9;border-radius:18px;display:flex;flex-direction:column}
.testimonial-card blockquote{margin:0;flex:1}
.testimonial-card blockquote:before{content:'“';display:block;font:4rem/.9 Georgia,serif;color:var(--red)}
.testimonial-card blockquote p{font:400 1.2rem/1.65 Georgia,serif;margin:12px 0 28px}
.testimonial-card figcaption{display:flex;align-items:center;gap:18px;border-top:1px solid var(--line);padding-top:20px;font-weight:700}
.testimonial-card figcaption img{width:90px;height:56px;object-fit:contain}
.pathway-intro{padding:42px 0 56px;background:#f1eee8}
.pathway-intro h1,.enquiry-intro h1{font:400 clamp(2.9rem,7vw,5.5rem)/1.04 Georgia,serif;letter-spacing:-.045em;margin:18px 0 24px}
.pathway-intro h1 em,.enquiry-intro h1 em{font-style:normal;color:var(--red)}
.pathway-intro>.container>.lead{max-width:65ch}
.pathway-grid{display:grid;gap:22px;margin-top:34px}
.pathway-card{border:1px solid #d5ded5;border-radius:20px;overflow:hidden;display:flex;flex-direction:column;background:#e8eee8;min-width:0}
.pathway-candidate{background:#eeeaf3;border-color:#dcd6e5}
.pathway-photo{aspect-ratio:2/1;overflow:hidden}
.pathway-photo img{display:block;width:100%;height:100%;object-fit:cover}
.pathway-card-copy{padding:28px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.pathway-card h2{font:400 clamp(2rem,4vw,3.1rem)/1.1 Georgia,serif;letter-spacing:-.035em;margin:16px 0}
.pathway-card p{color:#535a60;line-height:1.65;margin:0 0 24px;max-width:48ch}
.pathway-card .button{margin-top:auto;text-align:center}
.pathway-jobs{font-size:.94rem;line-height:1.6;margin:26px 0 0;color:#535a60}
.pathway-jobs a,.enquiry-back,.enquiry-help a{color:var(--red);text-underline-offset:4px}
.enquiry-section{padding:30px 0 64px;background:#f1eee8}
.enquiry-back{display:inline-block;font-size:.9rem;margin-bottom:32px}
.enquiry-layout{display:grid;gap:32px;align-items:start}
.enquiry-intro,.enquiry-panel{min-width:0}
.enquiry-intro h1{font-size:clamp(2.6rem,5.4vw,4.7rem)}
.enquiry-intro .lead{font-size:1rem}
.enquiry-photo{overflow:hidden;border-radius:14px;aspect-ratio:16/9;margin-top:26px}
.enquiry-photo img{display:block;object-fit:cover;width:100%;height:100%}
.enquiry-help{font-size:.92rem;line-height:1.8;color:var(--muted);margin-top:24px}
.enquiry-panel{padding:24px;background:#fff;border:1px solid var(--line);border-radius:20px}
.enquiry-panel h2{font:400 2.2rem/1.12 Georgia,serif;letter-spacing:-.035em;margin:0 0 12px}
.form-note{font-size:.82rem;line-height:1.6;color:var(--muted);margin:10px 0 20px}
.enquiry-fields{display:grid;gap:20px}
.enquiry-field{min-width:0}
.enquiry-field label{display:block;font-size:.88rem;font-weight:600;line-height:1.5;margin-bottom:8px}
.enquiry-field label>span{color:var(--red)}
.enquiry-field input,.enquiry-field textarea,.enquiry-field select{display:block;width:100%;max-width:100%;min-width:0;border:1px solid #aaa7a2;border-radius:8px;background:#fff;color:var(--ink);padding:12px;font-size:1rem;line-height:1.4}
.enquiry-field textarea{resize:vertical;min-height:125px}
.enquiry-field input[type=file]{font-size:.86rem;padding:10px}
.enquiry-field input::file-selector-button{border:0;border-radius:5px;padding:9px;background:#eeeaf3;color:var(--ink);margin-right:10px;cursor:pointer}
.enquiry-field select:focus-visible{outline:3px solid var(--red);outline-offset:3px}
.enquiry-field [aria-invalid=true]{border:2px solid var(--red)}
.enquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.enquiry-consent{display:flex;align-items:flex-start;gap:10px;margin:24px 0;font-size:.86rem;line-height:1.65;color:#535a60}
.enquiry-consent input{flex:none;width:18px;height:18px;margin-top:4px;accent-color:var(--red)}
.enquiry-errors{padding:18px;margin:22px 0;border:1px solid var(--red);border-radius:8px;background:#fff5f4;color:#871b27;font-size:.9rem;line-height:1.6;scroll-margin-top:24px}
.enquiry-errors ul{padding-left:20px;margin-bottom:0}.enquiry-errors a{text-underline-offset:3px}
.field-error{color:#871b27;font-size:.82rem;line-height:1.5;margin:8px 0 0}
.enquiry-success{padding:15px 0;scroll-margin-top:30px}.enquiry-success h2{margin-top:18px}.enquiry-success p{line-height:1.7;color:var(--muted)}.enquiry-success .button{margin-top:15px}
@media(min-width:700px){.testimonial-grid,.pathway-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.testimonial-card{padding:36px}.pathway-card-copy{padding:32px}.enquiry-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.enquiry-field-wide{grid-column:1/-1}}
@media(min-width:980px){.pathway-intro{padding:60px 0 76px}.pathway-grid{gap:28px}.enquiry-section{padding:40px 0 80px}.enquiry-layout{grid-template-columns:.85fr 1.15fr;gap:50px}.enquiry-panel{padding:36px}.enquiry-intro{position:sticky;top:24px}}
@media(max-width:699px){.pathway-card-copy{padding:24px}.pathway-card .button,.enquiry-form>.button{width:100%;font-size:.9rem}.enquiry-photo{display:none}.enquiry-help{margin:14px 0 0}.enquiry-intro .pathway-jobs{margin-top:16px}.enquiry-panel{padding:22px 18px}.enquiry-back{margin-bottom:24px}}

.footer-brand img{background:#fff;border-radius:8px}
