/* R9 proposal: neutral graphite, clear paper, sculptural type. */
:root{--ink:#111111;--paper:#f3f2ee;--coral:#ff653d;--muted:#aaa9a7}
body{background:var(--ink)}
.hero{background:radial-gradient(ellipse at 88% 30%,#3a292420,transparent 56%),#101112}
.hero-grain{opacity:.025}
.hero:after{content:'';position:absolute;inset:auto 0 0;height:22%;background:linear-gradient(transparent,#111111dd);z-index:3;pointer-events:none}
.hero-footer{z-index:5}.hero-footer:before{display:none}
.hero-eyebrow{color:#b6b6b4;letter-spacing:.16em}.hero-eyebrow .line{width:38px}
.hero h1{font-weight:450;letter-spacing:-.065em;line-height:.98}
.hero .title-qualifier{font-size:.56em;letter-spacing:-.055em;line-height:1.3;margin-top:24px}
.hero-bottom{margin-top:40px}.hero-bottom p{color:#bdbdbb;max-width:215px}
.header{border-bottom-color:#ffffff1e}.header-cta{border-color:#ffffff45}
.button{border-radius:2px}.button-coral{box-shadow:inset 0 1px #ffffff24}
.button-coral:hover{background:#ff7856}
.section-light{background:var(--paper)}
.section-top{position:relative}.section-top:after{content:'';position:absolute;top:42px;left:0;width:38px;height:2px;background:var(--coral)}
.about-heading{padding-top:90px}.intro-title{font-weight:450;letter-spacing:-.065em}
.about-heading .intro-title span{color:#888888}
.about-narrative{column-gap:7%}
.about-folio{position:absolute;left:-2%;bottom:2%;font-size:clamp(120px,18vw,265px);line-height:.8;letter-spacing:-.1em;font-weight:300;color:#deddd8;z-index:0;pointer-events:none}
.about-illustrations{z-index:1;inset:0 -2% 0 5%}
.about-art .asterisk{z-index:2;top:5%;left:0;font-size:68px}
.about-chapter p{color:#626262}.chapter-index{color:#777}
.about-art-footer{color:#737373;border-color:#ccc}
.about-nav-steps button{color:#777;border-color:#d1d1ce}
.about-nav-arrows button{transition:background .25s,color .25s,transform .25s}.about-nav-arrows button:hover:not([aria-disabled=true]){background:#111;color:#fff;transform:translateX(2px)}
.services{background:#191919}.services .section-heading h2 span{color:#868686}
.service-title h3{font-weight:450}.service-title{border-color:#ffffff22}
.service-body p{color:#b7b7b3}.service-body .tags span{color:#b8b8b5;border-color:#ffffff24}
.franchise{padding-top:86px;padding-bottom:85px}
.franchise-heading{margin-top:85px;gap:5%}
.franchise-heading h2{font-weight:450;letter-spacing:-.065em}
.franchise-cards{border:0;gap:0;align-items:stretch;position:relative}
.franchise-card{padding:26px 30px 28px;border-top:1px solid #11111130;border-bottom:1px solid #11111130;position:relative;isolation:isolate;overflow:hidden}
.franchise-card:first-child{padding-left:0}.franchise-card:last-child{padding-right:0}
.franchise-card:after{content:'';position:absolute;top:0;left:0;width:100%;height:2px;background:var(--coral);transform:scaleX(0);transform-origin:left;transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.franchise-card:hover:after{transform:scaleX(1)}
.franchise-card .card-top{align-items:baseline}.franchise-card .card-top h3{font-size:19px;font-weight:500}.franchise-card .card-top>span{color:#8b8b86}
.franchise-figure{position:relative;display:block;height:320px;min-height:0;margin:8px 0 20px}
.franchise-figure>img{position:absolute;inset:8px 0 auto auto;width:86%;height:265px;max-width:none;object-fit:contain;filter:drop-shadow(0 15px 20px #1111110c);transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.franchise-card:first-child .franchise-figure>img{right:-5%;width:92%;height:275px;top:0}
.franchise-figure .franchise-number{position:absolute;left:0;bottom:0;margin:0;font-size:clamp(78px,7.2vw,112px);line-height:.9;letter-spacing:-.07em;color:#cf4325;z-index:2;text-shadow:0 0 25px var(--paper)}
.franchise-number>span{letter-spacing:0;font-size:13px;color:#676767;margin-top:18px;text-shadow:none}
.franchise-card p{font-size:15px;color:#646464;line-height:1.75;max-width:340px}
.franchise-card:hover .franchise-figure>img{transform:translateY(-6px)}
.experience{background:#151515;border-color:#ffffff1a}
.experience-copy p{color:#c0c0bc}.experience-art img{filter:drop-shadow(0 25px 35px #0004)}
.process{background:#111111}.process .section-heading h2 span{color:#868686}
.process-slide{background:radial-gradient(ellipse at 100% 0,#38383866,transparent 70%),#1b1b1b;border:1px solid #ffffff15;border-radius:0}
.process-slide p{color:#b4b4b0}.slide-meta>span:last-child{color:#969693}.slider-status,.process-scroll-cue{color:#a7a7a4}
.process .slider-positions span{border-color:#454545;color:#929292}
.process .slider-positions span[aria-current]{border-color:var(--coral);color:var(--paper)}
.vision-image{background:#deddd8}.vision-watermark{color:transparent;-webkit-text-stroke:1px #11111124}
.vision-content h2 span{color:#898986}.vision-content p{color:#646462}
.faq-heading>p{color:#73736f}.faq-list p{color:#656563}
.contact{background:radial-gradient(ellipse at 0 100%,#492a2033,transparent 55%),#111111}
.contact-heading p{color:#aaa9a5}.footer{background:#111111}.footer-bottom,.footer-navigation>.eyebrow{color:#90908d}
@media(min-width:1101px){.hero{height:min(100svh,1020px);min-height:800px;padding-top:178px}.hero-content{width:61%}.hero h1{font-size:clamp(86px,8.85vw,144px)}.hero-visual{top:110px;bottom:-350px;right:-1%;width:47%}.hero-bottom{gap:54px}.header{height:100px}.about-art{height:535px}.about-chapter{min-height:520px}}
@media(min-width:761px) and (max-width:1100px){.hero h1{font-size:8.8vw}.hero .title-qualifier{font-size:.64em}.franchise-card{padding-left:20px;padding-right:20px}.franchise-figure{height:265px}.franchise-figure>img{height:215px;width:94%}.franchise-card:first-child .franchise-figure>img{height:220px}.franchise-figure .franchise-number{font-size:76px}.franchise-heading{margin-top:65px}.about-folio{font-size:150px}}
@media(max-width:760px){
 .hero{padding-top:135px;padding-bottom:70px}.hero h1{font-size:12.2vw;line-height:1.01}.hero .title-qualifier{font-size:.72em;margin-top:12px}.hero-bottom{margin-top:28px}.hero-bottom p{max-width:215px}.hero-bottom .button{margin-top:22px;width:220px}.hero-visual{margin-top:5px;height:570px}.hero-eyebrow{font-size:9px;letter-spacing:.13em}.hero-eyebrow .line{width:24px}
 .about-heading{padding-top:58px}.about-folio{font-size:140px;bottom:10%;left:0}.about-illustrations{inset:-8px 0 0 15%}.about-art .asterisk{top:18px;left:0;font-size:48px}.about-chapter p{font-size:16px;line-height:1.78}
 .section-top:after{top:36px;width:25px}.franchise{padding-top:50px;padding-bottom:60px}.franchise-heading{margin:60px 0 35px;gap:26px}.franchise-cards{display:block}.franchise-card,.franchise-card:first-child,.franchise-card:last-child{padding:24px 0 28px;border-left:0;border-right:0;border-bottom:0}.franchise-card:last-child{border-bottom:1px solid #11111130}.franchise-figure{height:300px;margin-top:18px;margin-bottom:20px}.franchise-figure>img{height:255px;width:78%;right:0}.franchise-card:first-child .franchise-figure>img{height:275px;width:92%;right:-4%}.franchise-figure .franchise-number{font-size:90px}.franchise-number>span{font-size:13px}.franchise-card p{font-size:15px;max-width:none}.franchise-card .card-top h3{font-size:19px}
 .process-slide{border-color:#ffffff1a}.hero:after{height:10%}
}
@media(prefers-reduced-motion:reduce){.franchise-card:after,.franchise-figure>img,.about-nav-arrows button{transition:none}.franchise-card:hover .franchise-figure>img{transform:none}}
body.motion-paused .franchise-figure>img{transform:none;transition:none}
/* Large laptops: give each service a readable scene, without the old full-screen gaps. */
@media(min-width:1280px){
 .service-item{min-height:72.5svh;padding:48px 0 52px;justify-content:center}
 .service-title{padding-top:34px;padding-bottom:34px}
 .service-title h3{font-size:clamp(42px,3.15vw,52px)}
 .service-body p{font-size:clamp(18px,1.3vw,21px);line-height:1.86}
 .service-body h4{font-size:18px;line-height:1.5}
 .service-body #team-information{margin-top:28px}
 .service-body .tags{margin-top:24px}
}
