:root { --thesis-ink:#111a2a; --thesis-muted:#667085; --thesis-blue:#009bd4; --thesis-pink:#e5007d; --thesis-yellow:#ffe100; }
html { scroll-behavior:smooth; }
.thesis-page { color:var(--thesis-ink); background:#f7f7f4; }
.thesis-page main { min-height:0; overflow:hidden; font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif; }
.thesis-page figure,.thesis-page p,.thesis-page h1,.thesis-page h2 { margin:0; }

.thesis-intro { position:relative; isolation:isolate; min-height:calc(100vh - 104px); padding:clamp(60px,6vw,92px) max(28px,calc((100vw - 1480px)/2)); overflow:hidden; background:#121722; }
.intro-gallery { position:absolute; z-index:0; inset:0; overflow:hidden; }
.gallery-slide { position:absolute; visibility:hidden; inset:0; opacity:0; transform:scale(1.045); transition:opacity 900ms ease,visibility 900ms ease,transform 3.6s cubic-bezier(.2,.65,.3,1); }
.gallery-slide.is-active { visibility:visible; opacity:1; transform:scale(1); }
.gallery-slide img { width:100%; height:100%; object-fit:cover; object-position:center; }
.thesis-intro-shade { position:absolute; z-index:1; inset:0; background:linear-gradient(90deg,rgba(9,14,24,.9) 0%,rgba(9,14,24,.7) 44%,rgba(9,14,24,.5) 100%),linear-gradient(0deg,rgba(9,14,24,.52),transparent 50%); pointer-events:none; }
.intro-layout { position:relative; z-index:2; display:grid; grid-template-columns:minmax(360px,.78fr) minmax(590px,1.22fr); gap:clamp(42px,5vw,80px); width:100%; align-items:start; }
.intro-inner { min-width:0; padding:clamp(24px,2vw,36px) 0; color:#fff; }
.eyebrow { margin:0 0 20px; color:var(--thesis-blue); font-size:12px; font-weight:900; letter-spacing:.17em; text-transform:uppercase; }
.thesis-intro h1,.quote-heading h2,.thesis-showcase h2 { margin:0; font-family:Georgia,"Times New Roman",serif; font-weight:400; letter-spacing:-.045em; }
.thesis-intro h1 { max-width:760px; font-size:clamp(58px,5.8vw,96px); line-height:.89; text-shadow:0 5px 30px rgba(0,0,0,.34); }
.thesis-intro h1 em { color:var(--thesis-yellow); font-weight:400; }
.intro-copy { max-width:650px; margin:42px 0 34px; padding:20px 24px; border-left:3px solid var(--thesis-blue); color:rgba(255,255,255,.86); background:rgba(9,14,24,.32); font-size:clamp(14px,1vw,17px); line-height:1.62; backdrop-filter:blur(7px); }
.intro-copy p + p { margin-top:14px; }
.intro-lead { color:#fff; font-weight:900; }
.intro-cta { display:inline-flex; min-height:54px; padding:0 27px; border-radius:999px; align-items:center; color:#fff; background:linear-gradient(115deg,var(--thesis-pink),var(--thesis-blue)); box-shadow:0 15px 36px rgba(229,0,125,.3); font-weight:900; text-decoration:none; transition:transform 180ms ease,box-shadow 180ms ease; }
.intro-cta:hover,.intro-cta:focus-visible { outline:0; transform:translateY(-2px); box-shadow:0 20px 44px rgba(229,0,125,.38); }

.thesis-quote { min-width:0; padding:clamp(26px,3.3vw,48px); border-top:5px solid var(--thesis-blue); border-radius:22px; background:rgba(255,255,255,.96); box-shadow:0 32px 90px rgba(0,0,0,.32); backdrop-filter:blur(12px); }
.quote-heading { display:grid; grid-template-columns:minmax(0,1fr) minmax(180px,.48fr); gap:14px 28px; margin-bottom:30px; align-items:end; }
.quote-heading .eyebrow { grid-column:1/-1; margin-bottom:0; }
.quote-heading h2 { font-size:clamp(34px,3.3vw,54px); line-height:.95; }
.quote-heading > p:last-child { color:var(--thesis-muted); font-size:14px; line-height:1.55; }
.quote-form { padding:0; }
.form-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:20px 18px; }
.form-field { grid-column:span 3; min-width:0; }
.form-field--number { grid-column:span 2; }
.form-field--wide { grid-column:1/-1; }
.form-field > span { display:block; margin-bottom:8px; font-size:12px; font-weight:900; }
.form-field b { color:var(--thesis-pink); }
.form-field input,.form-field select,.form-field textarea { width:100%; border:1px solid #d0d5dd; border-radius:9px; color:var(--thesis-ink); background:#fff; font:inherit; font-size:14px; }
.form-field input,.form-field select { height:48px; padding:0 12px; }
.form-field textarea { min-height:120px; padding:12px; line-height:1.5; resize:vertical; }
.form-field input:focus,.form-field select:focus,.form-field textarea:focus { border-color:var(--thesis-blue); outline:0; box-shadow:0 0 0 4px rgba(0,155,212,.13); }
.form-footer { display:flex; gap:22px; align-items:center; justify-content:space-between; margin-top:25px; }
.form-footer p { color:var(--thesis-muted); font-size:12px; }
.form-footer button { display:inline-flex; gap:14px; align-items:center; min-height:50px; padding:0 20px; border:0; border-radius:999px; color:#fff; background:var(--thesis-pink); font:inherit; font-size:13px; font-weight:900; cursor:pointer; transition:background 180ms ease,transform 180ms ease; }
.form-footer button:hover,.form-footer button:focus-visible { background:#c9006d; outline:0; transform:translateY(-2px); }
.form-status { min-height:18px; margin-top:13px!important; color:var(--thesis-pink); font-size:12px; font-weight:800; }

.thesis-showcase { padding:90px 0 100px; scroll-margin-top:20px; background:#f7f7f4; }
.thesis-showcase__heading { display:flex; justify-content:space-between; gap:40px; align-items:end; padding:0 max(24px,calc((100vw - 1320px)/2)) 55px; }
.thesis-showcase__heading h2 { max-width:760px; font-size:clamp(52px,6vw,92px); line-height:.9; text-align:right; }
.thesis-showcase__viewport { overflow:hidden; outline:none; }
.thesis-showcase__viewport:focus-visible { box-shadow:inset 0 0 0 4px var(--thesis-blue); }
.thesis-showcase__track { display:flex; gap:8px; width:max-content; }
.thesis-showcase__track.is-ready { animation:thesis-showcase-marquee 86s linear infinite; }
.thesis-showcase__group { display:flex; gap:8px; flex:none; }
.thesis-showcase__group a { position:relative; display:block; width:clamp(270px,30vw,480px); height:clamp(340px,40vw,620px); overflow:hidden; background:#e4e7ec; }
.thesis-showcase__group a:nth-child(3n+2) { width:clamp(330px,38vw,600px); }
.thesis-showcase__group img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.thesis-showcase__group a:hover img,.thesis-showcase__group a:focus-visible img { transform:scale(1.035); }
.thesis-showcase__group a:focus-visible { outline:4px solid var(--thesis-pink); outline-offset:-4px; }
.thesis-showcase__viewport:hover .thesis-showcase__track,.thesis-showcase__viewport:focus-within .thesis-showcase__track { animation-play-state:paused; }
@keyframes thesis-showcase-marquee { to { transform:translateX(calc(-50% - 4px)); } }

@media (max-width:1050px) { .intro-layout { grid-template-columns:minmax(300px,.68fr) minmax(500px,1.32fr); gap:30px; } .thesis-intro h1 { font-size:clamp(50px,6vw,72px); } .intro-copy { font-size:13px; } .quote-heading { grid-template-columns:1fr; } }
@media (max-width:820px) { .thesis-intro { min-height:0; padding:58px 22px 72px; } .intro-layout { grid-template-columns:1fr; } .intro-inner { max-width:720px; } .thesis-intro-shade { background:rgba(9,14,24,.76); } .thesis-quote { margin-top:16px; } .thesis-showcase__heading { align-items:flex-start; flex-direction:column; } .thesis-showcase__heading h2 { text-align:left; } }
@media (max-width:580px) { .thesis-intro h1 { font-size:clamp(50px,15vw,72px); } .intro-copy { padding-left:17px; } .thesis-quote { padding:25px 18px; border-radius:16px; } .form-grid { grid-template-columns:1fr; } .form-field,.form-field--number,.form-field--wide { grid-column:1; } .form-footer { align-items:stretch; flex-direction:column; } .form-footer button { justify-content:center; width:100%; } .thesis-showcase { padding:68px 0 78px; } .thesis-showcase__heading { padding:0 18px 40px; } .thesis-showcase__group a,.thesis-showcase__group a:nth-child(3n+2) { width:78vw; height:105vw; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } .gallery-slide,.intro-cta,.form-footer button,.thesis-showcase__group img { transition:none; } .thesis-showcase__viewport { overflow-x:auto; } .thesis-showcase__track.is-ready { animation:none; } }