/* Website redesign: an extension of the studio's cream, lavender and green palette. */
.redesign-page{--rd-purple:#765985;--rd-soft:#e6dbea;--rd-green:#242a25;--rd-muted:#5e625b}
.redesign-page ::selection{background:#c3b0db;color:#181b18}
.redesign-page main{overflow:visible}
.redesign-page :focus-visible{outline:3px solid #765985;outline-offset:5px}
.redesign-page .rd-dark :focus-visible{outline-color:#d2bde3}
.redesign-page .top{position:relative;inset:auto}
html body.redesign-page .top .langs a,html body.redesign-page .foot .langs a{min-width:44px;min-height:44px}
.redesign-page .top .top-wa{width:44px;height:44px}
.redesign-page .top .ft-brand .ft-symbol{width:60px;height:60px}
.redesign-page .wrap{width:min(1240px,100% - 64px)}
.redesign-page h1,.redesign-page h2,.redesign-page h3{font-family:var(--display);letter-spacing:-.035em;text-wrap:balance}
.redesign-page h1{font-size:clamp(54px,5.5vw,80px);font-weight:650;line-height:1.02}
.redesign-page h1 em,.redesign-page h2 em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.04em}
.redesign-page h1 em{display:block;margin-top:14px;color:var(--rd-purple);font-size:.98em;line-height:1.05}
.redesign-page h2{font-size:clamp(37px,4vw,58px);font-weight:650;line-height:1.06}
.redesign-page h3{font-size:26px;line-height:1.16;font-weight:650}
.redesign-page p{max-width:68ch}
.redesign-page a{ text-underline-offset:5px }
.rd-section{padding-block:96px;scroll-margin-top:24px}
.rd-lead{font-size:20px;line-height:1.6;color:#444b43}
.rd-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:56px;padding:15px 23px;border:1px solid var(--rd-green);border-radius:100px;background:var(--rd-green);color:#fffdf8;font-size:15px;font-weight:650;line-height:1.35;text-align:center;transition:background .2s,color .2s}
.rd-button:hover{background:#414d42;color:#fffdf8}
.rd-button svg,.rd-link svg{width:20px;height:20px;flex:none}
.rd-link{display:inline-flex;align-items:center;gap:12px;min-height:44px;font-weight:600;font-size:15px;text-decoration:underline;text-decoration-thickness:1px}
.rd-link:hover{color:var(--rd-purple)}
.rd-actions{display:flex;flex-wrap:wrap;align-items:center;gap:16px 24px;margin-top:28px}
/* A portfolio composition, using the studio's actual design demos. */
.rd-hero{padding:58px 0 48px;isolation:isolate;background:linear-gradient(90deg,#f5f0e8f5 0%,#f5f0e8db 39%,#f5f0e84a 100%),url('/assets/studio-home-20261016/architecture-background.png') center 65%/cover;border-bottom:1px solid var(--line)}
.rd-hero-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.25fr);gap:38px;align-items:center}
.rd-hero-copy{position:relative;z-index:2}
.rd-hero-copy .rd-lead{margin-top:28px;max-width:28em;font-size:18px}
.rd-hero-note{font-size:13px;color:#565d52;margin-top:18px}
.rd-showcase{margin:0;min-width:0;padding:0}
.rd-demo-stage{height:475px;position:relative;perspective:1400px;isolation:isolate}
.rd-demo-card{position:absolute;display:flex;flex-direction:column;overflow:hidden;width:92%;height:350px;left:2%;top:86px;border-radius:12px;background:#fffdf8;box-shadow:0 20px 45px -15px #332b3970;transform-origin:50% 100%;transition:transform .65s cubic-bezier(.16,1,.3,1),box-shadow .65s;will-change:transform}
.rd-demo-card img{width:100%;height:calc(100% - 43px);object-fit:cover;object-position:top}
.rd-demo-card-label{height:43px;display:flex;align-items:center;gap:16px;padding:0 17px;font:650 15px/1 var(--display);letter-spacing:-.02em;background:#fffdf8;flex:none}
.rd-demo-card-label>span{font:400 10px/1.3 var(--body);letter-spacing:0;color:#5b5d56}
.rd-demo-card-label svg{width:17px;height:17px;margin-left:auto;flex:none}
.rd-demo-card[data-position="0"]{z-index:3;transform:translate(-2%,10px) rotate(-4deg)}
.rd-demo-card[data-position="1"]{z-index:1;transform:translate(-4%,-125px) scale(.7) rotate(-11deg)}
.rd-demo-card[data-position="2"]{z-index:2;transform:translate(17%,-100px) scale(.7) rotate(10deg)}
.rd-demo-card[data-position="0"]:hover{transform:translate(-2%,2px) rotate(-3deg);box-shadow:0 28px 55px -18px #332b3980}
.rd-demo-card:focus-visible{outline-offset:6px;z-index:4}
.rd-showcase .rd-demo-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:7px 8px 0;padding-top:20px;border-top:1px solid #a99b9d}
.rd-demo-description strong{display:block;font:650 22px/1.2 var(--display);letter-spacing:-.025em}
.rd-demo-description>span{display:block;margin-top:5px;font-size:12px;color:#544d53}
.rd-demo-open{display:inline-flex;align-items:center;gap:12px;font-size:14px;font-weight:650;min-height:44px;text-decoration:underline;text-underline-offset:6px}
.rd-demo-open svg{width:18px;height:18px}
.rd-demo-selectors{display:flex;gap:0;margin:18px 8px 0;border-bottom:1px solid #a99b9d}
.rd-demo-selectors button{flex:1;min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 3px;font-size:12px;color:#504a51;border-bottom:2px solid transparent;border-radius:0}
.rd-demo-selectors button>span{font-size:10px;font-variant-numeric:tabular-nums;color:#765985}
.rd-demo-selectors button[aria-pressed="true"]{border-color:#242a25;color:#181b18;font-weight:650;background:#fffdf84d}
.rd-demo-selectors button:hover{background:#fffdf87a}
.rd-demo-disclaimer{font-size:11px;line-height:1.5;color:#514c50;margin:12px 8px 0}
.rd-jump{border-bottom:1px solid var(--line);background:#f5f0e8}
.rd-jump .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-block:12px}
.rd-jump a{display:flex;align-items:center;gap:10px;min-height:44px;font-size:14px;font-weight:600;text-transform:capitalize}
.rd-jump a:hover{color:var(--rd-purple);text-decoration:underline}
.rd-jump svg{width:15px;height:15px}
.rd-split{display:grid;grid-template-columns:.87fr 1.13fr;gap:90px}
.rd-intro p{margin-top:25px;color:#555c53;max-width:33em}
.rd-diagnosis{background:var(--white)}
.rd-options{margin:0}
.rd-option{padding:25px 0;border-top:1px solid var(--line)}
.rd-option:first-child{padding-top:0;border:0}
.rd-option:last-child{padding-bottom:0}
.rd-option dt{font:650 24px/1.25 var(--display);letter-spacing:-.025em;margin-bottom:12px}
.rd-option dd{margin:0;color:#555c53;font-size:17px;line-height:1.6}
.rd-option dd b{font-weight:650;color:#282e27}
.rd-scope .rd-intro{max-width:760px;margin-bottom:44px}
.rd-scope-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.rd-preserve h3{margin-bottom:12px}
.rd-preserve li{padding:22px 0;border-bottom:1px solid var(--line)}
.rd-preserve li:last-child{border:0;padding-bottom:0}
.rd-preserve li strong{font-size:18px;font-weight:650;display:block;margin-bottom:8px}
.rd-preserve li p{font-size:16px;color:#555c53}
.rd-change{background:var(--rd-soft);padding:36px;border-radius:12px}
.rd-change ul{margin-top:20px}
.rd-change li{display:flex;align-items:flex-start;gap:13px;padding:14px 0;border-bottom:1px solid #cabcce;font-size:17px}
.rd-change li:last-child{border:0}
.rd-check{width:20px;height:20px;margin-top:4px;flex:none;stroke:#765985}
.rd-change p{font-size:14px;margin-top:22px;color:#5a4b61}
.rd-dark{background:var(--rd-green);color:#fbf7ef}
.rd-work-top{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:38px}
.rd-work-top h2{max-width:11em}
.rd-work-top p{font-size:17px;color:#d4d8cf;max-width:30em}
.rd-work-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:32px}
.rd-project{min-width:0}
.rd-project-image{display:block;overflow:hidden;border-radius:12px;background:#fffdf8}
.rd-project-image img{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top}
.rd-project h3{margin-top:24px;font-size:28px}
.rd-project p{margin-top:12px;color:#d4d8cf;font-size:16px;line-height:1.6}
.rd-project .rd-link{margin-top:16px;color:#e2cdee}
.rd-work-note{margin-top:40px;padding-top:22px;border-top:1px solid #546052;color:#bfc9bb;font-size:14px}
.rd-process .rd-intro{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:44px}
.rd-process .rd-intro h2{max-width:10em}
.rd-process .rd-intro p{max-width:29em;margin:0}
.rd-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;counter-reset:steps}
.rd-steps li{border-top:1px solid #b7aca0;padding-top:22px;counter-increment:steps}
.rd-step-number{font:500 16px/1 var(--body);color:var(--rd-purple);display:block;margin-bottom:27px}
.rd-steps h3{font-size:25px;margin-bottom:16px}
.rd-steps p{color:#555c53;font-size:16px}
.rd-cost{display:grid;grid-template-columns:.87fr 1.13fr;gap:90px;border-top:1px solid var(--line);padding-top:52px;margin-top:64px}
.rd-cost h3{font-size:34px;max-width:11em}
.rd-cost p{font-size:17px;color:#555c53}
.rd-cost .rd-link{margin-top:16px}
.rd-faq{background:var(--white);border-block:1px solid var(--line)}
.rd-faq h2{max-width:9em}
.rd-questions details{border-bottom:1px solid var(--line)}
.rd-questions details:first-child{border-top:1px solid var(--line)}
.rd-questions summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:23px 0;list-style:none;font:600 20px/1.35 var(--body)}
.rd-questions summary::-webkit-details-marker{display:none}
.rd-questions summary svg{width:20px;height:20px;flex:none;transition:transform .2s}
.rd-questions details[open] summary svg{transform:rotate(45deg)}
.rd-questions details p{font-size:16px;color:#555c53;padding:0 34px 24px 0;line-height:1.65}
.rd-contact{background:#e6dbea}
.rd-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.rd-contact h2{max-width:11em}
.rd-contact .rd-lead{font-size:18px;margin-top:26px;color:#54485a}
.rd-message{padding:34px;background:#fffdf8;border-radius:16px 16px 4px 16px}
.rd-message p{font-size:21px;line-height:1.55;color:#353c33}
.rd-message p span{display:block;color:#60685d;margin-top:12px;font-size:16px}
.rd-message .rd-button{margin-top:24px}
.rd-message-note{margin:16px 0 0;font-size:13px;color:#5e4f64}
.rd-skip{position:absolute;top:-100px;left:20px;z-index:99;padding:12px 20px;background:#fffdf8;color:#181b18}
.rd-skip:focus{top:12px}
@media(min-width:1600px){.rd-hero{padding-block:90px}}
@media(max-width:1100px){.rd-hero-grid{gap:36px}.redesign-page h1{font-size:60px}.rd-split,.rd-cost,.rd-contact-grid{gap:48px}.rd-scope-grid{gap:40px}.rd-steps{grid-template-columns:repeat(2,1fr);gap:36px}.rd-work-grid{grid-template-columns:1fr 1fr}.rd-hero{padding-block:60px}}
@media(max-width:800px){.rd-hero-grid{grid-template-columns:1fr;gap:42px}.rd-hero-copy{max-width:650px}.redesign-page h1{font-size:clamp(48px,8vw,70px);max-width:10em}.rd-showcase{max-width:600px;width:100%;padding-top:0;justify-self:center}.rd-hero-copy .rd-lead{max-width:34em}.rd-split,.rd-cost,.rd-contact-grid{grid-template-columns:1fr;gap:36px}.rd-intro{max-width:600px}.rd-jump .wrap{gap:10px 28px;justify-content:flex-start;flex-wrap:wrap}.rd-scope-grid{gap:30px}.rd-work-top,.rd-process .rd-intro{display:block}.rd-work-top p,.rd-process .rd-intro p{margin-top:24px}.rd-work-grid{gap:24px}.rd-section{padding-block:72px}.rd-cost{gap:20px;padding-top:38px;margin-top:48px}}
@media(max-width:560px){.redesign-page .wrap{width:calc(100% - 36px)}.redesign-page .top .ft-brand .ft-symbol{width:50px;height:50px}.rd-hero{padding:40px 0 38px}.redesign-page h1{font-size:46px;max-width:100%}.redesign-page h1 em{margin-top:12px;font-size:1.04em}.redesign-page h2{font-size:39px}.rd-hero-copy .rd-lead{font-size:18px;margin-top:24px}.rd-actions{gap:14px;margin-top:24px}.rd-hero .rd-actions .rd-button{width:100%}.rd-hero .rd-actions .rd-link{margin-inline:auto}.rd-hero-note{font-size:13px;margin-top:10px}.rd-hero-grid{gap:32px}.rd-showcase{padding-inline:5px}.rd-showcase figcaption{font-size:12px;gap:12px;margin-top:20px}.rd-jump .wrap{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding-block:14px}.rd-jump a{font-size:13px}.rd-section{padding-block:56px}.rd-scope-grid,.rd-work-grid,.rd-steps{grid-template-columns:1fr}.rd-scope .rd-intro{margin-bottom:32px}.rd-change{padding:27px}.rd-work-grid{gap:42px}.rd-project h3{margin-top:20px}.rd-work-note{margin-top:28px}.rd-steps{gap:0}.rd-steps li{position:relative;padding:24px 0 26px 43px}.rd-step-number{position:absolute;left:0;top:31px;margin:0}.rd-steps h3{font-size:25px;margin-bottom:10px}.rd-process .rd-intro{margin-bottom:28px}.rd-cost{margin-top:18px}.rd-cost h3{font-size:32px}.rd-questions summary{font-size:18px;gap:20px}.rd-contact-grid{gap:30px}.rd-message{padding:26px}.rd-message p{font-size:19px}.rd-message .rd-button{width:100%;padding-inline:15px;font-size:14px}.redesign-page .foot .wrap{width:calc(100% - 36px)}.rd-button{padding-inline:20px}.rd-jump svg{display:none}}
@media(max-width:360px){.redesign-page h1{font-size:41px}.redesign-page h2{font-size:35px}.redesign-page .top .ft-brand b{font-size:18px}.redesign-page .top .ft-brand .ft-symbol{width:46px;height:46px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.redesign-page *, .redesign-page *::before, .redesign-page *::after{animation:none!important;transition:none!important}}

/* Hero-specific responsive composition; keep the existing service content layout. */
.redesign-page .rd-hero h1{font-size:clamp(48px,4.7vw,69px);line-height:1.02}
.redesign-page .rd-hero h1 em{font-size:1em;color:#765985;margin-top:14px}
.rd-hero .rd-actions{gap:14px 22px;margin-top:26px}
.rd-hero .rd-link{font-size:14px}
.rd-hero .rd-button{font-size:14px;padding:15px 21px}
@media(min-width:1600px){.rd-hero{padding-block:80px}.rd-demo-stage{height:490px}}
@media(min-width:801px) and (max-width:1150px){
 .rd-hero-grid{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:22px}
 .rd-hero{padding-block:48px}.rd-demo-stage{height:395px}.rd-demo-card{height:290px;top:85px}
 .rd-demo-card[data-position="1"]{transform:translate(-3%,-115px) scale(.7) rotate(-11deg)}
 .rd-demo-card[data-position="2"]{transform:translate(16%,-90px) scale(.7) rotate(10deg)}
 .rd-hero-copy .rd-lead{font-size:17px;line-height:1.6}.rd-demo-card-label>span{font-size:9px}
}
@media(max-width:800px){
 .rd-hero{padding:38px 0 42px;background-position:68% center}
 .rd-hero-grid{grid-template-columns:1fr;gap:34px}.rd-hero-copy{max-width:620px}
 .redesign-page .rd-hero h1{font-size:clamp(47px,7.8vw,64px)}
 .rd-showcase{width:100%;max-width:640px;justify-self:center;padding-inline:8px}
 .rd-demo-stage{height:420px}.rd-demo-card{height:320px;top:75px}
 .rd-hero-copy .rd-lead{max-width:32em}.rd-hero .rd-actions .rd-button{width:auto}
}
@media(max-width:560px){
 .rd-hero{padding:32px 0 34px}.rd-hero-grid{gap:32px}
 .redesign-page .rd-hero h1{font-size:45px;max-width:100%}
 .redesign-page .rd-hero h1 em{font-size:1em;margin-top:12px}
 .rd-hero-copy .rd-lead{font-size:17px;margin-top:20px;line-height:1.55}
 .rd-hero .rd-actions{margin-top:22px;gap:8px}
 .rd-hero .rd-actions .rd-button{width:100%;min-height:52px}
 .rd-hero .rd-actions .rd-link{min-height:38px;margin-inline:auto}
 .rd-hero-note{font-size:12px;margin-top:6px}
 .rd-showcase{padding-inline:2px}
 .rd-demo-stage{height:280px}.rd-demo-card{height:215px;top:40px;width:91%;left:3%}
 .rd-demo-card[data-position="1"]{transform:translate(-4%,-75px) scale(.72) rotate(-11deg)}
 .rd-demo-card[data-position="2"]{transform:translate(17%,-55px) scale(.72) rotate(10deg)}
 .rd-demo-card img{height:calc(100% - 33px)}.rd-demo-card-label{height:33px;padding:0 11px;font-size:12px;gap:9px}
 .rd-demo-card-label>span{font-size:8px}.rd-demo-card-label svg{width:14px;height:14px}
 .rd-showcase .rd-demo-caption{margin:6px 2px 0;padding-top:16px;gap:12px}
 .rd-demo-description strong{font-size:21px}.rd-demo-description>span{font-size:11px}
 .rd-demo-open{font-size:13px;gap:9px}.rd-demo-selectors{margin:13px 2px 0}
 .rd-demo-selectors button{font-size:11px;gap:6px;min-height:46px}
 .rd-demo-disclaimer{margin:11px 2px 0;font-size:11px}
}
@media(max-width:360px){.redesign-page .rd-hero h1{font-size:39px}.rd-demo-card{height:185px}.rd-demo-stage{height:250px}.rd-demo-card-label>span{display:none}.rd-demo-selectors button{font-size:10px;gap:4px}.rd-demo-selectors button>span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.rd-demo-card{will-change:auto;transition:none}}

/* Each illustration explains one distinct redesign decision or stage. */
.rd-visual-section{background:#fffdf8}
.rd-visual-heading{display:flex;align-items:end;justify-content:space-between;gap:36px;margin-bottom:44px}
.rd-visual-heading>p{max-width:25em;color:#555c53;font-size:17px}
.rd-visual-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.rd-explainer{margin:0;min-width:0}
.rd-explainer-image,.rd-path-picture{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:10px}
.rd-explainer figcaption{padding-top:24px}.rd-explainer h3{font-size:25px}.rd-explainer p{font-size:16px;color:#555c53;line-height:1.55;margin-top:10px;max-width:28ch}
.rd-illustration-note{margin-top:26px;font-size:12px;color:#666054}
.rd-path-section{background:#f0ebe2}
.rd-path-section .rd-visual-heading{align-items:flex-end;margin-bottom:42px}
.rd-path-section .rd-visual-heading>p{max-width:24ch;padding-bottom:5px}
.rd-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;margin:0;padding:0}
.rd-path>li{position:relative;min-width:0}.rd-path-picture{margin-bottom:23px}
.rd-path-number{height:26px;position:relative;display:flex;align-items:center;font:500 11px var(--body);letter-spacing:.08em;color:#6b5674;margin-bottom:13px}
.rd-path-number:after{content:'';position:absolute;left:32px;right:-28px;height:1px;background:#cfc5b9;top:50%}
.rd-path>li:last-child .rd-path-number:after{right:0;background:linear-gradient(90deg,#cfc5b9,transparent)}
.rd-path h3{font-size:23px;letter-spacing:-.035em}.rd-path p{font-size:14px;color:#626259;margin-top:9px;line-height:1.6;max-width:26ch}
.rd-faq .rd-link{margin-top:24px}.rd-contact-action{justify-self:end}.rd-contact .rd-lead{font-size:17px}.rd-contact .rd-message-note{font-size:12px}
@media(max-width:1100px){.rd-visual-grid{gap:22px}.rd-explainer h3{font-size:23px}.rd-path{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 28px}.rd-path>li:nth-child(2) .rd-path-number:after{right:0;background:linear-gradient(90deg,#cfc5b9,transparent)}}
@media(max-width:800px){.rd-visual-heading{display:block;margin-bottom:32px}.rd-visual-heading>p{margin-top:20px}.rd-visual-grid{grid-template-columns:1fr;gap:30px}.rd-explainer{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:28px}.rd-explainer figcaption{padding:0}.rd-contact-action{justify-self:start}}
@media(max-width:560px){.rd-visual-heading h2{font-size:36px}.rd-explainer{display:block}.rd-explainer figcaption{padding-top:20px}.rd-visual-grid{gap:34px}.rd-path-section .rd-visual-heading>p{font-size:14px;max-width:none;margin-top:17px}.rd-path{grid-template-columns:1fr;gap:32px}.rd-path-picture{margin-bottom:16px}.rd-path-number{margin-bottom:9px}.rd-path-number:after{right:0}.rd-path h3{font-size:24px}.rd-path p{font-size:15px;max-width:100%;margin-top:8px}.rd-contact-action{width:100%}.rd-contact-action .rd-button{width:100%}.rd-jump .wrap{display:flex;justify-content:space-between;gap:8px}.rd-jump a{font-size:12px}.rd-illustration-note{font-size:11px}.rd-faq .rd-split{gap:26px}}
