body{border-top:4px solid var(--orange)}
html{background:var(--orange);overscroll-behavior-y:none;min-height:100%}
body{min-height:100vh}
.contact{padding-bottom:calc(1.5rem + env(safe-area-inset-bottom,0px))}
:root{--paper:#f4f0e7;--ink:#27231e;--orange:#b63d10;--line:#8c8479;--wash:#e9e3d8;--pad:clamp(1.25rem,4vw,4.5rem)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.45 'Avenir Next',Avenir,system-ui,sans-serif}a{color:inherit;text-underline-offset:5px}button{font:inherit;cursor:pointer}a,button{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:5px}::selection{background:var(--ink);color:var(--paper)}.wrap{max-width:1600px;margin:auto;padding-inline:var(--pad)}.poster{font-family:Poster,'Arial Narrow',sans-serif;font-weight:400;letter-spacing:-.025em;line-height:1.02}.skip{position:absolute;top:-5rem;left:1rem;padding:1rem;background:var(--paper);z-index:3}.skip:focus{top:1rem}.top{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.brand{text-decoration:none;font-size:clamp(1.9rem,3vw,2.8rem);letter-spacing:-.045em}.nav{display:flex;align-items:center;gap:1.5rem}.nav a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none;font-size:.9rem}.nav a:hover{text-decoration:underline}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1.5rem;background:var(--ink);color:var(--paper);text-decoration:none;border:1px solid var(--ink);font-weight:650}.button:hover{background:var(--orange);border-color:var(--orange)}.menu{display:none;min-height:44px;padding:.5rem 1rem;border:1px solid var(--ink);color:var(--ink);background:transparent}
.breadcrumb{display:inline-flex;align-items:center;min-height:44px;font-size:.85rem}.page-hero{padding-top:2rem;padding-bottom:clamp(3rem,7vw,6rem)}.eyebrow{margin:1.5rem 0 1rem;font-size:.85rem}.hero-grid{display:grid;grid-template-columns:1.55fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center}h1{font-size:clamp(3.4rem,8vw,8rem);max-width:12ch;margin:0 0 1.5rem;overflow-wrap:break-word}h1 span{display:block}.lead{font-size:clamp(1.1rem,1.5vw,1.3rem);max-width:43ch;margin:0 0 1.8rem}.hero-image{width:100%;height:460px;object-fit:contain}.hero-reference{align-self:end;padding-block:1.25rem;border-top:1px solid var(--ink)}.hero-reference h2{font-size:2.3rem;margin:0 0 1.25rem}.hero-reference ul{list-style:none;margin:0;padding:0}.hero-reference li{border-top:1px solid var(--line)}.hero-reference li a{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding-block:1rem;min-height:48px;text-decoration:none}.hero-reference li a:hover{text-decoration:underline}.hero-reference .all{display:inline-flex;margin-top:1rem;min-height:44px;align-items:center}
.wide-visual{margin:0;background:var(--wash)}.wide-visual img{display:block;width:100%;height:clamp(260px,38vw,530px);object-fit:cover}.wide-visual figcaption{padding-block:.8rem;font-size:.75rem}.degree{font-size:clamp(7rem,19vw,20rem);line-height:1;text-align:center;letter-spacing:-.05em}.degree-note{max-width:28ch;text-align:center;margin:1rem auto;font-size:.9rem}
.content-section{padding-block:clamp(3rem,6vw,5.5rem);display:grid;grid-template-columns:1fr 1.6fr;gap:clamp(2rem,5vw,5rem);border-top:1px solid var(--ink)}h2{font-size:clamp(2.8rem,5vw,5rem);margin:0;max-width:13ch}.copy{max-width:60ch}.copy>p:first-child{margin-top:0}.copy p{margin:0 0 1.25rem}.use-list{padding:0;list-style:none;margin:0}.use-list li{padding-block:1.25rem;border-bottom:1px solid var(--line)}.use-list li:first-child{padding-top:0}.use-list h3{font-size:1.2rem;font-weight:650;margin:0 0 .5rem}.use-list p{margin:0;max-width:55ch}.process{background:var(--wash)}.process .content-section{border:0}.steps{list-style:none;counter-reset:steps;padding:0;margin:0}.steps li{counter-increment:steps;display:grid;grid-template-columns:2.5rem 1fr;gap:1rem;padding:1.25rem 0;border-bottom:1px solid var(--line)}.steps li:first-child{padding-top:0}.steps li::before{content:counter(steps,decimal-leading-zero);font-size:1rem;font-variant-numeric:tabular-nums}.steps h3{font-size:1.2rem;margin:0 0 .5rem}.steps p{margin:0;max-width:55ch}.brief{margin-top:2rem!important;font-size:.9rem}
.other-services{padding-block:2.5rem}.other-services h2{font-size:2rem;max-width:none;margin-bottom:1.3rem}.service-links{display:flex;gap:1rem 2rem;flex-wrap:wrap}.service-links a{display:inline-flex;align-items:center;min-height:44px}.service-links [aria-current=page]{color:var(--orange);font-weight:650}
.contact{background:var(--orange);color:var(--paper);padding-block:3rem 1.5rem}.contact h2{font-size:clamp(2.8rem,5.5vw,6rem);max-width:none}.contact>a{font-size:clamp(2rem,7.3vw,7.5rem);text-decoration:none;overflow-wrap:anywhere;line-height:1.1;display:inline-block;margin:1rem 0 3rem}.contact>a:hover{text-decoration:underline}.contact a:focus-visible{outline-color:var(--paper)}.footer{display:flex;justify-content:space-between;gap:1rem;align-items:center;flex-wrap:wrap;padding-top:1rem;border-top:1px solid rgba(244,240,231,.6);font-size:.75rem}.footer p{margin:0}.legal{display:flex;gap:1.5rem}.legal a{display:inline-flex;align-items:center;min-height:44px}
@media(max-width:749px){.top{min-height:80px;flex-wrap:wrap;gap:0}.menu{display:block}.nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;gap:.5rem;padding-block:1rem}.nav.is-open{display:flex}.nav a{padding:.5rem}.hero-grid,.content-section{grid-template-columns:1fr}.page-hero{padding-top:.5rem}h1{font-size:clamp(3.25rem,12vw,5.8rem);max-width:13ch}.hero-image{height:370px;max-width:430px;display:block;margin:auto}.hero-reference{margin-top:1rem}.degree{font-size:clamp(8rem,38vw,15rem)}.content-section{gap:2rem}.footer{align-items:flex-start;flex-direction:column}.contact{padding-top:2.5rem}.contact>a{margin-bottom:2rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media(max-width:1399px){.top{min-height:80px;flex-wrap:wrap;gap:0}.menu{display:block}.nav{display:none;flex-basis:100%;padding-block:1rem;align-items:stretch;gap:.5rem}.nav.is-open{display:flex;flex-direction:column}.nav a{padding:.5rem}}
.contact.wrap{max-width:none;padding-inline:max(var(--pad),calc((100% - 1600px)/2 + var(--pad)))}
.nav{gap:1.6rem}.button.outline{background:transparent;color:var(--ink)}.button.outline:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}
@media(max-width:1099px){.top{min-height:80px;flex-wrap:wrap;gap:0}.menu{display:block}.nav{display:none;flex-basis:100%;padding-block:1rem;align-items:stretch;gap:.5rem}.nav.is-open{display:flex;flex-direction:column}.nav a{padding:.5rem}}
@media(min-width:750px) and (max-width:899px){.top{flex-wrap:wrap;gap:0}.menu{display:block}.nav{display:none;flex-basis:100%;padding-block:1rem;align-items:stretch;gap:.5rem}.nav.is-open{display:flex;flex-direction:column}.nav a{padding:.5rem}}
.top{position:relative;z-index:10}.nav-services{position:relative}.nav-services summary{display:flex;align-items:center;gap:.6rem;min-height:44px;font-size:.9rem;cursor:pointer;list-style:none}.nav-services summary::-webkit-details-marker{display:none}.nav-services summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}.nav-services[open] summary span{transform:rotate(180deg)}.nav-submenu{position:absolute;right:0;top:calc(100% + .5rem);min-width:285px;padding:.7rem 1rem;background:var(--paper);border:1px solid var(--ink);box-shadow:0 10px 25px #27231e12}.nav-submenu a{display:flex;min-height:44px;padding:.5rem 0}.nav-submenu a:hover{color:var(--orange)}
@media(min-width:900px){.top{min-height:100px;flex-wrap:nowrap;gap:1.5rem}.menu{display:none}.nav,.nav.is-open{display:flex;flex-direction:row;flex-basis:auto;align-items:center;gap:1.6rem;padding-block:0}.nav>a{padding:.0rem}.nav>a.button{padding:.8rem 1.5rem}}
@media(max-width:899px){.nav-services summary{padding:.5rem}.nav-submenu{position:static;min-width:0;padding:0 1rem;margin-bottom:.5rem;border:0;border-left:1px solid var(--line);box-shadow:none}}
