@font-face{font-family:Manrope;src:url('assets/Manrope.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
:root{--ink:#172a38;--teal:#087f8c;--paper:#f7f5ef;--white:#fff;--lime:#d7f45b;--slate:#53636d;--line:#d9e0e2;--radius:1.5rem}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6.5rem}body{margin:0;background:var(--white);color:var(--ink);font-family:Manrope,Arial,sans-serif;font-size:1.0625rem;line-height:1.65}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:5px}p,h1,h2,h3{margin-top:0}p{margin-bottom:1.25rem}h1,h2,h3{font-weight:700;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(3.6rem,6.6vw,6.5rem);font-weight:800;line-height:1.03;letter-spacing:-.055em;margin-bottom:1.8rem}h2{font-size:clamp(2.15rem,3.35vw,3.5rem);margin-bottom:1.2rem}h3{font-size:1.3rem;letter-spacing:-.025em}.shell{width:min(1256px,calc(100% - 6rem));margin-inline:auto}.section-pad{padding-block:6.5rem}.eyebrow{font-size:.875rem;line-height:1.5;font-weight:700;letter-spacing:.115em;margin-bottom:1.35rem}.teal{color:var(--teal)}.site-header{background:rgba(255,255,255,.97);border-bottom:1px solid #e9edee;position:sticky;top:0;z-index:10}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:6rem}.brand{display:block;width:224px;flex:0 0 224px}.brand img{width:100%;height:76px;object-fit:contain}.header-inner nav{display:flex;align-items:center;gap:2rem;font-size:.9375rem;font-weight:600}.header-inner nav a{padding-block:.6rem}.header-inner nav a:hover{color:var(--teal)}.language-switch{display:flex;align-items:center;background:var(--paper);border:1px solid #d8dddb;border-radius:999px;padding:4px;gap:2px}.language-switch button{font-size:.875rem;font-weight:700;border:0;background:none;color:var(--ink);border-radius:999px;min-width:44px;min-height:36px;cursor:pointer}.language-switch button[aria-pressed=true]{background:var(--ink);color:var(--white)}.hero{background:var(--ink);color:var(--white);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.06fr 1fr;gap:4.5rem;align-items:center;padding-block:4.8rem 3.75rem}.hero-copy{padding-block:1rem}.hero .eyebrow{color:var(--lime)}.hero h1 span{color:var(--lime)}.hero-description{max-width:32rem;color:#e0e8ec;font-size:1.15rem;line-height:1.7;margin-bottom:2rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:.85rem 1.65rem;border-radius:999px;font-weight:700;font-size:.975rem;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.lime{background:var(--lime);color:var(--ink)}.lime:hover{background:#e3fa88}.ink{background:var(--ink);color:var(--white)}.ink:hover{background:#244359}.hero-note{font-size:.875rem;color:#c5d4dc;margin-top:1.3rem;margin-bottom:0}.hero-art{position:relative;background:var(--paper);border-radius:2.5rem;overflow:hidden;min-width:0;padding:1.5rem;box-shadow:0 22px 64px rgba(0,0,0,.12)}.hero-art img{width:100%;aspect-ratio:1/1;object-fit:contain;max-height:470px}.art-caption{display:block;color:var(--ink);font-size:.875rem;line-height:1.5;border-top:1px solid #d0d7d6;padding:.9rem .2rem .25rem;margin-top:.4rem}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding-block:1.35rem;border-top:1px solid #56616b;color:#dce6e9;font-size:.875rem}.index-label{font-weight:700;letter-spacing:.1em;white-space:nowrap}.section-heading{display:grid;grid-template-columns:1fr .8fr;gap:5rem;align-items:end;margin-bottom:3rem}.section-heading>p{max-width:29rem;color:var(--slate);margin-bottom:1.4rem}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.service-card{border:1px solid var(--line);border-radius:var(--radius);padding:1.8rem;background:var(--white);transition:border-color .18s,box-shadow .18s}.service-card:hover{border-color:var(--teal);box-shadow:0 6px 22px rgba(23,42,56,.05)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.2rem}.service-number{font-size:.875rem;color:var(--slate);font-weight:600}.card-top svg{width:34px;height:34px;fill:none;stroke:var(--teal);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.service-card h3{min-height:3rem;margin-bottom:1rem}.service-card p{font-size:1rem;color:var(--slate);margin-bottom:1.3rem;min-height:3.3rem}.service-card ul{list-style:none;margin:0;padding:0;font-size:.925rem;line-height:1.6}.service-card li{padding-left:1rem;position:relative;margin-top:.5rem}.service-card li::before{content:'';position:absolute;left:0;top:.65em;width:4px;height:4px;border-radius:50%;background:var(--teal)}.service-footnote{color:var(--slate);font-size:.9375rem;margin:2rem 0 0;max-width:58rem}.studio{background:var(--paper)}.studio-grid{display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.creative-art{background:var(--white);border-radius:2.2rem;overflow:hidden;padding:1rem}.creative-art img{width:100%;aspect-ratio:1/1;object-fit:contain;max-height:450px}.studio-copy>p:not(.eyebrow){color:var(--slate)}.studio-details{display:flex;flex-wrap:wrap;gap:.55rem;margin-top:2rem}.studio-details span{border:1px solid #cdd5d4;padding:.5rem .9rem;border-radius:999px;font-size:.875rem;font-weight:600;line-height:1.5}.approach{background:var(--teal);color:var(--white)}.approach .eyebrow{color:var(--white)}.approach .section-heading>p{color:var(--white)}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2rem}.process-grid article{border-top:1px solid rgba(255,255,255,.45);padding-top:1.5rem}.process-number{font-size:.875rem;font-weight:700;display:block;margin-bottom:2rem}.process-grid h3{line-height:1.25;margin-bottom:1rem}.process-grid p{font-size:1rem;color:var(--white);margin:0}.project-note{background:var(--lime);padding-block:3.7rem}.note-grid{display:grid;grid-template-columns:1.2fr 1.1fr auto;gap:3rem;align-items:center}.note-grid h2{font-size:2.35rem;margin:0}.note-grid p{font-size:1rem;margin:0}.note-grid .button{white-space:nowrap}footer{padding-block:2.6rem;background:var(--white)}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem}.footer-brand{width:230px;flex-shrink:0}.footer-brand img{width:215px;height:auto}.footer-brand p{font-size:.875rem;margin:.4rem 0 0;font-weight:600}.footer-inner>p{font-size:.925rem;max-width:24rem;margin:0;color:var(--slate)}.footer-language{font-size:.875rem;color:var(--slate);white-space:nowrap}.skip-link{position:absolute;top:-100px;left:1rem;z-index:100;background:var(--lime);color:var(--ink);padding:1rem;border-radius:.5rem}.skip-link:focus{top:1rem}
@media(min-width:1600px){.hero-grid{padding-block:5.2rem}}
@media(max-width:1050px){.shell{width:calc(100% - 3rem)}.hero-grid{gap:2.5rem}.header-inner{gap:1rem}.header-inner nav{gap:1.1rem}.brand{width:210px;flex-basis:210px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-heading{gap:2rem}.studio-grid{gap:3rem}.process-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:2.5rem}.note-grid{grid-template-columns:1fr 1fr}.note-grid .button{justify-self:start}.footer-language{display:none}}
@media(max-width:680px){html{scroll-padding-top:8.4rem}.shell{width:calc(100% - 2.5rem)}.header-inner{min-height:0;padding-block:.5rem .8rem;gap:.2rem 1rem;flex-wrap:wrap}.brand{width:180px;flex-basis:180px}.brand img{height:62px}.header-inner nav{order:3;flex-basis:100%;justify-content:flex-start;gap:1.5rem;font-size:.875rem}.header-inner nav a{padding:.25rem 0}.language-switch button{min-width:38px;min-height:34px}.hero-grid{grid-template-columns:1fr;padding-block:2.7rem;gap:2.5rem}.hero-copy{padding:0}h1{font-size:clamp(3.5rem,13vw,4.6rem)}.hero-description{font-size:1.0625rem}.hero-art{border-radius:1.8rem;padding:1rem}.hero-art img{max-height:370px}.hero-bottom{align-items:flex-start;font-size:.8125rem}.section-pad{padding-block:4rem}.section-heading{grid-template-columns:1fr;gap:.3rem;margin-bottom:2rem}.section-heading>p{margin-bottom:.7rem}.service-grid{grid-template-columns:1fr;gap:.9rem}.service-card{padding:1.5rem}.card-top{margin-bottom:1.4rem}.service-card h3,.service-card p{min-height:0}.service-card h3{font-size:1.375rem}.service-card li{font-size:1rem}.studio-grid{grid-template-columns:1fr;gap:2.5rem}.creative-art img{max-height:340px}.process-grid{grid-template-columns:1fr;gap:1.7rem}.process-number{margin-bottom:1rem}.process-grid h3{font-size:1.4rem}.project-note{padding-block:3rem}.note-grid{grid-template-columns:1fr;gap:1.25rem}.note-grid h2{font-size:2.15rem}.footer-inner{flex-direction:column;align-items:flex-start;gap:1.3rem}.footer-inner>p{max-width:22rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}
/* Keep enlarged text readable without concealing overflow. */
body{overflow-wrap:break-word}h1,h2,h3{overflow-wrap:anywhere}.section-heading>*,.studio-grid>*,.note-grid>*{min-width:0}.studio .eyebrow{color:var(--ink)}
@media(max-width:680px){.header-inner nav{flex-wrap:wrap;min-width:0;gap:.35rem 1.5rem}.section-heading,.studio-grid,.note-grid,.service-grid,.process-grid,.hero-grid{grid-template-columns:minmax(0,1fr)}.service-card{min-width:0}.note-grid .button{white-space:normal;max-width:100%;text-align:center}.studio-details span{max-width:100%;overflow-wrap:anywhere}}
.header-inner nav{flex-wrap:wrap;min-width:0}.services-menu{position:relative}.services-menu summary{cursor:pointer;display:flex;align-items:center;gap:.5rem;list-style:none;padding-block:.6rem;border-radius:.25rem}.services-menu summary::-webkit-details-marker{display:none}.services-menu summary::after{content:'';width:.4rem;height:.4rem;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-.2rem}.services-menu[open] summary{color:var(--teal)}.services-menu summary:focus-visible{outline:3px solid var(--teal);outline-offset:5px}.services-dropdown{position:absolute;top:calc(100% + .75rem);left:0;width:min(24rem,calc(100vw - 2.5rem));padding:.55rem;background:var(--white);border:1px solid var(--line);border-radius:1rem;box-shadow:0 16px 48px #172a3826;max-height:calc(100dvh - 9rem);overflow:auto;z-index:20}.header-inner nav .services-dropdown a{display:block;width:100%;text-align:left;color:var(--ink);font-size:.9375rem;line-height:1.4;font-weight:600;padding:.9rem .8rem;min-height:44px;border-radius:.5rem;overflow-wrap:anywhere}.services-dropdown a:hover,.services-dropdown a:focus-visible{background:var(--paper)}.service-card{scroll-margin-top:1.25rem}.service-card:target{border-color:var(--teal);box-shadow:0 0 0 2px var(--teal)}
@media(max-width:680px){.services-menu summary{padding:.25rem 0}.services-dropdown{left:-.2rem;top:calc(100% + .6rem)}}
.service-view{position:fixed;inset:0;margin:auto;width:min(35rem,calc(100% - 2rem));max-height:calc(100dvh - 2rem);padding:2rem;border:1px solid var(--line);border-radius:1.5rem;color:var(--ink);background:var(--white);box-shadow:0 25px 90px #172a3840;overflow:auto;overscroll-behavior:contain}.service-view::backdrop{background:#172a38b8}.service-view-top{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.service-view-top .eyebrow{margin:0;padding-top:.6rem}.close-service{border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--ink);font-size:.9375rem;font-weight:600;min-height:44px;padding:.5rem 1rem;cursor:pointer}.service-view h2{font-size:clamp(1.75rem,4vw,2.25rem);line-height:1.2;margin-bottom:1rem}.service-view>p{color:var(--slate);font-size:1.0625rem}.service-view ul{list-style:none;padding:0;margin:1.5rem 0}.service-view li{padding:.85rem 0;border-bottom:1px solid var(--line);font-size:1rem;line-height:1.5}.service-view .service-view-note{font-size:.875rem;line-height:1.65;margin-bottom:0}.close-service:focus-visible{outline:3px solid var(--teal);outline-offset:3px}
.service-details{margin-top:1.5rem;padding:.6rem 1rem;min-height:44px;border:1px solid var(--ink);border-radius:999px;background:var(--white);color:var(--ink);font-size:.9375rem;font-weight:700;cursor:pointer}.service-details:hover{background:var(--paper)}.service-details:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
@media(max-width:680px){.service-view{padding:1.4rem}.service-view-top{margin-bottom:1.2rem}}
