:root{--cream:#f7f1e8;--light:#fffaf4;--ink:#3e322d;--muted:#82736d;--rose:#b97f78;--peach:#ead7c8;--line:#d9cbc0;--serif:'Italiana',serif;--sans:'DM Sans',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);overflow-x:hidden}header{position:absolute;z-index:5;top:0;width:100%;height:92px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(62,50,45,.16)}.brand{display:flex;flex-direction:column;color:inherit;text-decoration:none;text-align:center}.brand b{font-family:var(--serif);font-size:26px;letter-spacing:5px;font-weight:400}.brand span{font-size:7px;letter-spacing:5px;margin-top:7px}nav{display:flex;gap:36px}nav a,footer a{color:inherit;text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:2px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;padding:17px 22px;background:var(--ink);color:white;text-decoration:none;text-transform:uppercase;font-size:10px;letter-spacing:1.8px;transition:.25s}.button:hover{background:var(--rose);transform:translateY(-2px)}.button i{font-style:normal}.button-small{padding:13px 17px}.menu{display:none;border:0;background:none}.hero{min-height:760px;height:100svh;position:relative;display:flex;align-items:center;padding:120px 8vw 60px;overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(250,246,239,.96),rgba(250,246,239,.72) 41%,transparent 69%)}.hero-copy{position:relative;z-index:1;max-width:690px}.label{font-size:9px;letter-spacing:4px;margin:0 0 24px}.rose{color:var(--rose)}h1,h2{font-family:var(--serif);font-weight:400;line-height:.98;margin:0}h1{font-size:clamp(73px,8.6vw,138px);letter-spacing:-3px}h1 em,h2 em{font-style:italic;color:var(--rose)}.hero-copy>p:not(.label){max-width:480px;line-height:1.8;color:#756963;margin:30px 0}.hero-copy>div{display:flex;align-items:center;gap:28px}.link{color:inherit;text-transform:uppercase;text-decoration:none;font-size:9px;letter-spacing:2px}.hero-card{position:absolute;z-index:1;right:4vw;bottom:45px;background:rgba(255,250,244,.85);backdrop-filter:blur(8px);padding:22px 30px;border:1px solid rgba(62,50,45,.12)}.hero-card span{font-size:8px;letter-spacing:3px;color:var(--rose)}.hero-card p{font-family:var(--serif);font-size:18px;line-height:1.5;margin:8px 0 0}.marquee{padding:18px 0;border-block:1px solid var(--line);overflow:hidden;background:var(--light);color:#b5a69c}.marquee div{white-space:nowrap;font-family:var(--serif);font-size:20px;letter-spacing:4px;animation:move 25s linear infinite}@keyframes move{to{transform:translateX(-50%)}}.section{padding:135px 8vw}.intro{display:grid;grid-template-columns:70px 1.15fr .72fr;gap:6vw;align-items:center;background-color:var(--cream);background-image:radial-gradient(circle,rgba(185,127,120,.13) 1px,transparent 1.5px);background-size:26px 26px}.intro-number{align-self:start;color:var(--rose);font-size:10px}.intro h2,.heading h2,.prices h2,.contact h2{font-size:clamp(55px,6.2vw,98px)}.intro-copy>p:not(.label){line-height:1.9;color:var(--muted);max-width:580px}.under{display:inline-block;border-bottom:1px solid var(--rose);padding:20px 0 8px}.portrait{height:650px;position:relative}.portrait img{width:100%;height:100%;object-fit:cover}.portrait span{position:absolute;left:-43px;bottom:55px;width:90px;height:90px;border-radius:50%;display:grid;place-content:center;text-align:center;background:var(--rose);color:white;font-family:var(--serif);font-size:13px;line-height:1.4}.services{background-color:#fffaf4;background-image:linear-gradient(120deg,transparent 0 60%,rgba(185,127,120,.06) 60% 60.15%,transparent 60.15%)}.heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;margin-bottom:70px}.heading>p:last-child{justify-self:end;max-width:430px;color:var(--muted);line-height:1.8}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.cards article{min-height:330px;padding:32px 28px;border:1px solid var(--line);display:flex;flex-direction:column;background:#fffdf9;transition:.3s}.cards article:nth-child(even){background:var(--peach)}.cards article:hover{transform:translateY(-8px);box-shadow:0 20px 50px rgba(89,66,55,.1)}.cards span{font-size:9px;color:var(--rose)}.cards h3{font-family:var(--serif);font-size:32px;font-weight:400;margin:55px 0 20px}.cards p{font-size:13px;line-height:1.7;color:var(--muted)}.cards b{margin-top:auto;font-weight:500;font-size:12px}.image-break{height:90vh;min-height:680px;position:relative;display:flex;align-items:center;padding:100px 8vw;background:url("assets/hero-elane.png") center/cover fixed}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(64,49,43,.82),rgba(64,49,43,.42) 55%,rgba(64,49,43,.08))}.image-copy{position:relative;color:#fff}.image-copy>p{font-size:9px;letter-spacing:5px}.image-copy h2{font-size:clamp(65px,8vw,128px);margin:20px 0 40px}.image-copy h2 em{color:#f1c9c0}.image-copy .button{background:var(--light);color:var(--ink)}.vertical{position:absolute;right:3vw;bottom:50px;writing-mode:vertical-rl;color:white;font-size:8px;letter-spacing:4px}.prices{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;background-color:#f3e8dd;background-image:url("data:image/svg+xml,%3Csvg width='90' height='90' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%23b97f78' stroke-opacity='.09'%3E%3Ccircle cx='45' cy='45' r='28'/%3E%3Ccircle cx='45' cy='45' r='13'/%3E%3C/g%3E%3C/svg%3E")}.price-note{line-height:1.8;color:var(--muted);max-width:380px}.price-columns{display:grid;grid-template-columns:1fr 1fr;gap:55px}.price-columns h3{font-family:var(--serif);font-weight:400;font-size:31px;color:var(--rose);border-bottom:1px solid var(--line);padding-bottom:17px}.price-columns p{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:16px 0;font-size:12px}.price-columns b{font-weight:500}.testimonial{text-align:center;padding:130px max(8vw,calc((100vw - 1100px)/2));background:var(--light)}.testimonial>div{color:var(--rose);letter-spacing:8px}.testimonial blockquote{font-family:var(--serif);font-size:clamp(30px,4vw,58px);line-height:1.35;margin:35px 0}.testimonial p{font-size:9px;letter-spacing:3px;color:var(--muted)}.contact{display:grid;grid-template-columns:1fr 1fr;align-items:end;background:linear-gradient(135deg,#f8f1e9,#ead4c5)}.contact .button{margin-top:40px}.details{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding-left:65px;border-left:1px solid rgba(62,50,45,.18)}.details span{font-size:8px;letter-spacing:3px;color:var(--rose)}.details p{line-height:1.8;color:var(--muted)}footer{padding:42px 5vw;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:white}footer p{font-size:8px;letter-spacing:3px;color:#b9aaa3}footer div{display:flex;gap:24px}.reveal{opacity:0;transform:translateY(30px);transition:.8s}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){header{height:80px;padding:0 22px}header nav,.button-small{display:none}.menu{display:block}.menu span{display:block;width:25px;height:1px;background:var(--ink);margin:7px}header.open nav{display:flex;position:absolute;top:80px;left:0;right:0;padding:30px;background:var(--light);flex-direction:column}.hero{min-height:700px;padding:120px 24px 55px;align-items:flex-end}.hero:after{background:linear-gradient(0deg,rgba(250,246,239,.97),rgba(250,246,239,.38) 75%)}h1{font-size:clamp(62px,17vw,94px)}.hero-card{display:none}.section{padding:90px 24px}.intro{grid-template-columns:1fr}.portrait{height:560px}.portrait span{left:18px}.heading,.prices,.contact{grid-template-columns:1fr;gap:55px}.heading>p:last-child{justify-self:start}.cards{grid-template-columns:1fr 1fr}.image-break{height:75vh;min-height:620px;padding:80px 24px;background-attachment:scroll;background-position:62% center}.vertical{display:none}.price-columns{gap:24px}.details{padding:40px 0 0;border-left:0;border-top:1px solid rgba(62,50,45,.18)}footer{flex-direction:column;gap:28px}footer div{flex-wrap:wrap;justify-content:center}}
@media(max-width:560px){.hero-copy>div{align-items:flex-start;flex-direction:column}.cards,.price-columns,.details{grid-template-columns:1fr}.cards article{min-height:270px}.portrait{height:480px}.image-copy h2{font-size:15vw}.testimonial{padding:85px 24px}.brand span{letter-spacing:3px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee div{animation:none}.reveal{opacity:1;transform:none;transition:none}}
