:root{--bg:#f6f2ea;--bg-soft:#ebe3d5;--ink:#2a2118;--muted:#756a5d;--line:rgba(42,33,24,.14);--card:#fffdf8;--accent:#a87955;--accent-soft:#d3b89d;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}.siteShell{min-height:100vh;background:radial-gradient(circle at top center,hsla(0,0%,100%,.72),transparent 430px),var(--bg)}.siteHeader{position:-webkit-sticky;position:sticky;top:0;z-index:50;width:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;grid-gap:24px;gap:24px;padding:21px clamp(20px,4vw,56px);border-bottom:1px solid var(--line);background:hsla(40,40%,94%,.92);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.brand{display:inline-flex;align-items:baseline;gap:10px;font-family:Georgia,Times New Roman,serif;font-weight:800;letter-spacing:-.05em}.brand small{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:9px;letter-spacing:.22em;color:var(--accent);font-weight:700}.navLinks{display:flex;align-items:center;justify-content:center;gap:42px;font-size:12px;font-weight:700}.navLinks a{transition:color .2s ease}.navLinks a:hover{color:var(--accent)}.headerActions{display:flex;justify-content:flex-end;align-items:center;gap:14px}.langButton{border:0;background:transparent;color:var(--accent);font-size:11px;font-weight:800;letter-spacing:.16em;cursor:pointer}.consultButton,.darkButton{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;background:var(--ink);color:#fff7ec;border:1px solid var(--ink);font-size:12px;font-weight:800;letter-spacing:-.01em;transition:transform .2s ease,background .2s ease}.consultButton:hover,.darkButton:hover{transform:translateY(-1px);background:#15100c}.lightButton{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;border:1px solid var(--line);background:hsla(0,0%,100%,.25);font-size:12px;font-weight:800;transition:border-color .2s ease,background .2s ease}.lightButton:hover{border-color:var(--accent);background:hsla(0,0%,100%,.65)}.mobileToggle{display:none}.sectionPad,.sectionPadAlt{padding:clamp(78px,10vw,132px) clamp(20px,4vw,56px)}.sectionPadAlt{background:var(--bg-soft)}.heroSection{text-align:center;max-width:var(--max);margin:0 auto;padding-top:clamp(90px,12vw,160px)}.microLabel{margin:0 0 24px;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.42em;text-transform:uppercase}.contactSection h2,.heroSection h1{max-width:860px;margin:0 auto;font-family:Georgia,Times New Roman,serif;font-size:clamp(45px,7.2vw,88px);line-height:.92;letter-spacing:-.065em;font-weight:700}.contactSection h2 em,.heroSection h1 em{color:var(--accent);font-weight:500}.heroSubtitle{max-width:600px;margin:28px auto 0;color:var(--muted);font-size:15px;line-height:1.8}.heroActions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:42px}.statsGrid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(78px,10vw,130px);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.statCard{padding:27px 18px 28px;border-right:1px solid var(--line)}.statCard:last-child{border-right:0}.statCard strong{display:block;font-family:Georgia,Times New Roman,serif;font-size:clamp(32px,4vw,44px);line-height:1}.statCard span{display:block;margin-top:12px;color:var(--accent);font-size:9px;font-weight:900;letter-spacing:.28em;text-transform:uppercase}.aboutSection{display:grid;grid-template-columns:.85fr 1.15fr;grid-gap:clamp(40px,9vw,120px);gap:clamp(40px,9vw,120px);align-items:center}.aboutSection>*{max-width:560px}.aboutSection .sectionIntro{justify-self:flex-end}.aboutContent{justify-self:start}.centerTitle h2,.portfolioTitleLine h2,.sectionIntro h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(36px,4vw,58px);line-height:.96;letter-spacing:-.055em}.portfolioTitleLine em,.sectionIntro em{display:block;margin-top:12px;color:var(--accent);font-family:Georgia,Times New Roman,serif;font-weight:700}.aboutContent p{margin:0;color:#493d32;line-height:1.85;font-weight:650}.tagList{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.tagList span{border:1px solid var(--line);border-radius:999px;padding:9px 16px;color:var(--muted);font-size:11px;font-weight:750}.servicesSection{max-width:var(--max);margin:0 auto}.centerTitle{text-align:center}.serviceGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;margin-top:58px}.serviceCard{min-height:290px;padding:34px 30px;background:var(--card);border:1px solid rgba(42,33,24,.1);box-shadow:0 20px 60px rgba(42,33,24,.04);transition:transform .2s ease,border-color .2s ease}.serviceCard:hover{transform:translateY(-4px);border-color:rgba(168,121,85,.45)}.serviceNo{display:block;margin-bottom:34px;color:var(--accent);font-size:52px;line-height:.8}.serviceCard h3,.serviceNo{font-family:Georgia,Times New Roman,serif}.serviceCard h3{margin:0 0 3px;font-size:23px;letter-spacing:-.035em}.serviceCard em{display:block;color:var(--accent);font-family:Georgia,Times New Roman,serif;font-size:13px;font-weight:700}.serviceCard p{margin:22px 0 0;color:var(--muted);font-size:14px;line-height:1.75}.footnote{margin:36px 0 0;text-align:center;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.22em}.portfolioSection{max-width:none}.portfolioTable,.portfolioTitleLine{max-width:var(--max);margin-left:auto;margin-right:auto}.portfolioTitleLine{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin-bottom:46px}.portfolioTitleLine>span{color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.22em;text-transform:uppercase;white-space:nowrap}.portfolioTable{border:1px solid rgba(42,33,24,.12);background:hsla(0,0%,100%,.45)}.portfolioHeader,.portfolioRow{display:grid;grid-template-columns:80px 1.25fr 1.75fr 120px;grid-gap:22px;gap:22px;align-items:center}.portfolioHeader{padding:17px 24px;background:var(--ink);color:#fff7ec;font-size:10px;font-weight:900;letter-spacing:.24em}.portfolioHeader div:last-child,.portfolioRow div:last-child{text-align:right}.portfolioRow{min-height:84px;padding:22px 24px;border-top:1px solid rgba(42,33,24,.09)}.portfolioNo{color:var(--accent);font-weight:800}.portfolioRow strong{display:block;font-family:Georgia,Times New Roman,serif;font-size:17px}.portfolioRow span{display:block;margin-top:5px;color:var(--muted);font-size:12px}.portfolioRow div:nth-child(3),.portfolioRow div:nth-child(4){color:var(--muted);font-size:13px;line-height:1.6}.emptyRow{display:grid;place-items:center;grid-gap:8px;gap:8px;min-height:140px;padding:34px;text-align:center;color:var(--muted)}.emptyRow strong{color:var(--accent);font-family:Georgia,Times New Roman,serif;font-size:18px;font-style:italic}.contactSection{max-width:var(--max);margin:0 auto}.contactSection h2{margin:0;max-width:860px;text-align:left}.contactSection>p:not(.microLabel){color:var(--accent);font-family:Georgia,Times New Roman,serif;font-weight:700;font-style:italic;font-size:17px}.contactGrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:28px;gap:28px;padding-top:38px;margin-top:58px;border-top:1px solid var(--line)}.contactGrid span{display:block;margin-bottom:15px;color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.28em}.contactGrid strong{display:block;white-space:pre-line;font-family:Georgia,Times New Roman,serif;font-size:17px;line-height:1.45}.contactActions{justify-content:flex-start;margin-top:52px}.siteFooter{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:20px;gap:20px;padding:36px clamp(20px,4vw,56px);background:#1e160f;color:#fff7ec;font-size:11px}.siteFooter strong{font-family:Georgia,Times New Roman,serif}.siteFooter span:nth-child(2){color:rgba(255,247,236,.64)}.siteFooter span:last-child{text-align:right;color:rgba(255,247,236,.64);text-transform:uppercase;letter-spacing:.16em}@media (max-width:900px){.siteHeader{grid-template-columns:auto 1fr auto}.mobileToggle{display:inline-grid;gap:6px;place-self:center flex-end;width:42px;height:42px;padding:13px 10px;border:1px solid var(--line);background:transparent}.mobileToggle span{display:block;height:2px;background:var(--ink)}.navLinks{position:absolute;left:16px;right:16px;top:74px;display:none;flex-direction:column;align-items:stretch;gap:0;background:#fffaf1;border:1px solid var(--line);box-shadow:0 24px 60px rgba(42,33,24,.12)}.navLinks.isOpen{display:flex}.navLinks a{padding:16px 18px;border-bottom:1px solid var(--line)}.navLinks a:last-child{border-bottom:0}.headerActions{gap:8px}.consultButton{display:none}.aboutSection{grid-template-columns:1fr}.aboutContent,.aboutSection .sectionIntro{justify-self:start;max-width:var(--max)}.serviceGrid{grid-template-columns:1fr}.contactGrid{grid-template-columns:repeat(2,1fr)}.portfolioHeader{display:none}.portfolioRow{grid-template-columns:44px 1fr}.portfolioRow div:nth-child(3),.portfolioRow div:nth-child(4){grid-column:2;text-align:left}}@media (max-width:620px){.siteHeader{padding:16px}.headerActions{justify-content:flex-end}.statsGrid{grid-template-columns:repeat(2,1fr)}.statCard:nth-child(2){border-right:0}.statCard:nth-child(-n+2){border-bottom:1px solid var(--line)}.contactSection h2,.heroSection h1{font-size:clamp(41px,16vw,72px)}.portfolioTitleLine{display:block}.portfolioTitleLine>span{display:block;margin-top:18px}.contactGrid,.siteFooter{grid-template-columns:1fr}.siteFooter span:last-child{text-align:left}}.adminLite{min-height:100vh;padding:48px 20px;background:var(--bg)}.adminLite section{max-width:960px;margin:0 auto;padding:32px;background:#fffaf1;border:1px solid var(--line)}.adminLite h1{margin:0 0 12px;font-family:Georgia,Times New Roman,serif;font-size:44px;letter-spacing:-.055em}.adminLite p{color:var(--muted);line-height:1.7}.adminLite code{background:rgba(42,33,24,.08);padding:3px 7px;border-radius:6px}.adminLite textarea{width:100%;height:62vh;margin-top:20px;padding:18px;border:1px solid var(--line);background:#fffdf8;color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.6}.adminLite button{margin-top:18px;border:0;background:var(--ink);color:#fff7ec;padding:13px 18px;font-weight:800;cursor:pointer}.adminLite button:disabled{opacity:.48;cursor:not-allowed}.errorMsg,.validMsg{margin-top:12px;font-size:13px;font-weight:800}.validMsg{color:#386641}.errorMsg{color:#a4161a}.aboutImageFrame,.heroImageFrame{overflow:hidden;margin:54px auto 0;border:1px solid var(--line);background:hsla(0,0%,100%,.42)}.heroImageFrame{max-width:920px;aspect-ratio:16/7}.aboutImageFrame{max-width:560px;aspect-ratio:16/9}.aboutImageFrame img,.adminPreviewImage,.heroImageFrame img,.mediaCard img,.portfolioThumb,.serviceImage{display:block;width:100%;height:100%;object-fit:cover}.serviceImage{height:154px;margin:-34px -30px 28px;width:calc(100% + 60px);border-bottom:1px solid var(--line)}.portfolioClientCell{display:grid;grid-template-columns:auto 1fr;align-items:center;grid-column-gap:14px;column-gap:14px}.portfolioClientCell span,.portfolioClientCell strong{grid-column:2}.portfolioThumb{grid-row:1/span 2;width:58px;height:58px;border:1px solid var(--line)}.mediaSection{max-width:none}.mediaGrid,.mediaSection .centerTitle{max-width:var(--max);margin-left:auto;margin-right:auto}.mediaSection .centerTitle p:not(.microLabel){max-width:680px;margin:18px auto 0;color:var(--muted);line-height:1.75}.mediaGrid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:24px;gap:24px;margin-top:58px}.mediaCard{background:var(--card);border:1px solid rgba(42,33,24,.1);box-shadow:0 20px 60px rgba(42,33,24,.04)}.mediaCard img{aspect-ratio:4/3;border-bottom:1px solid var(--line)}.mediaCard div{padding:26px}.mediaCard h3{margin:0;font-family:Georgia,Times New Roman,serif;font-size:23px;letter-spacing:-.035em}.mediaCard p{margin:12px 0 0;color:var(--muted);line-height:1.7}.adminDashboard{min-height:100vh;padding:32px clamp(16px,4vw,54px) 120px;background:#f6f2ea;color:var(--ink)}.adminLoginPage{display:grid;place-items:center;padding:28px}.adminLoginCard,.adminPanel,.adminSaveBar,.adminTopbar{border:1px solid var(--line);background:#fffaf1;box-shadow:0 24px 70px rgba(42,33,24,.06)}.adminLoginCard{width:min(100%,480px);padding:34px}.adminLoginCard h1,.adminRepeaterHeader h2,.adminTopbar h1{margin:0;font-family:Georgia,Times New Roman,serif;letter-spacing:-.055em}.adminLoginCard h1{font-size:44px}.adminJsonEditor p,.adminLoginCard p,.adminSaveBar span,.adminTopbar p{color:var(--muted);line-height:1.7}.adminTopbar{max-width:1280px;margin:0 auto 18px;padding:28px;display:flex;justify-content:space-between;gap:24px;align-items:center}.adminTopbar h1{font-size:clamp(36px,5vw,58px)}.adminTopbar p{margin:8px 0 0}.adminTopActions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.adminDangerButton,.adminPrimaryButton,.adminRepeaterHeader button,.adminTopActions a,.adminTopActions button,.uploadButton{min-height:42px;border:1px solid var(--ink);background:var(--ink);color:#fff7ec;padding:0 16px;font-weight:850;font-size:12px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.adminDangerButton,.adminTopActions button{background:transparent;color:var(--ink);border-color:var(--line)}.adminTabs{max-width:1280px;margin:0 auto 18px;display:flex;flex-wrap:wrap;gap:10px}.adminTabs button{border:1px solid var(--line);background:hsla(0,0%,100%,.36);min-height:40px;padding:0 14px;font-weight:850;cursor:pointer}.adminTabs button.active{background:var(--ink);color:#fff7ec;border-color:var(--ink)}.adminPanel{max-width:1280px;margin:0 auto;padding:28px}.adminGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.adminField{display:grid;grid-gap:8px;gap:8px}.adminFieldWide{grid-column:1/-1}.adminField span{color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.2em;text-transform:uppercase}.adminField input,.adminField select,.adminField textarea,.adminJsonEditor textarea{width:100%;border:1px solid var(--line);background:#fffdf8;color:var(--ink);padding:13px 14px;font:inherit;outline:none}.adminField textarea,.adminJsonEditor textarea{resize:vertical;line-height:1.65}.adminField input:focus,.adminField select:focus,.adminField textarea:focus,.adminJsonEditor textarea:focus{border-color:var(--accent)}.uploadRow{display:grid;grid-template-columns:1fr auto;grid-gap:10px;gap:10px}.uploadButton{position:relative;overflow:hidden}.uploadButton input{position:absolute;inset:0;opacity:0;cursor:pointer}.adminPreviewImage{width:220px;height:130px;margin-top:10px;border:1px solid var(--line)}.adminInlineError{color:#a4161a;font-weight:800}.adminRepeaterHeader{display:flex;justify-content:space-between;gap:18px;align-items:center;margin:34px 0 16px;padding-top:28px;border-top:1px solid var(--line)}.adminRepeaterHeader h2{font-size:34px}.adminRepeater{display:grid;grid-gap:18px;gap:18px}.adminRepeatCard{border:1px solid var(--line);background:hsla(0,0%,100%,.45);padding:20px}.adminDangerButton{margin-top:16px}.adminJsonEditor textarea{min-height:62vh;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px}.adminSaveBar{position:fixed;left:clamp(16px,4vw,54px);right:clamp(16px,4vw,54px);bottom:18px;max-width:1280px;margin:0 auto;padding:14px;display:flex;align-items:center;gap:16px;z-index:90}.adminPrimaryButton:disabled{opacity:.48;cursor:not-allowed}.adminMessage{max-width:1280px;margin:0 auto 18px;padding:13px 16px;border:1px solid var(--line);font-weight:800}.adminMessage.ok{background:#eef7ed;color:#2d6a4f}.adminMessage.error{background:#fff1f0;color:#a4161a}.adminMessage.info{background:#fffaf1;color:var(--muted)}.adminBackLink{display:inline-flex;margin-top:18px;color:var(--accent);font-weight:850}.adminLoading{max-width:720px;margin:80px auto;padding:28px;background:#fffaf1;border:1px solid var(--line);font-weight:850}@media (max-width:900px){.mediaGrid{grid-template-columns:1fr}.adminTopbar{display:block}.adminTopActions{justify-content:flex-start;margin-top:18px}.adminGrid{grid-template-columns:1fr}.adminRepeaterHeader{display:block}.adminRepeaterHeader button{margin-top:14px}.adminSaveBar{display:grid}}@media (max-width:620px){.portfolioClientCell{grid-template-columns:1fr}.portfolioThumb{grid-row:auto;grid-column:1;margin-bottom:10px}.portfolioClientCell span,.portfolioClientCell strong{grid-column:1}.uploadRow{grid-template-columns:1fr}.adminPreviewImage{width:100%;height:180px}}