@import "https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=DM+Sans:wght@300;400;500&family=Dancing+Script:wght@700&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--ink:#0f0f0f;--ink-soft:#3a3a3a;--ink-muted:#888;--paper:#faf9f7;--paper-warm:#f3f1ec;--accent:#c8a96e;--accent-dark:#a8874e;--border:#00000014;--serif:"DM Serif Display", Georgia, serif;--sans:"DM Sans", system-ui, sans-serif}html{scroll-behavior:smooth}body{font-family:var(--sans);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}.container{max-width:1100px;margin:0 auto;padding:0 2rem}section{padding:7rem 0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.15}.label{letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem;font-size:.7rem;font-weight:500;display:block}.nameplate{text-align:center;background:var(--paper);border-bottom:1px solid var(--border);flex-direction:column;align-items:center;gap:.6rem;padding:3.5rem 0 3rem;display:flex}.nameplate-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--accent);font-size:.65rem;font-weight:500}.nameplate-name{color:var(--ink);letter-spacing:.01em;margin:0;font-family:Dancing Script,cursive;font-size:clamp(2.8rem,6vw,4.5rem);font-weight:700;line-height:1.2}.nameplate-rule{background:var(--accent);width:40px;height:1px;margin-top:.4rem;display:block}nav{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#faf9f7ed;padding:1.2rem 0;position:sticky;top:0}.nav-inner{justify-content:space-between;align-items:center;display:flex}.nav-logo{-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;display:inline-flex}.nav-logo-icon{flex-shrink:0;width:2rem;height:2.65rem}.nav-logo-text{font-family:var(--sans);color:var(--ink);letter-spacing:-.03em;font-size:1.6rem;font-weight:700}.nav-links{gap:2.5rem;list-style:none;display:flex}.nav-links a{color:var(--ink-soft);letter-spacing:.02em;font-size:.85rem;font-weight:500;transition:color .2s}.nav-links a:hover{color:var(--ink)}.hero{background:var(--paper);align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-layout{grid-template-columns:1.1fr .9fr;align-items:center;gap:5rem;width:100%;display:grid}.hero:before{content:"";pointer-events:none;background:radial-gradient(circle,#c8a96e14 0%,#0000 70%);border-radius:50%;width:600px;height:600px;position:absolute;top:-20%;right:-10%}.hero-content{max-width:580px}.hero-visual{justify-content:center;align-items:center;display:flex}.mockup-frame{background:var(--paper-warm);border:1px solid var(--border);flex-direction:column;align-items:center;gap:.75rem;width:100%;max-width:300px;padding:2rem 2rem 1.75rem;display:flex;box-shadow:0 24px 64px #0000000f,0 4px 16px #0000000a}.mockup-tag{letter-spacing:.16em;text-transform:uppercase;color:var(--accent);align-self:flex-start;font-size:.62rem;font-weight:500}.mockup-shirt{justify-content:center;align-items:center;width:100%;padding:.5rem 0;display:flex}.tshirt-svg{width:100%;max-width:220px;height:auto}.shirt-body{fill:var(--ink);opacity:.06}.shirt-design-line{fill:var(--ink);font-family:DM Serif Display,Georgia,serif;font-size:17px;font-style:italic}.shirt-design-accent{fill:#c8a96e;letter-spacing:.1em;font-family:DM Sans,system-ui,sans-serif;font-size:11px;font-weight:300}.mockup-niche{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-dark);background:#c8a96e14;border:1px solid #c8a96e33;align-self:flex-start;padding:.28rem .7rem;font-size:.62rem}.hero h1{color:var(--ink);margin-bottom:1.5rem;font-size:clamp(3rem,6vw,5.5rem)}.hero h1 em{color:var(--accent);font-style:italic}.hero-tagline{color:var(--ink-soft);max-width:480px;margin-bottom:2.5rem;font-size:1.15rem;line-height:1.6}.btn{background:var(--ink);color:var(--paper);font-family:var(--sans);letter-spacing:.05em;cursor:pointer;border:none;align-items:center;gap:.5rem;padding:.9rem 2rem;font-size:.85rem;font-weight:500;transition:background .2s,transform .15s;display:inline-flex}.btn:hover{background:var(--ink-soft);transform:translateY(-1px)}.btn-outline{color:var(--ink);border:1px solid var(--ink);background:0 0}.btn-outline:hover{background:var(--ink);color:var(--paper)}.gallery-section{background:#fff;padding:8rem 0}.section-header{margin-bottom:4.5rem}.section-header h2{font-size:clamp(2rem,4vw,3.2rem)}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2px;display:grid}.design-card{background:var(--paper);border:1px solid var(--border);cursor:default;padding:2.5rem;transition:transform .35s,box-shadow .35s,border-color .35s;position:relative;overflow:hidden}.design-card:before{content:"";background:linear-gradient(90deg, var(--accent), var(--accent-dark));transform-origin:0;height:2px;transition:transform .4s;position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.design-card:hover:before{transform:scaleX(1)}.design-card:hover{border-color:#c8a96e33;transform:translateY(-6px);box-shadow:0 20px 56px #00000017,0 4px 12px #0000000d}.design-mock{aspect-ratio:4/5;border:1px solid var(--border);background:#ececec;justify-content:center;align-items:center;width:100%;margin-bottom:1.75rem;padding:.5rem;transition:background .35s;display:flex}.design-card:hover .design-mock{background:#ececec}.design-card h3{margin-bottom:.5rem;font-size:1.2rem}.design-card p{color:var(--ink-soft);margin-bottom:1.25rem;font-size:.875rem;line-height:1.65}.niche-tag{letter-spacing:.12em;text-transform:uppercase;color:var(--accent-dark);background:#c8a96e12;border:1px solid #c8a96e33;align-items:center;gap:.45rem;padding:.3rem .75rem;font-size:.65rem;font-weight:500;display:inline-flex}.niche-tag:before{content:"";background:var(--accent);border-radius:50%;flex-shrink:0;width:4px;height:4px;display:inline-block}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:5rem;display:grid}.about-text h2{margin-bottom:1.5rem;font-size:clamp(2rem,3.5vw,2.8rem)}.about-text p{color:var(--ink-soft);font-size:1rem;line-height:1.8}.about-stat-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.stat-box{background:var(--paper-warm);border:1px solid var(--border);padding:1.75rem}.stat-number{font-family:var(--serif);color:var(--accent);margin-bottom:.25rem;font-size:2.5rem;display:block}.stat-label{color:var(--ink-muted);letter-spacing:.05em;font-size:.8rem;font-weight:500}.services-grid{background:var(--border);border:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1px;display:grid}.service-item{background:var(--paper);padding:2rem 1.75rem}.service-icon{margin-bottom:1rem;font-size:1.5rem;display:block}.service-item h3{margin-bottom:.5rem;font-size:1rem}.service-item p{color:var(--ink-muted);font-size:.85rem;line-height:1.6}.contact-inner{max-width:560px}.contact-inner h2{margin-bottom:1rem;font-size:clamp(2rem,4vw,3rem)}.contact-inner p{color:var(--ink-soft);margin-bottom:2rem}.contact-links{flex-direction:column;gap:.75rem;display:flex}.contact-link{color:var(--ink-soft);align-items:center;gap:.75rem;font-size:.95rem;transition:color .2s;display:flex}.contact-link:hover{color:var(--accent)}.contact-link-icon{background:var(--paper-warm);border:1px solid var(--border);width:36px;height:36px;color:var(--ink);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.contact-link-icon svg{width:18px;height:18px}footer{background:var(--ink);color:#faf9f780;padding:2.5rem 0;font-size:.82rem}.footer-inner{justify-content:space-between;align-items:center;display:flex}.footer-brand{font-family:var(--serif);color:var(--paper);font-size:1rem}.scroll-top-btn{z-index:200;background:var(--ink);width:2.8rem;height:2.8rem;color:var(--paper);cursor:pointer;opacity:0;pointer-events:none;border:none;border-radius:50%;justify-content:center;align-items:center;transition:opacity .3s,transform .3s;display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(1rem);box-shadow:0 4px 16px #0000002e}.scroll-top-btn--visible{opacity:1;pointer-events:auto;transform:translateY(0)}.scroll-top-btn:hover{background:var(--accent-dark)}.scroll-top-btn svg{width:1.1rem;height:1.1rem}.nav-hamburger{cursor:pointer;z-index:110;background:0 0;border:none;flex-direction:column;justify-content:center;gap:5px;padding:.25rem;display:none}.nav-hamburger span{background:var(--ink);transform-origin:50%;border-radius:2px;width:24px;height:2px;transition:transform .3s,opacity .3s;display:block}.nav-hamburger--open span:first-child{transform:translateY(7px)rotate(45deg)}.nav-hamburger--open span:nth-child(2){opacity:0}.nav-hamburger--open span:nth-child(3){transform:translateY(-7px)rotate(-45deg)}.nav-drawer{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);background:#faf9f7fa;max-height:0;transition:max-height .35s;display:none;overflow:hidden}.nav-drawer--open{max-height:320px}.nav-drawer-links{flex-direction:column;gap:0;padding:1rem 2rem 1.5rem;list-style:none;display:flex}.nav-drawer-links li a{color:var(--ink-soft);border-bottom:1px solid var(--border);letter-spacing:.02em;padding:.85rem 0;font-size:1rem;font-weight:500;transition:color .2s;display:block}.nav-drawer-links li:last-child a{border-bottom:none}.nav-drawer-links li a:hover{color:var(--accent)}@media (max-width:768px){.nav-links{display:none}.nav-hamburger{display:flex}.nav-drawer{display:block}.nav-logo-text{font-size:1.3rem}section{padding:4rem 0}.container{padding:0 1.25rem}.nameplate{padding:2.5rem 1.25rem 2rem}.hero{min-height:auto;padding:4rem 0 3rem}.hero-layout{grid-template-columns:1fr;gap:2rem}.hero-visual{display:none}.hero h1{font-size:clamp(2.2rem,8vw,3.2rem)}.hero-tagline{margin-bottom:2rem;font-size:1rem}.gallery-section{padding:4rem 0}.gallery-grid{grid-template-columns:1fr;gap:1rem}.design-card{padding:1.75rem}.about-grid{grid-template-columns:1fr;gap:2.5rem}.about-stat-grid{grid-template-columns:1fr 1fr;gap:1rem}.stat-box{padding:1.25rem}.stat-number{font-size:2rem}.services-grid{grid-template-columns:1fr}.contact-inner{max-width:100%}.footer-inner{text-align:center;flex-direction:column;gap:.75rem}.scroll-top-btn{width:2.4rem;height:2.4rem;bottom:1.25rem;right:1.25rem}}
