.page-module__E0kJGG__frame{height:calc(100dvh - var(--frame-gap) * 2);scroll-snap-type:y mandatory;scroll-behavior:smooth;scrollbar-width:none;overflow-y:scroll}.page-module__E0kJGG__frame::-webkit-scrollbar{display:none}.page-module__E0kJGG__hero{height:calc(100dvh - var(--frame-gap) * 2);scroll-snap-align:start;flex-shrink:0;grid-template-rows:auto 1fr auto;padding:clamp(20px,3.5vw,48px) clamp(20px,4vw,56px);display:grid}.page-module__E0kJGG__nav{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.page-module__E0kJGG__navRole{letter-spacing:.18em;text-transform:uppercase;color:var(--blue);font-size:clamp(9px,1.1vw,12px);font-weight:500}.page-module__E0kJGG__hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;width:26px;padding:0;display:flex}.page-module__E0kJGG__bar{background:var(--blue);height:1.5px;display:block}.page-module__E0kJGG__barShort{width:65%}.page-module__E0kJGG__navRight{justify-content:flex-end;display:flex}.page-module__E0kJGG__headlineWrap{align-items:center;padding:clamp(8px,2vw,24px) 0;display:flex}.page-module__E0kJGG__headline{font-family:var(--font-cormorant), serif;letter-spacing:-.02em;white-space:nowrap;color:var(--blue);font-size:clamp(64px,11.5vw,160px);font-style:italic;font-weight:900;line-height:.92}.page-module__E0kJGG__star{vertical-align:.12em;margin:0 .08em;font-size:.65em;font-style:normal;line-height:1;display:inline-block}.page-module__E0kJGG__heroFooter{grid-template-columns:1fr auto 1fr;align-items:end;gap:16px;display:grid}.page-module__E0kJGG__heroFooterLeft{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.page-module__E0kJGG__tagline{max-width:280px;color:var(--blue);font-size:clamp(12px,1.4vw,16px);line-height:1.55}.page-module__E0kJGG__heroFooterCenter{justify-content:center;display:flex}.page-module__E0kJGG__scrollCue{cursor:pointer;flex-direction:column;align-items:center;gap:6px;text-decoration:none;display:flex}.page-module__E0kJGG__scrollLabel{letter-spacing:.2em;text-transform:uppercase;color:var(--blue);font-size:clamp(8px,.9vw,11px);font-weight:500}.page-module__E0kJGG__scrollArrow{color:var(--blue);font-size:16px;line-height:1;animation:1.4s ease-in-out infinite page-module__E0kJGG__bounce}@keyframes page-module__E0kJGG__bounce{0%,to{transform:translateY(0)}50%{transform:translateY(6px)}}.page-module__E0kJGG__projects{height:calc(100dvh - var(--frame-gap) * 2);scroll-snap-align:start;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.page-module__E0kJGG__projectsBody{flex-direction:column;flex:1;gap:clamp(14px,2vw,24px);min-height:0;padding:clamp(16px,2.5vw,36px) clamp(20px,4vw,56px) clamp(16px,2vw,28px);display:flex;overflow:hidden}.page-module__E0kJGG__projectsTitle{font-family:var(--font-cormorant), serif;color:var(--blue);letter-spacing:-.02em;white-space:nowrap;flex-shrink:0;font-size:clamp(36px,6vw,84px);font-style:italic;font-weight:700;line-height:1}.page-module__E0kJGG__grid{flex:1;grid-template-rows:1fr 1fr;grid-template-columns:1fr 1fr;gap:clamp(10px,1.5vw,20px);min-height:0;display:grid}.page-module__E0kJGG__card{cursor:pointer;height:100%;min-height:0;color:var(--blue);flex-direction:column;gap:5px;text-decoration:none;display:flex}.page-module__E0kJGG__imgWrap{border-radius:10px;flex:1;min-height:0;position:relative;overflow:hidden}.page-module__E0kJGG__cardCategory{letter-spacing:.18em;text-transform:uppercase;color:var(--blue);opacity:.55;font-size:clamp(8px,.75vw,10px);font-weight:500}.page-module__E0kJGG__cardTitle{font-family:var(--font-cormorant), serif;color:var(--blue);font-size:clamp(14px,1.8vw,22px);font-weight:600;line-height:1.2}.page-module__E0kJGG__cardInactive{filter:grayscale();opacity:.5;cursor:default}@media (max-width:700px){.page-module__E0kJGG__hero,.page-module__E0kJGG__projects{height:auto;min-height:calc(100dvh - var(--frame-gap) * 2)}.page-module__E0kJGG__headline{white-space:normal;font-size:clamp(48px,13vw,80px);line-height:.9}.page-module__E0kJGG__heroFooter{grid-template-columns:1fr;gap:20px}.page-module__E0kJGG__heroFooterCenter{justify-content:flex-start}.page-module__E0kJGG__grid{grid-template-rows:repeat(4,1fr);grid-template-columns:1fr}}@media (max-width:480px){.page-module__E0kJGG__headline{font-size:clamp(40px,14vw,64px)}.page-module__E0kJGG__navRole{letter-spacing:.12em;font-size:8px}}
