:root{--cream:#f7f3ec;--paper:#fffdf9;--sage:#b9c9bc;--sage-l:#e4ebe3;--euc:#6f8f7e;--deep:#1f3a33;--navy:#1c2a3a;--brass:#b08d57;--ink:#3a3d3b;--muted:#6c716d;--line:#d8d2c6}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font:300 17px/1.85 Lato,system-ui,sans-serif;color:var(--ink);background:var(--cream);letter-spacing:.01em}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:500;line-height:1.15;color:var(--deep);margin:.2em 0 .5em}
h2{font-size:clamp(2.1rem,3.6vw,3rem)}h3{font-size:1.75rem}em{font-style:italic}
a{color:var(--euc)}.wrap{max-width:1160px;margin:0 auto;padding:0 28px}
.kicker,.nav nav a,.btn,.card a,.credits summary{font-family:"Josefin Sans",sans-serif;text-transform:uppercase;letter-spacing:.22em;font-weight:400}
.kicker{font-size:.75rem;color:var(--brass);margin:0 0 .4em}
.nav{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;padding:20px 40px;background:rgba(247,243,236,.95);border-bottom:1px solid var(--line)}
.nav.over{position:absolute;left:0;right:0;background:transparent;border-color:rgba(255,255,255,.35)}.nav.over a,.nav.over .brand{color:#fff}
.brand{font-family:"Cormorant Garamond",serif;font-size:1.45rem;font-weight:600;letter-spacing:.06em;text-decoration:none;color:var(--deep)}
.nav nav a{margin-left:34px;font-size:.78rem;text-decoration:none;color:var(--ink);transition:color .3s}.nav nav a:hover{color:var(--brass)}
.hero{position:relative;min-height:94vh;display:flex;align-items:center;justify-content:center;text-align:center;overflow:hidden;color:#fff}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 22%}
.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,35,30,.4),rgba(20,35,30,.38) 50%,rgba(20,35,30,.6))}
.hero-text{position:relative;padding-top:30vh}.hero .kicker{color:#f2e6cf}
.hero h1{color:#fff;font-weight:400;font-size:clamp(2.6rem,6vw,5rem);letter-spacing:.01em;text-shadow:0 2px 24px rgba(0,0,0,.3)}.hero h1 em{color:#e9f0e6}
.sub{max-width:600px;margin:0 auto 34px;font-size:1.1rem}
.btn{display:inline-block;font-size:.78rem;padding:15px 34px;border:1px solid currentColor;color:var(--deep);text-decoration:none;transition:background .3s,color .3s}
.btn.light{color:#fff}.btn:hover{background:var(--deep);color:#fff;border-color:var(--deep)}
.deco{display:flex;align-items:center;justify-content:center;gap:18px;padding:46px 0 0;color:var(--brass)}.deco span{width:120px;height:1px;background:var(--brass)}.deco i{font-style:normal;font-size:.7rem}
main section{margin:110px auto}
.split{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.split p{color:var(--muted)}
.photo{margin:0;overflow:hidden;position:relative}.photo img{width:100%;height:100%;display:block;object-fit:cover;transition:transform 1.2s ease}.photo:hover img{transform:scale(1.035)}
.tilt{aspect-ratio:4/5;outline:1px solid var(--brass);outline-offset:16px;margin:16px}
.apps{background:var(--sage-l);padding:110px 0;margin:0!important;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.intro{max-width:560px;margin:0 auto;color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:56px;text-align:center}
.card{background:var(--paper);padding:48px 34px 40px;border:1px solid var(--line);transition:transform .4s,box-shadow .4s}
.card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(31,58,51,.12)}
.card img{border-radius:22%;box-shadow:0 6px 16px rgba(0,0,0,.12)}.card h3{margin:22px 0 8px}.card p{color:var(--muted);font-size:.98rem}
.card a{font-size:.72rem;text-decoration:none;color:var(--deep);border-bottom:1px solid var(--brass);padding-bottom:4px}
.gallery{display:grid;grid-template-columns:1.25fr 1fr;gap:30px}.gallery .photo{aspect-ratio:4/3}.gallery .photo:last-child{margin-top:80px}
.contact{text-align:center}.contact-card{border:1px solid var(--line);background:var(--paper);padding:80px clamp(24px,6vw,90px);position:relative}
.contact-card:before{content:"";position:absolute;inset:12px;border:1px solid var(--sage);pointer-events:none}
.big{font-family:"Cormorant Garamond",serif;font-size:clamp(1.2rem,2.8vw,2rem);word-break:break-word}.big a{color:var(--deep);text-decoration:none;border-bottom:1px solid var(--brass)}
.doc{max-width:800px;background:var(--paper);border:1px solid var(--line);padding:64px clamp(22px,6vw,72px);margin:60px auto 90px}
.doc h1{font-size:clamp(2.2rem,5vw,3.2rem);text-align:center}.doc>.muted{text-align:center;font-family:"Josefin Sans";text-transform:uppercase;letter-spacing:.2em;font-size:.75rem}
.doc h2{font-size:1.6rem;margin-top:2em;padding-top:.6em;border-top:1px solid var(--line)}.doc li{margin:.4em 0}
.muted{color:var(--muted)}.lead{background:var(--sage-l);padding:20px 26px;border-left:2px solid var(--euc)}
footer{background:var(--deep);color:#cdd8d1;padding:56px 0;font-size:.9rem;text-align:center}footer a{color:#e4d3b0}
.credits summary{cursor:pointer;margin-top:18px;font-size:.72rem}.credits ul{text-align:left;max-width:860px;margin:16px auto}.credits li{margin:6px 0}
@media(max-width:860px){.split,.gallery{grid-template-columns:1fr;gap:48px}.gallery .photo:last-child{margin-top:0}.cards{grid-template-columns:1fr}.nav{padding:16px 20px}.nav nav a{margin-left:16px;font-size:.68rem;letter-spacing:.14em}.brand{font-size:1.1rem}main section{margin:76px auto}.apps{padding:76px 0}.hero{min-height:80svh}.hero-img{object-position:55% 20%}.hero-text{padding-top:22svh}.tilt{margin:16px 16px 0}}
@media(max-width:420px){.nav nav a:nth-child(3){display:none}}
