:root { --ink:#29291f; --paper:#ebe6d5; --paper-deep:#d5cbb3; --sage:#737a64; --moss:#4d5747; --red:#ae5f4b; --line:rgba(41,41,31,.22); }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); background:var(--paper); font-family:Manrope,Arial,sans-serif; font-size:16px; line-height:1.6; }
a { color:inherit; text-decoration:none; }
.topbar { height:78px; padding:0 clamp(24px,5vw,78px); display:flex; align-items:center; justify-content:space-between; border-bottom:1px solid var(--line); position:absolute; width:100%; z-index:2; color:#fffdf4; }
.brand { font:42px/1 "Instrument Serif",serif; letter-spacing:-2px; }.brand span { color:#dba082; }
nav { display:flex; gap:28px; font:500 10px/1 "DM Mono",monospace; text-transform:uppercase; letter-spacing:.08em; }
.hero { min-height:770px; display:grid; grid-template-columns:1.05fr .95fr; position:relative; overflow:hidden; background:var(--moss); }
.hero-image { background:linear-gradient(90deg,rgba(35,42,33,.42),rgba(35,42,33,.08)),url('assets/redon.jpg') center 44%/cover; min-height:770px; }
.hero-copy { align-self:end; padding:110px clamp(28px,7vw,110px) 112px 7vw; color:#fffdf4; position:relative; z-index:1; }
.eyebrow { margin:0 0 20px; font:500 10px/1.5 "DM Mono",monospace; letter-spacing:.1em; text-transform:uppercase; }
h1,h2 { font-family:"Instrument Serif",Georgia,serif; font-weight:400; letter-spacing:-.045em; line-height:.93; margin:0; }
h1 { font-size:clamp(66px,8.1vw,128px); } h1 em { font-weight:400; color:#d9c58d; }
.intro { max-width:350px; margin:28px 0 35px; font-size:16px; color:rgba(255,253,244,.86); }
.button { display:inline-flex; align-items:center; gap:24px; padding:15px 18px; color:#fffdf4; border:1px solid rgba(255,253,244,.75); border-radius:100px; font:500 10px/1 "DM Mono",monospace; text-transform:uppercase; letter-spacing:.06em; transition:.2s; }.button:hover { background:#fffdf4; color:var(--moss); }.button span { font-size:15px; }
.hero-note { position:absolute; right:7vw; bottom:39px; margin:0; color:rgba(255,253,244,.68); font:10px/1.5 "DM Mono",monospace; text-transform:uppercase; letter-spacing:.08em; }
.section { display:grid; grid-template-columns:10% 44% 46%; padding:138px 7vw; border-bottom:1px solid var(--line); }.section-mark { font:500 10px/1 "DM Mono",monospace; color:var(--red); }.section h2 { font-size:clamp(50px,6vw,91px); }.about-text { max-width:500px; padding-top:11px; }.about-text p { margin:0 0 21px; font-size:17px; }
.credentials { display:grid; grid-template-columns:repeat(3,1fr); gap:45px; padding:55px 7vw 67px; background:#dfd7c2; }.credentials div { padding-right:18px; }.credentials span { color:var(--red); font:500 10px "DM Mono",monospace; text-transform:uppercase; letter-spacing:.08em; }.credentials p { margin:13px 0 0; font-size:14px; line-height:1.7; }
.care { background:#f1ede1; grid-template-columns:10% 38% 52%; }.care-list { border-top:1px solid var(--line); }.care-list details { border-bottom:1px solid var(--line); padding:17px 0; }.care-list summary { cursor:pointer; display:flex; justify-content:space-between; gap:15px; list-style:none; font:20px/1.35 "Instrument Serif",serif; }.care-list summary::-webkit-details-marker { display:none; }.care-list summary span { font:17px/1.3 Manrope,sans-serif; color:var(--red); }.care-list details[open] summary span { transform:rotate(45deg); }.care-list p { max-width:470px; margin:12px 42px 2px 0; font-size:13px; line-height:1.65; }
.contact { display:grid; grid-template-columns:44% 56%; min-height:650px; background:var(--moss); color:#fffdf4; }.contact-art { background:linear-gradient(rgba(69,79,61,.28),rgba(69,79,61,.52)),url('assets/redon.jpg') 22% 72%/cover; }.contact-copy { padding:112px 8vw 70px; display:flex; flex-direction:column; align-items:flex-start; }.contact h2 { font-size:clamp(60px,7vw,108px); }.button-light { margin:37px 0 auto; }.contact-links { display:flex; flex-direction:column; gap:6px; font:10px/1.7 "DM Mono",monospace; letter-spacing:.03em; }.contact-links a:hover { color:#d9c58d; }
footer { padding:22px 7vw; display:flex; justify-content:space-between; background:#29291f; color:#d8d2bf; font:10px/1.4 "DM Mono",monospace; text-transform:uppercase; letter-spacing:.06em; }
@media (max-width:760px) { .topbar { height:65px; }.topbar nav { gap:14px; }.hero { display:block; min-height:780px; }.hero-image { min-height:100%; position:absolute; inset:0; background-position:37% center; }.hero-copy { min-height:780px; display:flex; flex-direction:column; justify-content:flex-end; padding:105px 26px 95px; }.hero-note { left:26px; right:auto; bottom:33px; }.section { display:block; padding:84px 26px; }.section-mark { margin-bottom:25px; }.about-text { padding-top:33px; }.credentials { display:block; padding:28px 26px; }.credentials div { padding:22px 0; border-bottom:1px solid var(--line); }.credentials div:last-child { border:0; }.care-heading { margin-bottom:48px; }.contact { display:block; }.contact-art { height:270px; }.contact-copy { padding:70px 26px 48px; min-height:530px; } footer { gap:10px; padding:20px 26px; font-size:8px; } }
