:root{font-family:Inter,ui-sans-serif,system-ui,sans-serif;color:#f4f1e9;background:#090c0f;--orange:#f07436;--ink:#090c0f;--panel:#11171c;--muted:#9ca8ad}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ink);color:#f4f1e9}a{color:inherit}.public-header{height:88px;display:flex;align-items:center;justify-content:space-between;padding:0 max(28px,calc((100% - 1260px)/2));border-bottom:1px solid #ffffff18;position:relative;z-index:2}.wordmark{text-decoration:none;font-weight:950;letter-spacing:.17em;font-size:18px}.wordmark span{color:var(--orange)}nav{display:flex;align-items:center;gap:28px}nav a{text-decoration:none;color:#b5bec1;font-size:14px;font-weight:700}nav a:hover,nav a.active{color:white}.account-link{border:1px solid #ffffff35;padding:10px 15px}.hero{min-height:720px;max-width:1360px;margin:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;padding:70px 50px 90px}.kicker{font-size:12px;letter-spacing:.24em;font-weight:900;color:var(--orange)}h1,h2,h3,p{margin-top:0}.hero h1,.contact-intro h1{font-family:Georgia,serif;font-size:clamp(70px,8vw,118px);line-height:.84;margin:25px 0 34px;letter-spacing:-.045em}.hero h1 em,.contact-intro h1 em{color:var(--orange);font-weight:400}.lead{font-size:19px;line-height:1.65;color:#aeb8bb;max-width:590px}.hero-actions{display:flex;gap:12px;margin-top:38px}.button{display:inline-flex;justify-content:center;border:0;text-decoration:none;padding:14px 20px;font-weight:850;font-size:14px;cursor:pointer}.button.primary{background:var(--orange);color:#101214}.button.ghost{border:1px solid #ffffff35;color:white}.hero-art{height:560px;position:relative;overflow:hidden;background:radial-gradient(circle at 62% 40%,#293137 0 8%,#141a1f 38%,#0d1114 70%);clip-path:polygon(8% 0,100% 0,92% 100%,0 100%)}.frame{position:absolute;inset:14%;border:1px solid #ffffff26;display:flex;flex-direction:column;justify-content:center;align-items:center;transform:rotate(-5deg)}.frame span{font-size:13px;letter-spacing:.6em}.frame strong{font-family:Georgia,serif;font-size:72px;color:var(--orange);font-style:italic}.motion-line{position:absolute;width:140%;height:2px;background:linear-gradient(90deg,transparent,var(--orange),transparent);transform:rotate(-35deg)}.motion-line.one{top:35%;left:-25%}.motion-line.two{top:66%;left:-12%}.score{position:absolute;right:8%;bottom:8%;font-size:36px;font-weight:900}.score span{color:var(--orange);padding:0 8px}.statement{border-block:1px solid #ffffff18;padding:36px max(30px,calc((100% - 1260px)/2))}.statement p{font-family:Georgia,serif;font-size:26px;margin:0;color:#d8dbd8}.specialties{max-width:1260px;margin:auto;padding:120px 30px}.section-title{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.section-title h2,.process h2,.final-cta h2{font-family:Georgia,serif;font-size:clamp(42px,5vw,72px);line-height:1;margin:0}.specialty-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #ffffff26}.specialty-grid article{padding:28px 25px 30px 0;border-right:1px solid #ffffff20;min-height:280px}.specialty-grid article+article{padding-left:25px}.specialty-grid span,.process li>span{color:var(--orange);font-weight:900}.specialty-grid h3{font-family:Georgia,serif;font-size:35px;margin:70px 0 16px}.specialty-grid p,.process p{color:var(--muted);line-height:1.6}.process{background:#f1eee6;color:#11171c;padding:110px max(30px,calc((100% - 1260px)/2));display:grid;grid-template-columns:1fr 1fr;gap:80px}.process ol{list-style:none;margin:0;padding:0}.process li{display:grid;grid-template-columns:55px 1fr;gap:15px;padding:24px 0;border-top:1px solid #15212833}.process strong{font-size:22px}.process p{margin:5px 0 0;color:#586368}.final-cta{text-align:center;padding:140px 30px}.final-cta h2{margin:22px auto 38px;max-width:850px}footer{border-top:1px solid #ffffff18;min-height:130px;padding:35px max(28px,calc((100% - 1260px)/2));display:flex;justify-content:space-between;align-items:center;color:#8f9a9f;font-size:13px}.contact-page{max-width:1260px;margin:auto;padding:100px 30px 130px;display:grid;grid-template-columns:1fr 520px;gap:100px}.contact-intro h1{font-size:clamp(62px,7vw,100px)}.contact-intro>p:not(.kicker){color:var(--muted);font-size:18px;line-height:1.65;max-width:560px}.contact-disciplines{display:flex;flex-wrap:wrap;gap:8px;margin-top:35px}.contact-disciplines span{border:1px solid #ffffff25;padding:8px 12px;color:#bac2c4}.contact-card{background:var(--panel);padding:38px;border:1px solid #ffffff14}.contact-card label{display:grid;gap:7px;margin-bottom:20px;font-weight:750;font-size:14px}.contact-card input,.contact-card textarea{width:100%;background:#090d10;border:1px solid #ffffff25;color:white;padding:13px;font:inherit}.form-message{min-height:22px;color:#f7a171}.contact-card .button{width:100%}@media(max-width:900px){.public-header{height:auto;padding-block:22px;align-items:flex-start}.public-header nav{gap:15px;flex-wrap:wrap;justify-content:flex-end}.hero{grid-template-columns:1fr;padding:65px 25px}.hero-art{height:390px;margin-top:55px}.specialty-grid{grid-template-columns:1fr 1fr}.process,.contact-page{grid-template-columns:1fr}.contact-page{gap:50px}.contact-card{max-width:600px}footer{gap:20px;flex-wrap:wrap}}@media(max-width:600px){.public-header{display:grid;gap:18px}.public-header nav{justify-content:flex-start}.hero h1{font-size:62px}.specialty-grid{grid-template-columns:1fr}.specialty-grid article{border-right:0;border-bottom:1px solid #ffffff20;padding-left:0!important}.process{padding-block:75px}.hero-actions{flex-direction:column}.contact-card{padding:24px}}

/* Live-site content adapted for the new homepage. */
.header-logo{display:block;width:203px;height:65px}
.header-logo img{width:100%;height:100%;display:block;object-fit:contain}
.site-footer{justify-content:center}
.footer-logo{display:block;width:203px;height:65px}
.footer-logo img{width:100%;height:100%;display:block;object-fit:contain}
.home-banner{height:clamp(280px,41.67vw,640px);position:relative;overflow:hidden;background:#11161b}
.home-banner-slides,.home-banner-slide{position:absolute;inset:0}
.home-banner-slide{margin:0;opacity:0;transition:opacity .7s ease}
.home-banner-slide.is-active{opacity:1}
.home-banner-slide img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.home-banner-slide figcaption{position:absolute;top:50%;left:18%;display:grid;gap:14px;max-width:min(280px,25vw);transform:translateY(-50%);text-shadow:0 2px 14px #0007}
.home-banner-slide.banner-copy-school figcaption{top:58%;left:25%}
.home-banner-slide.banner-copy-right figcaption{right:15%;left:auto}
.home-banner-slide.banner-copy-second figcaption{right:11%}
.home-banner-slide.banner-copy-third figcaption{top:58%;left:22%}
.home-banner-slide.banner-copy-martial figcaption{right:12%}
.home-banner-slide figcaption h2{margin:0;font-family:Georgia,serif;font-size:clamp(28px,3.1vw,55px);line-height:1.02;letter-spacing:-.03em}
.home-banner-slide figcaption p{margin:0;font-size:clamp(14px,1.2vw,19px);font-weight:700;line-height:1.35}
.home-banner-slide figcaption .button{justify-self:start;padding:12px 18px;font-size:14px;text-shadow:none}
.home-banner-slide.banner-copy-light figcaption{color:#fff}
.home-banner-slide.banner-copy-dark figcaption{color:#163454;text-shadow:0 1px 2px #fff9}
.home-banner-controls{position:absolute;z-index:1;bottom:20px;left:50%;display:flex;gap:9px;transform:translateX(-50%)}
.home-banner-controls button{width:11px;height:11px;padding:0;border:1px solid #fff;background:#ffffff80;border-radius:50%;cursor:pointer;box-shadow:0 1px 3px #0008}
.home-banner-controls button.is-active{background:#fff;transform:scale(1.18)}
.home-banner-controls button:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.home-redesign-notice{padding:22px max(30px,calc((100% - 1260px)/2));background:#ffd84d;color:#981b1f;text-align:center}
.home-redesign-notice p{max-width:1100px;margin:0 auto;font-size:17px;font-weight:800;line-height:1.45}
.home-redesign-notice p:first-child{font-size:20px;font-weight:950}
.home-redesign-notice p+p{margin-top:9px}
.home-redesign-notice a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.home-photo-hero{grid-template-columns:.95fr 1.05fr;gap:56px;min-height:760px}
.home-copy-hero{display:block;min-height:auto;padding-block:105px}
.home-copy-hero .hero-copy{max-width:1050px;margin:auto;text-align:center}
.home-copy-hero .kicker{font-size:14px}
.home-copy-hero h1{font-size:clamp(60px,7vw,104px)}
.home-copy-hero .lead{max-width:880px;margin-inline:auto}
.home-hero-images{height:620px;position:relative}
.home-hero-images figure{margin:0;overflow:hidden;background:#20262d;box-shadow:0 28px 80px #0008}
.home-hero-images img,.home-gallery-grid img,.home-gallery-third-row img{width:100%;height:100%;display:block;object-fit:cover}
.home-hero-main{position:absolute;inset:0 8% 5% 16%;clip-path:polygon(7% 0,100% 0,93% 100%,0 100%)}
.home-hero-small{position:absolute;left:0;bottom:4%;width:46%;height:31%;border:7px solid #171a1e}
.home-hero-number{position:absolute;right:0;top:8%;padding:12px 16px;background:#3b82f6;color:#fff;font-size:11px;font-weight:900;letter-spacing:.2em}
.home-intro{padding:110px max(30px,calc((100% - 1200px)/2));border-block:1px solid #ffffff18;display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:end}
.home-intro h2,.home-gallery h2,.home-lost-photos h2,.home-testimonials h2{font-family:Georgia,serif;font-size:clamp(42px,5vw,72px);line-height:1.03;margin:20px 0 0;letter-spacing:-.025em}
.home-intro>p{color:#b8c1c4;font-size:18px;line-height:1.8;margin:0}
.home-specialty-grid{grid-template-columns:repeat(3,1fr)}
.home-gallery{padding:70px max(30px,calc((100% - 1260px)/2));background:#0d1115}
.home-gallery-heading{display:grid;grid-template-columns:1.25fr .75fr;gap:80px;align-items:end;margin-bottom:55px}
.home-gallery-heading>p{color:var(--muted);line-height:1.75;font-size:17px;max-width:440px;margin-bottom:4px}
.home-gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:410px;gap:12px}
.home-gallery-grid figure{margin:0;overflow:hidden;background:#20262d;position:relative}
.home-gallery-grid figure:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff14;pointer-events:none}
.home-gallery-grid .wide{grid-column:span 2}
.home-gallery-grid .wide img{object-position:center 38%}
.home-gallery-third-row{display:grid;grid-template-columns:8fr 8fr 12.5fr;gap:12px;margin-top:12px;align-items:start}
.home-gallery-third-row figure{margin:0;overflow:hidden;background:#20262d;position:relative}
.home-gallery-third-row .portrait{aspect-ratio:4/5}
.home-gallery-third-row .landscape{aspect-ratio:5/4}
.home-gallery-third-row figure:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff14;pointer-events:none}
.home-lost-photos{padding:110px max(30px,calc((100% - 1260px)/2));background:#eef1f5;color:#151a20;display:grid;grid-template-columns:1.15fr .85fr;gap:100px;align-items:end}
.home-lost-photos .kicker{font-size:17px}
.home-lost-photos h2{font-size:clamp(40px,4.6vw,68px);max-width:750px}
.home-lost-photos>div:last-child p{color:#56616b;font-size:18px;line-height:1.7;margin-bottom:28px}
.home-testimonials{padding:120px max(30px,calc((100% - 1260px)/2))}
.home-testimonials-heading{max-width:850px;margin-bottom:52px}
.home-testimonials-heading h2{margin-top:0}
.home-testimonial-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.home-testimonial-grid blockquote{margin:0;padding:34px;background:#20262d;border:1px solid #ffffff12;display:flex;flex-direction:column;justify-content:space-between;min-height:245px}
.home-testimonial-grid blockquote:first-child{grid-column:span 2;background:#233448}
.home-testimonial-grid blockquote p{font-family:Georgia,serif;font-size:20px;line-height:1.55;color:#eef1f3}
.home-testimonial-grid blockquote:first-child p{font-size:clamp(22px,2.3vw,31px);max-width:1040px}
.home-testimonial-grid cite{font-style:normal;color:#8bbaff;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
@media(max-width:900px){.home-photo-hero{gap:30px}.home-hero-images{height:570px}.home-intro,.home-gallery-heading,.home-lost-photos{grid-template-columns:1fr;gap:38px}.home-specialty-grid{grid-template-columns:repeat(3,1fr)}.home-gallery-grid{grid-template-columns:repeat(2,1fr);grid-auto-rows:390px}.home-testimonial-grid{grid-template-columns:1fr}.home-testimonial-grid blockquote:first-child{grid-column:auto}}
@media(max-width:600px){.home-banner{height:300px}.home-banner-slide figcaption,.home-banner-slide.banner-copy-school figcaption,.home-banner-slide.banner-copy-third figcaption{top:auto;bottom:42px;left:25px;gap:7px;max-width:205px;transform:none}.home-banner-slide.banner-copy-right figcaption{right:25px;left:auto}.home-banner-slide figcaption h2{font-size:27px}.home-banner-slide figcaption p{font-size:13px}.home-banner-slide figcaption .button{padding:9px 13px;font-size:12px}.home-banner-controls{bottom:14px}.home-redesign-notice{padding:18px 22px}.home-redesign-notice p{font-size:14px}.home-redesign-notice p:first-child{font-size:16px}.home-photo-hero{padding-top:55px}.home-copy-hero{padding-block:75px}.home-hero-images{height:470px;margin-top:25px}.home-hero-main{inset:0 0 6% 8%}.home-hero-small{width:52%;height:28%;border-width:5px}.home-intro,.home-gallery,.home-lost-photos,.home-testimonials{padding-block:76px}.home-specialty-grid{grid-template-columns:1fr}.home-gallery-grid{grid-template-columns:1fr;grid-auto-rows:430px}.home-gallery-third-row{grid-template-columns:1fr}.home-gallery-grid .wide{grid-column:auto;height:280px}.home-testimonial-grid blockquote{padding:26px}.home-testimonial-grid blockquote:first-child p{font-size:22px}}
@media(prefers-reduced-motion:reduce){.home-banner-slide{transition:none}}

.contact-help{display:flex;min-height:420px;flex-direction:column;justify-content:center;align-items:flex-start}
.contact-help h1{font-family:Georgia,serif;font-size:clamp(34px,3.4vw,48px);line-height:1.08;letter-spacing:-.025em;margin:0 0 12px}
.contact-help>p.contact-help-intro{color:#aeb8bb;font-size:18px;line-height:1.5;margin:0}
.contact-number{display:grid;gap:8px;margin-top:54px}
.contact-number span{color:#8f9a9f;font-size:14px;font-weight:800}
.contact-number a{color:#f4f1e9;font-size:22px;font-weight:800;text-decoration:none}
.contact-number a:hover{color:var(--orange)}
@media(max-width:900px){.contact-help{min-height:auto;padding-top:20px}.contact-number{margin-top:38px}}
