@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');
@font-face{font-family:'Allura';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/allura.ttf') format('truetype')}
:root{color-scheme:light;--bg:#f8f6f0;--text:#252722;--muted:#626657;--accent:#565b45;--rule:#d5d5c9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:var(--text);font:16px/1.7 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}.wrap{width:min(1360px,calc(100% - 104px));margin-inline:auto}.header{min-height:140px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:inline-flex;flex-direction:column;align-items:center;flex-shrink:0;color:var(--text)}.brand-script{font-family:'Allura','Segoe Script',cursive;font-size:78px;font-weight:400;line-height:.9;letter-spacing:-3px}.brand-subtitle{font-family:'DM Sans',sans-serif;font-size:12px;line-height:1.4;letter-spacing:4px;margin-top:8px}.header nav{display:flex;gap:36px;align-items:center;font-size:15px}.nav-contact{border:1px solid var(--accent);border-radius:40px;padding:12px 25px;background:var(--accent);color:#fff}.nav-contact:hover{background:#3e4432;color:#fff}.hero{display:grid;grid-template-columns:.88fr 1.12fr;align-items:center;gap:6%;padding-block:12px 56px}.hero-copy{padding-block:24px}.eyebrow{font-size:12px;letter-spacing:1.8px;color:var(--muted);font-weight:500}.hero .eyebrow{max-width:340px}.line{display:none}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-2px}h1{font-size:clamp(58px,6.9vw,100px);margin:27px 0}h2{font-size:clamp(48px,5.2vw,72px);margin-top:20px}em{font-style:normal;color:var(--accent)}.intro{font-family:Georgia,serif;font-size:21px;line-height:1.6;color:#545a47}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;background:var(--accent);color:#fff;border-radius:40px;padding:16px 28px;font-size:15px;transition:background .2s}.button:hover{background:#3e4432;color:#fff}.hero .button{margin-top:32px}.hero-note{margin-top:60px;font-size:12px;letter-spacing:2.2px;color:var(--muted)}.hero-image img{aspect-ratio:4/5;object-fit:cover;object-position:50% 38%}.hero-image figcaption{display:flex;justify-content:space-between;gap:20px;font-size:12px;letter-spacing:1px;color:var(--muted);margin-top:14px}.work{border-top:1px solid var(--rule);padding-block:55px 85px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:36px;margin-bottom:36px}.section-heading>p{color:var(--muted);max-width:360px}.gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 26px;align-items:start}.gallery figure{min-width:0}.gallery img{aspect-ratio:2/3;object-fit:contain;background:#edede5}.gallery a{display:block;overflow:hidden}.gallery a:hover img{filter:brightness(1.04)}.gallery figcaption{display:flex;justify-content:space-between;gap:15px;padding-top:13px;font-family:Georgia,serif;font-size:18px}.gallery figcaption span:last-child{font:12px 'DM Sans',sans-serif;color:var(--muted);padding-top:6px}.text-link{display:inline-flex;gap:22px;font-size:15px;border-bottom:1px solid var(--rule);padding-bottom:8px}.work>.text-link{margin-top:36px}.about{background:#eaeadd;padding-block:78px}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:12%}.large{font-family:Georgia,serif;font-size:25px;line-height:1.6}.about-copy>p+p{margin-top:24px;color:#575c4c}.signature{font-family:'Allura','Segoe Script',cursive;font-size:48px;color:var(--accent);margin-top:24px}.services{padding-block:85px}.service-list{border-top:1px solid var(--rule)}.service-list article{display:grid;grid-template-columns:40px 1fr 1fr;gap:25px;padding:28px 0;border-bottom:1px solid var(--rule);align-items:baseline}.number{font-size:13px;color:var(--muted)}h3{font:28px Georgia,serif}.service-list p{color:var(--muted)}.contact{border-top:1px solid var(--rule);padding-block:72px 85px}.contact h2{font-size:clamp(56px,6.7vw,94px)}.contact-bottom{display:flex;justify-content:space-between;gap:32px;align-items:flex-end;margin-top:36px}.contact-bottom p{color:var(--muted)}.contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px;min-width:0}.contact-email{overflow-wrap:anywhere}footer{border-top:1px solid var(--rule);padding-block:35px;display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap}footer .brand-script{font-size:58px}footer p,footer>a:not(.brand){font-size:14px;color:var(--muted)}.copyright{flex-basis:100%;font-size:12px;color:var(--muted)}.skip{position:absolute;left:20px;top:-100px;padding:12px;background:var(--accent);color:white;z-index:5}.skip:focus{top:12px}
@media(max-width:1000px){.wrap{width:calc(100% - 56px)}.header nav{gap:22px}.hero{gap:4%}h1{font-size:66px}.hero-note{margin-top:32px;letter-spacing:1px}.hero-image figcaption span:last-child{display:none}.gallery{gap:28px 20px}.about-grid{gap:7%}.service-list article{gap:18px;grid-template-columns:28px 1fr 1fr}.nav-contact{padding:10px 18px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.header{min-height:128px;flex-wrap:wrap;gap:14px;padding-block:20px}.brand-script{font-size:62px}.brand-subtitle{font-size:12px;letter-spacing:2.5px}.header nav{gap:16px;font-size:14px}.header .nav-contact{display:none}.hero{grid-template-columns:1fr;gap:28px;padding-top:4px;padding-bottom:36px}.hero-copy{padding-block:12px 0}h1{font-size:clamp(58px,12vw,78px);margin-block:20px}.intro{font-size:19px}.hero .button{margin-top:24px}.hero-note{margin-top:28px}.hero-image img{aspect-ratio:4/5;object-position:50% 35%}.hero-image figcaption{font-size:12px}.work{padding-block:36px 55px}.section-heading{display:block;margin-bottom:28px}.section-heading>p,.section-heading>.text-link{margin-top:22px}.gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.gallery figcaption{font-size:16px;line-height:1.4}.gallery figcaption span:last-child{display:none}.about{padding-block:52px}.about-grid{grid-template-columns:1fr;gap:28px}.large{font-size:22px}.services{padding-block:55px}.service-list article{grid-template-columns:24px 1fr;gap:10px 14px}.service-list p{grid-column:2}h3{font-size:24px}.contact{padding-block:50px}.contact h2{font-size:58px}.contact-bottom{display:block}.contact-actions{margin-top:28px}footer{gap:24px}footer p{max-width:180px}.eyebrow{letter-spacing:1.4px}}
@media(max-width:360px){.header nav{gap:12px}.brand-script{font-size:54px}.gallery{grid-template-columns:1fr}h1{font-size:54px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
