:root{--ink: #1a1a1a;--paper: #f5f3ef;--warm: #f0ebe2;--accent: #c4603a;--accent-light: #e8b49a;--muted: #8a8278;--rule: #d8d2c8;--white: #ffffff}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:DM Sans,sans-serif;background:var(--paper);color:var(--ink);font-size:15px;line-height:1.65}h1,h2,h3{font-family:Cormorant Garamond,serif}h2{font-size:clamp(36px,5vw,60px);font-weight:300;line-height:1.1}h3{font-size:26px;font-weight:400}section{padding:100px 60px}.section-label{font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:16px}.rule{width:48px;height:1px;background:var(--accent);margin:24px 0}nav{position:fixed;top:0;left:0;right:0;z-index:100;display:flex;align-items:center;justify-content:space-between;padding:20px 60px;background:#f5f3efeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--rule);transition:box-shadow .2s}nav.scrolled{box-shadow:0 2px 20px #0000000f}.nav-logo{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:600;letter-spacing:.04em;color:var(--ink);text-decoration:none}.nav-logo span{color:var(--accent)}.nav-links{display:flex;gap:36px;list-style:none}.nav-links a{text-decoration:none;color:var(--ink);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;transition:color .2s}.nav-links a:hover{color:var(--accent)}.nav-cta{background:var(--accent);color:var(--white);padding:9px 22px;border-radius:2px;font-size:12px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;transition:background .2s}.nav-cta:hover{background:#a8502f}.btn-primary{background:var(--ink);color:var(--white);padding:14px 36px;border-radius:2px;font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;transition:background .2s}.btn-primary:hover{background:var(--accent)}.btn-ghost{color:var(--ink);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid var(--ink);padding-bottom:2px;transition:color .2s,border-color .2s}.btn-ghost:hover{color:var(--accent);border-color:var(--accent)}#home{min-height:100vh;display:flex;align-items:center;padding-top:140px;padding-bottom:80px;background:var(--paper);position:relative;overflow:hidden}.hero-bg-text{position:absolute;right:-20px;top:50%;transform:translateY(-50%);font-family:Cormorant Garamond,serif;font-size:clamp(140px,20vw,280px);font-weight:300;color:transparent;-webkit-text-stroke:1px var(--rule);line-height:1;-webkit-user-select:none;user-select:none;z-index:0;letter-spacing:-.02em}.hero-content{position:relative;z-index:1;max-width:680px}.hero-eyebrow{font-size:12px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-bottom:28px}.hero-title{font-size:clamp(48px,7vw,96px);font-weight:300;line-height:1;letter-spacing:-.01em;margin-bottom:32px}.hero-title em{font-style:italic;color:var(--accent)}.hero-body{font-size:17px;color:var(--muted);line-height:1.75;max-width:460px;margin-bottom:48px}.hero-actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.hero-clients{position:absolute;bottom:60px;left:60px;display:flex;align-items:center;gap:28px;z-index:1}.hero-clients-label{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.client-list{display:flex;gap:24px;font-size:13px;font-family:Cormorant Garamond,serif;font-weight:600;letter-spacing:.06em;color:var(--ink);opacity:.5}#services{background:var(--white)}.services-intro{max-width:560px;margin-bottom:72px}.services-intro p{color:var(--muted);font-size:16px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule)}.service-card{background:var(--white);padding:48px 40px;transition:background .2s}.service-card:hover{background:var(--warm)}.service-num{font-family:Cormorant Garamond,serif;font-size:13px;color:var(--accent);margin-bottom:24px;letter-spacing:.1em}.service-card h3{font-size:22px;font-weight:400;margin-bottom:16px}.service-card p{font-size:14px;color:var(--muted);line-height:1.7}.service-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.tag{font-size:11px;letter-spacing:.1em;text-transform:uppercase;background:var(--warm);color:var(--muted);padding:4px 10px;border-radius:2px}#work{background:var(--ink);color:var(--paper)}#work .section-label{color:var(--accent-light)}#work h2{color:var(--paper)}.work-intro p{color:var(--muted);font-size:16px;max-width:540px;margin-top:12px}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2px;margin-top:60px}.work-card{background:#242424;padding:48px;transition:background .2s;cursor:pointer;position:relative}.work-card:hover{background:#2e2e2e}.work-card-cat{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:20px}.work-card h3{font-size:28px;font-weight:300;color:var(--paper);margin-bottom:12px}.work-card p{font-size:14px;color:#7a7670;line-height:1.7}.work-card-client{margin-top:28px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:#5a5652}.work-arrow{position:absolute;top:48px;right:48px;font-size:20px;color:#3a3a3a;transition:color .2s}.work-card:hover .work-arrow{color:var(--accent)}#about{background:var(--paper)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.about-left h2{margin-bottom:8px}.about-left p{color:var(--muted);font-size:15px;line-height:1.8;margin-bottom:24px}.credentials{margin-top:40px}.credentials h4{font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:20px}.cred-item{display:flex;align-items:baseline;gap:16px;padding:12px 0;border-bottom:1px solid var(--rule);font-size:14px}.cred-year{font-family:Cormorant Garamond,serif;color:var(--muted);min-width:60px}.about-right{padding-top:16px}.about-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:48px}.stat-box{border-top:1px solid var(--rule);padding-top:20px}.stat-num{font-family:Cormorant Garamond,serif;font-size:56px;font-weight:300;line-height:1;color:var(--ink)}.stat-label{font-size:13px;color:var(--muted);margin-top:8px}.about-quote{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:300;font-style:italic;line-height:1.55;color:var(--ink);padding:32px;background:var(--warm);border-left:3px solid var(--accent)}#process{background:var(--warm)}.process-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:72px;flex-wrap:wrap;gap:24px}.process-header p{max-width:360px;color:var(--muted);font-size:15px}.process-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0}.process-step{padding:40px 32px;border-right:1px solid var(--rule)}.process-step:last-child{border-right:none}.step-num{font-family:Cormorant Garamond,serif;font-size:64px;font-weight:300;color:var(--rule);line-height:1;margin-bottom:24px}.process-step h4{font-family:Cormorant Garamond,serif;font-size:22px;font-weight:400;margin-bottom:12px}.process-step p{font-size:13px;color:var(--muted);line-height:1.75}#photography{background:var(--white)}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin-top:48px}.photo-placeholder{aspect-ratio:3/4;background:var(--warm);display:flex;align-items:flex-end;padding:20px;position:relative;overflow:hidden;transition:transform .3s}.photo-placeholder:hover{transform:scale(1.01)}.photo-placeholder:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.4) 0%,transparent 60%)}.photo-bg-1{background:linear-gradient(135deg,#c4a882,#8a7060)}.photo-bg-2{background:linear-gradient(135deg,#8a9eb0,#5a7080)}.photo-bg-3{background:linear-gradient(135deg,#b0a882,#7a7050)}.photo-bg-4{background:linear-gradient(135deg,#c08890,#8a5060)}.photo-bg-5{background:linear-gradient(135deg,#a0b082,#607040)}.photo-bg-6{background:linear-gradient(135deg,#b0908a,#705040)}.photo-label{position:relative;z-index:1;color:#fff;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.photo-cta{margin-top:48px;text-align:center}#pricing{background:var(--paper)}.pricing-note{color:var(--muted);font-size:15px;max-width:540px;margin-top:12px;margin-bottom:64px}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule)}.pricing-card{background:var(--white);padding:48px 40px;position:relative}.pricing-card.featured{background:var(--ink);color:var(--paper)}.pricing-tier{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:20px}.pricing-card.featured .pricing-tier{color:var(--accent-light)}.pricing-card h3{font-size:28px;font-weight:400;margin-bottom:12px}.pricing-card.featured h3{color:var(--paper)}.pricing-price{font-family:Cormorant Garamond,serif;font-size:52px;font-weight:300;line-height:1;margin:24px 0}.pricing-price span{font-size:18px;vertical-align:top;margin-top:12px;display:inline-block}.pricing-card.featured .pricing-price{color:var(--paper)}.pricing-desc{font-size:14px;color:var(--muted);margin-bottom:28px;line-height:1.7}.pricing-card.featured .pricing-desc{color:#7a7670}.pricing-features{list-style:none;margin-bottom:36px}.pricing-features li{font-size:14px;padding:8px 0;border-bottom:1px solid var(--rule);display:flex;gap:10px;align-items:baseline}.pricing-card.featured .pricing-features li{border-bottom-color:#333;color:#bbb}.pricing-features li:before{content:"→";color:var(--accent);flex-shrink:0}.featured-badge{position:absolute;top:-1px;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;font-size:10px;letter-spacing:.16em;text-transform:uppercase;padding:4px 16px}#contact{background:var(--ink);color:var(--paper)}#contact .section-label{color:var(--accent-light)}#contact h2{color:var(--paper)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;margin-top:60px}.contact-info p{color:var(--muted);font-size:16px;line-height:1.8;margin-bottom:40px}.contact-detail{display:flex;flex-direction:column;gap:4px;margin-bottom:24px}.contact-detail-label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#5a5652}.contact-detail-val{font-size:16px;color:var(--paper)}.contact-avail{margin-top:40px;padding:24px;background:#242424;border-left:3px solid var(--accent)}.contact-avail-label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}.contact-avail p{font-size:14px;color:var(--muted)}.contact-form{display:flex;flex-direction:column;gap:20px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#5a5652}.form-group input,.form-group select,.form-group textarea{background:#242424;border:1px solid #333;color:var(--paper);padding:14px 16px;font-family:DM Sans,sans-serif;font-size:15px;border-radius:2px;outline:none;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--accent)}.form-group textarea{resize:vertical;min-height:120px}.form-group select option{background:#242424}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.btn-submit{background:var(--accent);color:var(--white);padding:16px 40px;border:none;border-radius:2px;font-family:DM Sans,sans-serif;font-size:13px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:background .2s;align-self:flex-start}.btn-submit:hover{background:#a8502f}.btn-submit:disabled{opacity:.6;cursor:not-allowed}footer{background:#111;color:#5a5652;padding:40px 60px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.footer-logo{font-family:Cormorant Garamond,serif;font-size:18px;color:#8a8278;font-weight:600}.footer-logo span{color:var(--accent)}.footer-links{display:flex;gap:28px}.footer-links a{color:#5a5652;text-decoration:none;font-size:12px;letter-spacing:.1em;text-transform:uppercase;transition:color .2s}.footer-links a:hover{color:var(--accent)}.footer-copy{font-size:12px}@media (max-width: 1024px){nav,section,footer{padding-left:32px;padding-right:32px}.hero-clients{left:32px}.services-grid,.process-steps{grid-template-columns:repeat(2,1fr)}.work-grid,.pricing-grid{grid-template-columns:1fr}.about-grid,.contact-grid{grid-template-columns:1fr;gap:48px}}@media (max-width: 640px){nav{padding:16px 20px}.nav-links{display:none}section{padding:72px 20px}.services-grid,.photo-grid{grid-template-columns:1fr}.about-stat-grid{grid-template-columns:1fr 1fr}.form-row{grid-template-columns:1fr}footer{padding:28px 20px;flex-direction:column;align-items:flex-start}}
