@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Noto+Sans+KR:wght@400;500;600;700;800&display=swap";:root{font-family:DM Sans,Noto Sans KR,system-ui,sans-serif;color:#172b42;background:#f9fbfe;font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{cursor:pointer}p{line-height:1.8}.container{width:min(1120px,calc(100% - 48px));margin:auto}.header{background:#fff;border-bottom:1px solid #e9eff5;position:sticky;top:0;z-index:10}.header-inner{height:76px;display:flex;align-items:center;justify-content:space-between}.logo{font-size:22px;font-weight:800;letter-spacing:-.8px;color:#142a42}.logo-dot{color:#237cbb}.nav{display:flex;gap:32px;color:#5d7084;font-size:13px;font-weight:700}.nav a:hover{color:#167bb6}.hamburger{display:none;border:0;background:transparent}.hero{background:#12253d;color:#fff}.hero-inner{min-height:530px;display:grid;grid-template-columns:1.5fr .7fr;align-items:center;gap:38px}.hero-kicker,.eyebrow{font-size:11px;letter-spacing:2px;font-weight:800;color:#388bbf}.hero-kicker{color:#a7d4f3;display:flex;gap:12px;align-items:center}.pulse{height:8px;width:8px;border-radius:50%;background:#5cbdc4}.hero h1{white-space:pre-line;font-size:clamp(29px,4.5vw,54px);line-height:1.34;letter-spacing:-2px;max-width:800px;margin:26px 0}.hero p{font-size:15px;color:#b7c7d8;max-width:670px}.hero-actions{display:flex;gap:12px;margin-top:34px}.btn{border-radius:8px;border:0;display:inline-flex;justify-content:center;align-items:center;gap:10px;padding:12px 19px;font-weight:700;font-size:13px}.btn.primary{background:#2d83c0;color:#fff}.btn.light{background:#2b3d54;color:#fff}.btn.dark{background:#142a42;color:#fff}.btn.danger{background:#fff0ef;color:#c13e33}.hero-graphic{display:flex;flex-direction:column;gap:18px;align-items:center;color:#5f83a9}.hero-graphic span{font-size:10px;letter-spacing:2px;color:#90abc7}.section{padding-top:90px;padding-bottom:22px;scroll-margin-top:80px}.section-head{margin-bottom:35px}.section h2,.contact h2{font-size:clamp(25px,3vw,36px);letter-spacing:-1px;margin:11px 0}.intro{display:grid;grid-template-columns:.9fr 1.2fr;gap:40px;align-items:center}.intro>p{font-size:20px;font-weight:600;line-height:1.8}.strengths{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.strengths>div{border:1px solid #e4eaf1;background:#fff;padding:22px 16px;border-radius:12px;min-height:145px;display:flex;flex-direction:column;gap:10px}.strengths svg{color:#257eb8}.strengths b{font-size:12px}.strengths span{font-size:11px;color:#6a7b8a}.timeline{border-top:1px solid #dce5ee}.timeline-item{display:grid;grid-template-columns:210px 1fr;gap:30px;border-bottom:1px solid #dce5ee;padding:27px 5px}.period{font-weight:700;color:#4585ac;font-size:13px}.timeline h3,.content-card h3,.project-card h3{margin:0 0 12px;font-size:20px}.timeline strong,.project-card strong{font-size:13px;color:#347ba8}.timeline p,.content-card p,.project-card p{color:#617386;font-size:13px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.content-card,.project-card{background:#fff;border:1px solid #e2e9f1;border-radius:12px;padding:26px}.content-card .num{font-size:11px;letter-spacing:1.5px;color:#4386b3;font-weight:800;margin-bottom:23px}.subtitle{font-size:12px;font-weight:700;color:#347ba8}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.project-card{padding:0;overflow:hidden}.project-inner{padding:28px}.project-card img{width:100%;max-height:225px;object-fit:cover}.project-card h3{margin-top:12px}.tag-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:24px}.tag-row span{font-size:10px;padding:6px 9px;border-radius:5px;background:#eef5fa;color:#46749a}.contact{margin-top:100px;padding:92px 0;background:#eaf1f8}.contact h2{font-size:35px}.contact p{font-size:14px;color:#6c8092}footer{background:#12253d;color:#91a7bd;padding:28px 0;font-size:11px}footer .container{display:flex;justify-content:space-between}footer a{color:#9ab8d2}.empty{color:#8b9cac;font-size:13px}.loading{padding:80px;text-align:center}.login-page{min-height:100vh;background:#eef3f8;display:grid;place-items:center}.login-card{background:#fff;border:1px solid #dfe6ef;padding:42px;border-radius:18px;width:min(420px,calc(100% - 30px));display:flex;flex-direction:column;gap:17px}.login-card h1{margin-bottom:0}.login-card p{font-size:13px;color:#788a9b;margin:0}.login-card label,.editor label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:700;color:#526579}.login-card input,.editor input:not([type=checkbox]),.editor textarea{width:100%;padding:11px 13px;border-radius:7px;border:1px solid #d7e1eb;background:#fff;outline-color:#4197cb;color:#172b42}.error{color:#ca4d45!important}.login-card>a:last-child{font-size:12px;color:#688299}.admin-app{display:grid;grid-template-columns:245px 1fr;min-height:100vh;background:#f5f8fc}.sidebar{background:#14283f;color:#dce9f7;padding:28px 18px;display:flex;flex-direction:column}.sidebar .logo{color:#fff;margin-bottom:50px;padding-left:12px}.side-caption{font-size:10px;letter-spacing:1.5px;color:#769ab9;padding:12px;margin-bottom:9px}.side-link,.side-bottom button,.side-bottom a{border:0;background:none;color:#a9bfd2;padding:13px 12px;border-radius:7px;text-align:left;font-size:13px;display:flex;justify-content:space-between;align-items:center;width:100%}.side-link.active{background:#254968;color:#fff}.side-bottom{margin-top:auto;display:flex;flex-direction:column;gap:4px}.side-bottom a,.side-bottom button{justify-content:flex-start;gap:10px}.admin-main{padding:45px max(30px,4vw);min-width:0}.admin-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:30px}.admin-top h1{font-size:30px;margin:10px 0}.editor-layout{display:grid;grid-template-columns:minmax(210px,340px) minmax(350px,1fr);gap:22px;align-items:start}.admin-list,.editor{background:#fff;border:1px solid #e2e9f0;border-radius:12px;padding:24px}.admin-list h3,.editor h3{margin:0 0 22px;font-size:17px}.admin-list small{color:#89a0b2;font-size:11px}.list-entry{border:1px solid #e6edf3;background:#fff;border-radius:8px;width:100%;padding:15px;margin-bottom:8px;display:flex;justify-content:space-between;text-align:left;align-items:center;gap:8px;color:#637d96}.list-entry.selected{border-color:#398dc6;background:#f2f9fe}.list-entry b{display:block;font-size:13px;color:#233d55;margin-bottom:5px}.list-entry small{display:block;font-size:11px}.editor form{display:flex;flex-direction:column;gap:20px}.editor textarea{resize:vertical;line-height:1.7}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.editor label.check{display:flex;flex-direction:row;gap:9px;align-items:center}.check input{accent-color:#237eb9}.form-actions{display:flex;gap:8px}.notice{display:flex;align-items:center;gap:8px;font-size:12px;color:#2b8257;min-height:20px;margin:0}@media(max-width:800px){.hero-inner{grid-template-columns:1fr;min-height:450px;padding:65px 0}.hero-graphic{display:none}.intro{grid-template-columns:1fr}.strengths{grid-template-columns:repeat(3,1fr)}.cards{grid-template-columns:1fr 1fr}.admin-app{grid-template-columns:1fr}.sidebar{padding:15px;display:block}.sidebar .logo{display:block;margin-bottom:13px}.side-caption{display:none}.side-link{display:inline-flex;width:auto;margin:3px}.side-link span,.side-bottom{display:none}.editor-layout{grid-template-columns:1fr}.admin-main{padding:25px 16px}}@media(max-width:560px){.container{width:calc(100% - 32px)}.header-inner{height:62px}.hamburger{display:block}.nav{display:none;position:absolute;top:62px;left:0;right:0;background:#fff;padding:20px;flex-direction:column;gap:15px;border-bottom:1px solid #e4eaf0}.nav.opened{display:flex}.hero h1{letter-spacing:-1px}.strengths,.cards,.project-grid{grid-template-columns:1fr}.timeline-item{grid-template-columns:1fr;gap:10px}.section{padding-top:65px}.admin-top{align-items:flex-start;gap:15px}.admin-top h1{font-size:23px}.field-grid{grid-template-columns:1fr}.admin-list,.editor{padding:17px}}.api-error{padding:12px 24px;text-align:center;background:#fff0ef;color:#9b372f;font-size:13px}.upload-panel{background:#f6f9fd;border:1px solid #dce7f0;border-radius:11px;padding:18px;display:flex;flex-direction:column;gap:10px}.upload-panel h4{display:flex;align-items:center;gap:8px;margin:0;font-size:14px}.upload-panel p{font-size:12px;color:#697c90;margin:0}.upload-button{display:inline-flex!important;align-items:center;gap:8px;border-radius:7px;background:#e3eff8;border:1px dashed #93b8d2;padding:10px 14px;width:max-content;cursor:pointer;color:#17648e!important}.upload-button input{display:none}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:10px}.media-tile{background:#fff;padding:7px;border:1px solid #e0e8ee;border-radius:8px;min-width:0}.media-tile img{width:100%;height:88px;object-fit:cover;border-radius:5px}.media-tile small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-tile button,.file-entry button{background:none;color:#b33434;border:0;padding:4px;font-size:12px}.file-entry{display:flex;justify-content:space-between;gap:8px;border-bottom:1px solid #d6e0ea;padding:6px;font-size:12px}.gallery-strip{display:flex;gap:7px;overflow-x:auto;margin-top:13px}.gallery-strip img{height:62px;width:90px;object-fit:cover;border-radius:6px;border:1px solid #dde7ef}.gallery-strip img:hover{opacity:.8}.project-cover{display:block;min-height:0}.project-cover:empty{display:none}.project-cover img{display:block;width:100%;height:225px;object-fit:cover;transition:transform .2s}.project-cover:hover img{filter:brightness(.95)}.project-card h3 a:hover{color:#2d83c0}.project-more{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-weight:800;font-size:12px;color:#267db7}.project-more:hover{text-decoration:underline}.detail-page{padding-top:65px;padding-bottom:90px;min-height:70vh}.detail-back{display:inline-flex;gap:5px;align-items:center;color:#607d98;font-size:13px;font-weight:700;margin-bottom:45px}.detail-page h1{font-size:clamp(31px,5vw,52px);letter-spacing:-1.7px;line-height:1.3;margin:20px 0 14px}.detail-subtitle{color:#3a779d;font-weight:700}.detail-meta{display:flex;gap:8px;flex-wrap:wrap;margin:22px 0 35px}.detail-meta span{border-radius:5px;background:#eaf3fa;padding:7px 12px;color:#4c7896;font-size:12px}.detail-cover{border:0;background:transparent;padding:0;display:block;width:100%;cursor:zoom-in;border-radius:15px;overflow:hidden}.detail-cover img{display:block;max-height:560px;width:100%;object-fit:cover}.detail-content{display:grid;grid-template-columns:1fr 1.3fr;gap:70px;margin-top:70px}.detail-lead h2,.detail-sections h2{font-size:24px;letter-spacing:-.6px}.detail-lead p,.detail-sections p{white-space:pre-line;color:#526c80;line-height:1.95;font-size:15px}.detail-sections section{border-top:1px solid #e3ebf2;padding:25px 0}.detail-sections section:first-child{padding-top:0;border-top:0}.detail-hint{color:#8b9cad}.detail-gallery{margin-top:60px;border-top:1px solid #e4ebf2;padding-top:50px}.detail-gallery h2 small{font-size:14px;color:#7590a5}.detail-gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.detail-gallery-grid button{position:relative;border:0;padding:0;border-radius:10px;overflow:hidden;cursor:zoom-in;background:#eaf1f6;aspect-ratio:4/3}.detail-gallery-grid img{height:100%;width:100%;object-fit:cover}.detail-gallery-grid button span{position:absolute;left:0;right:0;bottom:0;padding:20px 10px 10px;background:linear-gradient(transparent,#10243e9c);color:#fff;font-size:12px;opacity:0;transition:opacity .15s}.detail-gallery-grid button:hover span,.detail-gallery-grid button:focus-visible span{opacity:1}.detail-footer{margin-top:50px}.detail-empty{padding:60px 0}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#07121df5;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:50px 12px 25px}.lightbox-close{position:absolute;right:20px;top:18px;background:#22354e;color:#fff;border:0;border-radius:50%;width:42px;height:42px;display:grid;place-items:center}.lightbox-stage{width:100%;display:flex;align-items:center;justify-content:space-between;gap:10px;max-height:85vh}.lightbox-stage img{max-height:77vh;max-width:calc(100% - 110px);width:auto;height:auto;object-fit:contain;border-radius:5px}.lightbox-stage button{flex-shrink:0;width:44px;height:44px;border:1px solid #56697e;background:#243951;color:#fff;border-radius:50%;display:grid;place-items:center}.lightbox-caption{font-size:12px;color:#bbcbd8;text-align:center;word-break:break-word}.structured-fields{display:flex;flex-direction:column;gap:15px;border-top:1px solid #e3ecf5;border-bottom:1px solid #e3ecf5;padding:20px 0}.structured-fields h4{margin:0;font-size:16px}.structured-fields>p{margin:0;color:#667e91;font-size:12px}.media-tile-preview{position:relative}.cover-badge{position:absolute;left:5px;top:5px;display:flex;align-items:center;gap:3px;color:#fff;background:#176caa;padding:4px 5px;border-radius:4px;font-size:10px}.media-actions{display:flex;flex-wrap:wrap;gap:3px;margin-top:6px}.media-actions button{display:inline-flex;align-items:center;gap:2px;padding:4px 5px;font-size:10px;color:#426884;border:1px solid #dae6ee;border-radius:4px;background:#f8fbff}.media-actions button:disabled{opacity:.35;cursor:default}.media-actions .media-delete{color:#bb4545}.media-tile{min-width:120px}.media-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))}@media(max-width:700px){.detail-content{grid-template-columns:1fr;gap:25px}.detail-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.detail-cover img{max-height:340px}.detail-page{padding-top:34px}.lightbox-stage img{max-width:calc(100% - 90px)}.lightbox-stage button{width:34px;height:34px}}@media(max-width:450px){.detail-gallery-grid{grid-template-columns:1fr}.lightbox-stage{gap:2px}.lightbox-stage img{max-width:calc(100% - 74px)}}.detail-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:32px}.detail-nav .detail-back{margin:0;white-space:nowrap}.detail-nav .eyebrow{display:block;margin:0;text-align:right}.detail-page h1{margin-top:0;overflow-wrap:anywhere}.detail-cover{max-height:440px;aspect-ratio:16/7;display:flex;align-items:center;justify-content:center;background:#e8f0f7}.detail-cover img{width:100%;height:100%;max-height:none;object-fit:cover;object-position:center}.detail-content{margin-top:48px}.media-tile{transition:opacity .15s,box-shadow .15s,transform .15s;cursor:grab}.media-tile.dragging{opacity:.45;transform:scale(.98);box-shadow:0 0 0 2px #3e99d5}.media-tile:active{cursor:grabbing}.drag-indicator{display:flex;align-items:center;gap:3px;color:#577994;font-size:10px;margin-bottom:5px;-webkit-user-select:none;user-select:none}.media-tile button{cursor:pointer}@media(max-width:700px){.detail-nav{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:24px}.detail-nav .eyebrow{text-align:left}.detail-cover{max-height:320px;aspect-ratio:4/3}.detail-content{margin-top:34px}.detail-page h1{font-size:clamp(28px,8vw,42px)}.detail-gallery-grid{gap:9px}}@media(max-width:450px){.detail-cover{max-height:245px;aspect-ratio:5/4}.detail-nav .detail-back{white-space:normal}}.dashboard{display:flex;flex-direction:column;gap:22px}.dashboard-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.dashboard-intro h2{font-size:24px;margin:9px 0}.dashboard-intro p{font-size:13px;color:#698098;margin:0}.dashboard .refresh{background:#e4edf6;color:#234766}.dashboard-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.stat-card{background:#fff;border:1px solid #e0e8f1;border-radius:12px;padding:22px;display:flex;flex-direction:column;gap:13px}.stat-card span{color:#627a90;font-size:12px;font-weight:700}.stat-card strong{font-size:30px;color:#182f48;line-height:1}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:18px}.dashboard-panel{min-width:0;background:#fff;border:1px solid #e0e8f1;padding:24px;border-radius:12px}.dashboard-panel h3{display:flex;gap:9px;align-items:center;margin:0 0 8px;font-size:17px;color:#173149}.dashboard-panel>p{font-size:12px;color:#73889a;margin:0 0 20px}.review-row{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid #e6edf4;padding:16px 0 10px;font-size:12px;color:#536d82;font-weight:700}.review-row b{color:#146eac}.dashboard-entry{display:flex;justify-content:space-between;align-items:center;gap:14px;width:100%;background:#f7faff;border:1px solid #e7eef5;border-radius:8px;text-align:left;padding:12px;margin:6px 0;color:#1b3955;font-weight:700;font-size:12px}.dashboard-entry small{display:block;margin-top:4px;font-weight:400;color:#7790a3}.dashboard-entry:hover,.dashboard-shortcuts button:hover{border-color:#85b3d4;background:#eef7fe}.dashboard-good{font-size:12px;color:#27724b;display:flex;align-items:center;gap:7px;padding:12px 0}.dashboard-hint{font-size:11px;line-height:1.6;color:#8a6b4b}.dashboard-shortcuts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dashboard-shortcuts button{display:flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #e2eaf2;border-radius:8px;background:#f8fbff;padding:13px;text-align:left;font-size:12px;font-weight:700;color:#2a4a64}.dashboard-shortcuts button b{margin-left:auto;color:#2d83c0}.dashboard-subhead{margin-top:27px!important}.dashboard-side-label{display:inline-flex;align-items:center;gap:9px}@media(max-width:1100px){.dashboard-columns{grid-template-columns:1fr}}@media(max-width:700px){.dashboard-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-intro{align-items:flex-start;flex-direction:column}.stat-card{padding:17px}.stat-card strong{font-size:26px}}@media(max-width:390px){.dashboard-shortcuts{grid-template-columns:1fr}}.logo{font-size:clamp(15px,1.65vw,21px);white-space:nowrap}.identity-title{display:flex;flex-direction:column;gap:10px}.identity-title span{font-size:clamp(20px,2.7vw,34px);font-weight:650;letter-spacing:-.03em;color:#dce9f8}.hero .identity-slogan{font-size:clamp(17px,2vw,22px);font-weight:700;color:#f5f9ff;margin:20px 0 8px}.site-settings-card{background:#fff;border:1px solid #dae5ef;border-radius:14px;padding:28px;max-width:880px}.site-settings-card h2{margin:0 0 8px}.site-settings-card>p{color:#637e93;font-size:13px}.site-settings-card form{display:flex;flex-direction:column;gap:17px;margin-top:23px}.site-settings-card label{display:flex;flex-direction:column;gap:8px;color:#425c75;font-weight:700;font-size:13px}.site-settings-card input{border:1px solid #d3e0ec;border-radius:8px;padding:13px 14px;width:100%;color:#18314c}.site-settings-preview{background:#142941;color:#fff;border-radius:12px;padding:25px;display:flex;flex-direction:column;gap:9px}.site-settings-preview>span{color:#8bbceb;font-size:11px;letter-spacing:.12em}.site-settings-preview strong{font-size:30px}.site-settings-preview b{font-size:18px}.site-settings-preview p{margin:0;color:#d7e3f0}.site-settings-preview small{color:#a7bed0}@media(max-width:700px){.site-settings-card{padding:18px}.hero .identity-title span{font-size:20px}}.public-shell{font-family:Noto Sans KR,DM Sans,system-ui,sans-serif;color:#1d2b37;background:#f8f9f7;min-height:100vh;-webkit-user-select:none;user-select:none}.public-shell img,.public-shell a{-webkit-user-drag:none}.public-shell .container{width:min(1160px,calc(100% - 64px))}.public-shell .header{background:#fafbf9;border-bottom:1px solid #e3e6e4;position:sticky;top:0}.public-shell .header-inner{height:82px}.public-shell .logo{font-size:17px;letter-spacing:-.06em;font-weight:800;color:#1a2c3c}.public-shell .logo-dot{color:#8a9aa3}.public-shell .nav{gap:30px;color:#50606c;font-weight:600;font-size:12px;letter-spacing:.02em}.public-shell .nav a{padding:10px 0;border-bottom:1px solid transparent;transition:color .2s,border-color .2s}.public-shell .nav a:hover{color:#112b3d;border-color:#112b3d}.public-shell .hero{background:#192e42;color:#fff;border-bottom:1px solid #213a4e}.public-shell .hero-inner{min-height:560px;grid-template-columns:minmax(0,1.45fr) minmax(230px,.6fr);gap:90px;padding:90px 0}.public-shell .hero-kicker{font-size:11px;letter-spacing:.19em;color:#b3c5d1;font-weight:600}.public-shell .pulse{width:6px;height:6px;background:#b2cfb8}.public-shell .identity-title{font-size:clamp(43px,5vw,67px);letter-spacing:-.07em;font-weight:750;gap:16px;margin:24px 0 16px}.public-shell .identity-title span{font-size:clamp(20px,2.5vw,31px);font-weight:500;letter-spacing:-.05em;color:#e1e8eb}.public-shell .hero .identity-slogan{font-size:clamp(16px,1.7vw,21px);font-weight:500;margin:28px 0 9px;color:#f3f5f4}.public-shell .hero p{max-width:570px;font-size:14px;line-height:2;color:#c3cdd4}.public-shell .hero-actions{margin-top:34px;flex-wrap:wrap}.public-shell .btn{border-radius:3px;font-weight:600;padding:13px 20px;transition:background .2s,transform .2s}.public-shell .btn:hover{transform:translateY(-1px)}.public-shell .btn.primary{background:#e3e7e6;color:#172e41}.public-shell .btn.primary:hover{background:#fff}.public-shell .btn.light{background:transparent;color:#e2e9ec;border:1px solid #5b6c7a}.public-shell .btn.light:hover{background:#30495d}.public-shell .hero-graphic{align-items:flex-start;border-left:1px solid #576879;padding-left:28px;gap:22px;color:#d0d9dd;min-height:260px;justify-content:center}.public-shell .hero-index{font-size:11px;letter-spacing:.19em;color:#9aafb9}.public-shell .hero-statement{font-size:clamp(24px,2.2vw,34px);line-height:1.5;font-weight:550;letter-spacing:-.055em}.public-shell .hero-rule{height:1px;width:100%;background:#627281}.public-shell .hero-graphic span{font-size:10px;line-height:1.7;letter-spacing:.08em;color:#aabac5}.public-shell .section{padding-top:104px;padding-bottom:35px;scroll-margin-top:100px}.public-shell .section-head{margin-bottom:38px;border-bottom:1px solid #d5dbda;padding-bottom:20px}.public-shell .eyebrow{font-size:10px;font-weight:700;color:#607f8e;letter-spacing:.18em}.public-shell .section h2,.public-shell .contact h2{font-size:clamp(28px,3vw,39px);font-weight:700;letter-spacing:-.06em;line-height:1.35}.public-shell .intro{gap:75px}.public-shell .intro>p{font-size:19px;font-weight:500;letter-spacing:-.03em;line-height:1.95;color:#263947}.public-shell .strengths{gap:0;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid #d4dbda}.public-shell .strengths>div{background:transparent;border:0;border-right:1px solid #d4dbda;border-radius:0;padding:19px;min-height:134px}.public-shell .strengths svg{width:20px;height:20px;color:#486579}.public-shell .strengths b{font-size:12px;line-height:1.6}.public-shell .strengths span{font-size:11px}.public-shell .timeline{border-top:0}.public-shell .timeline-item{grid-template-columns:240px 1fr;gap:42px;padding:31px 0;border-bottom:1px solid #dce1df}.public-shell .period{color:#677985;font-weight:600}.public-shell .timeline h3{font-size:22px;letter-spacing:-.04em}.public-shell .timeline strong,.public-shell .project-card strong{color:#516f81;font-weight:600}.public-shell .timeline p,.public-shell .content-card p,.public-shell .project-card p{font-size:13px;line-height:1.95;color:#586b76}.public-shell .cards{gap:0;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid #dce1df;border-left:1px solid #dce1df}.public-shell .content-card{background:transparent;border:0;border-right:1px solid #dce1df;border-bottom:1px solid #dce1df;border-radius:0;padding:28px 27px;min-height:238px}.public-shell .content-card .num{font-size:10px;color:#7c919c;font-weight:600}.public-shell .content-card h3{font-size:19px;line-height:1.5;letter-spacing:-.03em}.public-shell .project-grid{gap:25px}.public-shell .project-card{background:#fff;border:1px solid #dce2e0;border-radius:3px;transition:border-color .2s,transform .2s}.public-shell .project-card:hover{border-color:#9badae;transform:translateY(-2px)}.public-shell .project-cover{background:#e5e8e6;aspect-ratio:16/9}.public-shell .project-cover img{width:100%;height:100%;max-height:none;object-fit:cover;display:block}.public-shell .project-inner{padding:28px 29px 30px}.public-shell .project-card h3{font-size:21px;letter-spacing:-.04em;line-height:1.5}.public-shell .tag-row span{background:#f0f3f2;color:#4e646c;border-radius:2px;font-size:10px;padding:6px 9px}.public-shell .project-more{color:#28536a}.public-shell .contact{margin-top:115px;padding:90px 0 100px;background:#e9eeeb}.public-shell .contact-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:100px;align-items:start}.public-shell .contact-intro h2{font-size:clamp(32px,3.2vw,44px);margin:18px 0 25px;letter-spacing:-.07em}.public-shell .contact-intro p{max-width:380px;color:#4e606a;font-size:14px;line-height:1.9}.public-shell .contact-details{border-top:1px solid #aebdb9}.public-shell .contact-row{padding:23px 2px;display:grid;grid-template-columns:126px minmax(0,1fr) 20px;align-items:center;gap:18px;border-bottom:1px solid #bbc8c4;color:#233846;transition:color .2s}.public-shell a.contact-row:hover{color:#217096}.public-shell .contact-row span{display:flex;align-items:center;gap:9px;font-size:12px;color:#627781}.public-shell .contact-row strong{font-size:13px;font-weight:600;overflow-wrap:anywhere;letter-spacing:-.015em}.public-shell .contact-hint{font-size:12px;color:#627781;padding:20px 0;line-height:1.8}.public-shell footer{background:#192e42;color:#adbdc6;padding:30px 0}.public-shell .detail-page{padding-top:65px;padding-bottom:90px}.public-shell .detail-page h1{font-size:clamp(32px,4vw,55px);letter-spacing:-.06em;line-height:1.35}.public-shell .detail-cover{border-radius:3px;background:#e2e8e6}.public-shell .detail-gallery img{border-radius:3px}.public-shell .detail-nav{border-bottom:1px solid #d9dfdc;padding-bottom:23px}.public-shell .gallery-strip img{border-radius:2px}.settings-subsection{display:flex;flex-direction:column;gap:17px;margin-top:10px;padding-top:26px;border-top:1px solid #dce5eb}.settings-section-heading h3{font-size:18px;margin:0 0 6px;color:#20374a}.settings-section-heading p{font-size:12px;margin:0;color:#61788d}.settings-subsection textarea{width:100%;border:1px solid #d3e0ec;border-radius:8px;padding:13px 14px;resize:vertical;line-height:1.7;color:#18314c}@media(max-width:850px){.public-shell .hero-inner{gap:30px;grid-template-columns:1fr}.public-shell .hero-graphic{display:none}.public-shell .intro{grid-template-columns:1fr;gap:24px}.public-shell .contact-layout{grid-template-columns:1fr;gap:35px}.public-shell .cards{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.public-shell .container{width:calc(100% - 36px)}.public-shell .header-inner{height:66px}.public-shell .nav{top:66px}.public-shell .hero-inner{padding:68px 0;min-height:0}.public-shell .identity-title{font-size:42px}.public-shell .hero-actions{gap:8px}.public-shell .section{padding-top:70px}.public-shell .strengths{grid-template-columns:1fr;border-left:0;border-top:1px solid #d4dbda}.public-shell .strengths>div{border-right:0;border-bottom:1px solid #d4dbda;min-height:0}.public-shell .timeline-item{grid-template-columns:1fr;gap:8px}.public-shell .cards,.public-shell .project-grid{grid-template-columns:1fr}.public-shell .contact{margin-top:80px;padding:62px 0}.public-shell .contact-row{grid-template-columns:100px minmax(0,1fr) 16px;gap:8px}.public-shell .contact-row strong{font-size:12px}.public-shell .detail-page{padding-top:35px}}@media(prefers-reduced-motion:reduce){.public-shell .btn,.public-shell .project-card{transition:none}.public-shell .btn:hover,.public-shell .project-card:hover{transform:none}}.public-shell{overflow-x:clip}.public-shell .container{max-width:1160px}.public-shell .hero h1,.public-shell h2,.public-shell .logo{overflow-wrap:break-word}.public-shell .project-card,.public-shell .content-card,.public-shell .contact-row{min-width:0}.public-shell .contact-row strong{overflow-wrap:anywhere;word-break:normal}.public-shell .detail-gallery-grid button{touch-action:manipulation}.public-shell .lightbox-stage{touch-action:pan-y}.public-shell a:focus-visible,.public-shell button:focus-visible{outline:3px solid #4788b8;outline-offset:3px}@media(max-width:900px){.public-shell .container{width:calc(100% - 48px)}.public-shell .hero-inner{grid-template-columns:1fr;gap:28px;padding:74px 0;min-height:0}.public-shell .hero-graphic{display:none}.public-shell .intro{grid-template-columns:1fr;gap:25px}.public-shell .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.public-shell .project-grid{gap:16px}.public-shell .contact-layout{grid-template-columns:1fr;gap:26px}.public-shell .contact-intro p{max-width:600px}.public-shell .contact{margin-top:75px;padding:68px 0 74px}.public-shell .detail-content{gap:32px}}@media(max-width:600px){.public-shell .container{width:calc(100% - 36px)}.public-shell .header{z-index:30}.public-shell .header-inner{height:64px}.public-shell .logo{font-size:15px;letter-spacing:-.045em;max-width:calc(100% - 65px)}.public-shell .hamburger{display:grid;place-items:center;width:44px;height:44px;min-width:44px;border:1px solid #d7dedc;border-radius:4px;background:transparent;color:#183248}.public-shell .nav{top:64px;left:0;right:0;max-height:calc(100dvh - 64px);overflow-y:auto;gap:0;padding:8px 18px 16px;background:#fafbf9;box-shadow:0 16px 20px #1d35401a}.public-shell .nav.opened{display:flex}.public-shell .nav a{display:flex;align-items:center;min-height:48px;padding:11px 8px;border-bottom:1px solid #e1e7e4;font-size:14px;color:#233b4d}.public-shell .hero-inner{padding:67px 0 70px}.public-shell .hero-kicker{font-size:10px;letter-spacing:.12em}.public-shell .identity-title{font-size:clamp(39px,11vw,52px);letter-spacing:-.065em;line-height:1.23;margin:22px 0}.public-shell .identity-title span{display:block;font-size:clamp(18px,4.7vw,22px);line-height:1.6;margin-top:11px}.public-shell .hero .identity-slogan{font-size:17px;line-height:1.65;margin:20px 0 7px}.public-shell .hero p{font-size:13px;line-height:1.95}.public-shell .hero-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:28px}.public-shell .hero-actions .btn{min-height:46px;padding:11px 10px;text-align:center;font-size:12px}.public-shell .section{padding-top:65px;padding-bottom:12px;scroll-margin-top:78px}.public-shell .section-head{margin-bottom:24px;padding-bottom:16px}.public-shell .section h2{font-size:clamp(25px,7.5vw,32px);line-height:1.4}.public-shell .intro>p{font-size:16px;line-height:1.85}.public-shell .strengths{grid-template-columns:1fr;border-top:1px solid #d4dbda}.public-shell .strengths>div{padding:18px 5px;min-height:0;gap:5px}.public-shell .timeline-item{grid-template-columns:1fr;gap:10px;padding:25px 0}.public-shell .timeline h3{font-size:19px}.public-shell .cards{grid-template-columns:1fr}.public-shell .content-card{min-height:0;padding:24px 20px}.public-shell .project-grid{grid-template-columns:1fr;gap:18px}.public-shell .project-inner{padding:22px 20px 25px}.public-shell .project-card h3{font-size:19px}.public-shell .project-cover{aspect-ratio:16/10}.public-shell .project-cover img{height:100%}.public-shell .gallery-strip{padding-bottom:5px}.public-shell .contact{padding:62px 0 66px;margin-top:72px}.public-shell .contact-intro h2{font-size:clamp(29px,8.5vw,39px);line-height:1.35;margin:16px 0 19px}.public-shell .contact-intro p{font-size:13px;line-height:1.85}.public-shell .contact-row{grid-template-columns:1fr 22px;column-gap:10px;row-gap:7px;min-height:85px;padding:19px 1px;align-content:center}.public-shell .contact-row span{grid-column:1;grid-row:1;font-size:12px}.public-shell .contact-row strong{grid-column:1;grid-row:2;font-size:15px;line-height:1.6}.public-shell .contact-row>svg:last-child{grid-column:2;grid-row:1 / span 2;justify-self:end;align-self:center}.public-shell footer{padding:22px 0}.public-shell footer .container{gap:10px;flex-wrap:wrap;font-size:11px}.public-shell .detail-page{padding-top:26px;padding-bottom:60px}.public-shell .detail-nav{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:25px}.public-shell .detail-nav .eyebrow{text-align:left}.public-shell .detail-page h1{font-size:clamp(29px,8.5vw,40px);line-height:1.35}.public-shell .detail-cover{aspect-ratio:4/3;max-height:380px}.public-shell .detail-cover img{height:100%;object-fit:cover}.public-shell .detail-content{grid-template-columns:1fr;gap:26px;margin-top:34px}.public-shell .detail-lead h2,.public-shell .detail-sections h2{font-size:21px}.public-shell .detail-lead p,.public-shell .detail-sections p{font-size:14px;line-height:1.9}.public-shell .detail-gallery{margin-top:42px;padding-top:30px}.public-shell .detail-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.public-shell .detail-gallery-grid button{aspect-ratio:1/1}.public-shell .detail-gallery-grid button span{opacity:1;font-size:10px;padding:22px 8px 8px}.public-shell .detail-footer{margin-top:35px}.public-shell .lightbox{padding:70px 8px 22px}.public-shell .lightbox-close{top:max(16px,env(safe-area-inset-top));right:15px;width:44px;height:44px}.public-shell .lightbox-stage{gap:6px;justify-content:center;max-height:78dvh}.public-shell .lightbox-stage img{max-width:calc(100% - 92px);max-height:68dvh;border-radius:3px}.public-shell .lightbox-stage button{width:40px;height:44px;border-radius:5px}.public-shell .lightbox-caption{max-width:90%;overflow-wrap:anywhere;line-height:1.5}}@media(max-width:370px){.public-shell .container{width:calc(100% - 28px)}.public-shell .identity-title{font-size:37px}.public-shell .hero-actions,.public-shell .detail-gallery-grid{grid-template-columns:1fr}}
