:root{--paper:#fff;--soft:#f7f7f5;--ink:#191919;--muted:#676767;--line:#e2e2de;--red:#c6192d;--shell:1580px;--pad:clamp(24px,6vw,110px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}.shell{width:min(var(--shell),calc(100% - 2 * var(--pad)));margin-inline:auto}.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;padding:10px 14px;background:var(--ink);color:#fff}.skip-link:focus{top:16px}
.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-bottom:1px solid #eee}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between}.brand img{width:150px}.site-nav{display:flex;gap:42px;align-items:center;font-size:15px}.site-nav a{position:relative;padding:32px 0 28px}.site-nav a::after{content:"";position:absolute;left:0;bottom:19px;width:0;height:2px;background:var(--red);transition:width .2s}.site-nav a:hover::after,.site-nav a:focus-visible::after{width:100%}.menu-toggle{display:none;background:none;border:0;padding:10px}.menu-toggle span{display:block;width:28px;height:2px;background:var(--ink);margin:6px 0}
.hero{padding:65px 0 95px}.hero-grid{min-height:610px;display:grid;grid-template-columns:1.02fr .98fr;gap:40px;align-items:center}.hero-copy{position:relative;z-index:2}.hero h1{margin:0;font-size:clamp(46px,4.25vw,78px);line-height:1.08;letter-spacing:-.035em;font-weight:800}.red-rule{display:block;width:72px;height:4px;border-radius:3px;background:var(--red);margin:24px 0 20px}.red-rule--hero{margin-top:34px}.hero-copy p{max-width:700px;margin:0;color:var(--muted);font-size:clamp(20px,1.6vw,28px);line-height:1.46}.hero-art img{width:100%;max-width:820px;margin-left:auto}
.section-soft{background:var(--soft)}.about{padding:105px 0}.about-grid{display:grid;grid-template-columns:300px 1fr;gap:80px}.section-label span,.section-kicker{color:var(--red);font-weight:700;font-size:14px;letter-spacing:.08em}.section-label i{display:block;width:72px;height:4px;background:var(--red);border-radius:2px;margin-top:22px}.about-copy .lead{margin:0 0 38px;font-size:clamp(28px,2.4vw,39px);line-height:1.38;font-weight:600}.about-copy p:last-child{max-width:980px;margin:0;color:var(--muted);font-size:24px;line-height:1.55}
.activities{padding:105px 0 125px}.activities-grid{margin-top:70px;display:grid;grid-template-columns:1fr 1fr;gap:70px 90px}.activity-num,.project-num{color:var(--red);font-size:15px;margin-bottom:10px}.activity h2,.project h2,.project h3{margin:0}.activity h2{font-size:30px;letter-spacing:-.02em}.activity p{min-height:68px;max-width:680px;margin:0;color:var(--muted);font-size:20px;line-height:1.5}.activity-picture{display:block;margin-top:18px}.activity img{width:100%;height:390px;object-fit:contain;object-position:center;margin:0}
.projects{padding:105px 0 125px}.projects-top{margin-top:70px;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(330px,1fr);gap:34px;align-items:stretch}.project{display:flex;flex-direction:column;min-width:0}.project--hero{height:100%}.projects-side{display:grid;grid-template-rows:repeat(2,minmax(0,1fr));gap:34px;height:100%}.projects-side .project{height:100%}.project img{width:100%;object-fit:cover;background:#eee}.project--hero img{height:670px}.projects-side .project img{height:285px}.project-copy{padding-top:18px;display:flex;flex-direction:column;align-items:flex-start}.project h2{font-size:19px;line-height:1.35;letter-spacing:.005em;font-weight:700}.project h3{margin-top:5px;font-size:17px;line-height:1.35;font-weight:650}.project p{margin:8px 0 0;color:var(--muted);font-size:17px;line-height:1.5}.project-meta{margin-top:3px!important}.projects-bottom{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:74px;align-items:stretch}.projects-bottom .project{height:100%}.projects-bottom .project img{height:450px}
.gallery-block{margin-top:120px}.section-kicker--quiet{color:var(--muted)}.gallery-grid{margin-top:34px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-item{margin:0;background:#f0f0ed;overflow:hidden;aspect-ratio:4/3;display:grid;place-items:center}.gallery-item img{width:100%;height:100%;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}
.contact{padding:115px 0 38px;background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.contact h2{margin:0;font-size:clamp(50px,4vw,70px);line-height:1.02;letter-spacing:-.035em}.contact-info{padding-top:56px;display:flex;flex-direction:column;align-items:flex-start}.contact-link{font-size:clamp(27px,2.2vw,39px);font-weight:600;margin-bottom:12px}.contact-link:hover,.contact-link:focus-visible{color:var(--red)}.contact-info p{margin:48px 0 0;color:var(--muted);font-size:20px;line-height:1.6}.footer-line{margin-top:105px;padding-top:28px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:14px}

@media(max-width:1100px){:root{--pad:56px}.hero{padding-top:50px}.hero-grid{min-height:500px;grid-template-columns:1.25fr .75fr}.hero h1{font-size:52px}.hero-art img{max-width:500px}.about-grid{grid-template-columns:250px 1fr;gap:55px}.about-copy .lead{font-size:30px}.activity img{height:310px}.project--hero img{height:500px}.projects-side .project img{height:220px}.projects-bottom .project img{height:330px} .gallery-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){:root{--pad:24px}.header-inner{height:74px}.brand img{width:132px}.menu-toggle{display:block}.site-nav{position:absolute;top:74px;left:0;right:0;background:#fff;border-bottom:1px solid #eee;padding:14px var(--pad) 22px;display:none;flex-direction:column;gap:0;align-items:stretch}.site-nav.is-open{display:flex}.site-nav a{padding:14px 0}.site-nav a::after{bottom:8px}.hero{padding:42px 0 62px}.hero-grid{display:flex;flex-direction:column;min-height:auto;gap:22px}.hero h1{font-size:clamp(39px,11.2vw,54px);line-height:1.08}.hero-copy p{font-size:20px;line-height:1.52}.hero-art img{width:100%;max-width:none;margin:0}.about{padding:68px 0}.about-grid{display:block}.section-label{margin-bottom:44px}.about-copy .lead{font-size:25px;line-height:1.45}.about-copy p:last-child{font-size:20px}.activities{padding:70px 0 85px}.activities-grid{display:block;margin-top:54px}.activity{padding:0 0 52px;margin-bottom:50px;border-bottom:1px solid var(--line)}.activity:last-child{margin-bottom:0}.activity h2{font-size:28px}.activity p{min-height:0;font-size:19px}.activity-picture{margin-top:16px}.activity img{height:auto;max-height:300px;margin:0}.projects{padding:70px 0 85px}.projects-top,.projects-bottom{display:block;margin-top:54px}.projects-side{display:block}.project{margin-bottom:52px}.project--hero img,.projects-side .project img,.projects-bottom .project img{height:auto;aspect-ratio:16/10}.project h2{font-size:20px}.project h3{font-size:17px}.project p{font-size:18px}.projects-bottom{margin-top:0}.gallery-block{margin-top:85px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:8px}.gallery-item{aspect-ratio:4/3}.contact{padding-top:78px}.contact-grid{display:block}.contact h2{font-size:48px;margin-top:38px}.contact-info{padding-top:70px}.contact-link{font-size:29px}.contact-info p{font-size:18px;margin-top:38px}.footer-line{margin-top:75px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media (prefers-color-scheme: dark){
  :root{
    --paper:#151618;
    --soft:#1b1c1f;
    --ink:#eeeeec;
    --muted:#adafb1;
    --line:#303236;
    --red:#c6192d;
  }
  html{color-scheme:dark}
  body{background:var(--paper);color:var(--ink)}
  .site-header{background:rgba(21,22,24,.94);border-bottom-color:#2d2f33}
  .site-nav{background:transparent}
  .gallery-item,.project img{background:#202225}
  .hero-art img,.activity img{background:transparent}
  .contact{background:var(--paper)}
  .menu-toggle span{background:var(--ink)}
  .skip-link{background:#ececeb;color:#171717}
}
@media (prefers-color-scheme: dark) and (max-width:760px){
  .site-nav{background:#18191b;border-bottom-color:#303236}
}

/* V03 refinements: stronger brand presence, activities dropdown, project-column rhythm */
.brand img{width:176px}
.nav-dropdown{position:relative;display:flex;align-items:stretch}
.nav-dropdown-toggle{position:relative;border:0;background:none;color:inherit;cursor:pointer;padding:32px 0 28px;font:inherit}
.nav-dropdown-toggle::after{content:"";position:absolute;left:0;bottom:19px;width:0;height:2px;background:var(--red);transition:width .2s}
.nav-dropdown:hover .nav-dropdown-toggle::after,.nav-dropdown:focus-within .nav-dropdown-toggle::after,.nav-dropdown.is-open .nav-dropdown-toggle::after{width:100%}
.nav-chevron{display:inline-block;width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:9px;transition:transform .2s}
.nav-dropdown:hover .nav-chevron,.nav-dropdown:focus-within .nav-chevron,.nav-dropdown.is-open .nav-chevron{transform:rotate(225deg) translate(-1px,-1px)}
.nav-dropdown-menu{position:absolute;top:69px;left:50%;z-index:60;min-width:238px;padding:8px 0;background:rgba(255,255,255,.985);border:1px solid var(--line);box-shadow:0 18px 42px rgba(0,0,0,.09);opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,8px);transition:opacity .16s,transform .16s,visibility .16s}
.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu,.nav-dropdown.is-open .nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.site-nav .nav-dropdown-menu a{display:block;padding:12px 18px;white-space:nowrap;font-size:14px;color:var(--muted)}
.site-nav .nav-dropdown-menu a::after{display:none}
.site-nav .nav-dropdown-menu a:hover,.site-nav .nav-dropdown-menu a:focus-visible{color:var(--ink);background:var(--soft)}
.activity{scroll-margin-top:112px}

@media(min-width:1101px){
  .project--hero{display:grid;grid-template-rows:minmax(670px,1fr) auto;height:100%}
  .project--hero img{height:100%;min-height:670px}
}

@media(max-width:760px){
  .brand img{width:150px}
  .nav-dropdown{display:block}
  .nav-dropdown-toggle{width:100%;text-align:left;padding:14px 0}
  .nav-dropdown-toggle::after{bottom:8px}
  .nav-dropdown-menu{position:static;min-width:0;margin:0;padding:0 0 6px 16px;border:0;box-shadow:none;background:transparent;opacity:1;visibility:visible;pointer-events:auto;transform:none;display:none}
  .nav-dropdown.is-open .nav-dropdown-menu{display:block;transform:none}
  .site-nav .nav-dropdown-menu a{padding:9px 0;font-size:14px;color:var(--muted)}
}

@media (prefers-color-scheme: dark){
  .nav-dropdown-menu{background:rgba(27,28,31,.985);border-color:var(--line);box-shadow:0 18px 42px rgba(0,0,0,.24)}
  .site-nav .nav-dropdown-menu a:hover,.site-nav .nav-dropdown-menu a:focus-visible{background:#222427;color:var(--ink)}
}
@media (prefers-color-scheme: dark) and (max-width:760px){
  .nav-dropdown-menu{background:transparent}
}

/* Production photo behavior: no click-to-enlarge and no ordinary drag/touch save affordance. */
.project img,.gallery-item img{user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}
