.home{--paper: #f4efe7;--paper-2: #ebe4d7;--ink: #17140f;--ink-2: #2a2620;--home-muted: #7a7269;--rule: #d7cfc0;--accent: oklch(62% .11 55);--accent-2: oklch(62% .11 250);--serif: "Fraunces", "Cormorant Garamond", "Times New Roman", serif;--mono: "JetBrains Mono", ui-monospace, Menlo, monospace;background:var(--paper);color:var(--ink);font-family:var(--serif);-webkit-font-smoothing:antialiased}.home *{box-sizing:border-box}.home a{color:inherit;text-decoration:none}.home img{display:block;max-width:100%}.home-nav{position:sticky;top:0;z-index:50;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:22px 56px;background:color-mix(in srgb,var(--paper) 85%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid transparent;transition:border-color .3s}.home-nav.scrolled{border-bottom-color:var(--rule)}.home-nav .logo{display:flex;align-items:center;gap:12px}.home-nav .logo img{height:46px;width:46px;display:block}.home-nav .logo .mark{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--home-muted);line-height:1.4}.home-nav .logo .mark b{display:block;color:var(--ink);font-weight:500;font-size:11px}.home-nav ul{display:flex;gap:36px;list-style:none;margin:0;padding:0;justify-self:center}.home-nav ul a{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-2);position:relative;padding:6px 0;transition:color .2s}.home-nav ul a:hover{color:var(--accent)}.home-nav ul a.active:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--ink)}.home-nav .cta{justify-self:end;display:flex;gap:20px;align-items:center}.home-nav .cta .lang{font-family:var(--mono);font-size:11px;letter-spacing:.15em;color:var(--home-muted)}.home-nav .cta .book{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;border:1px solid var(--ink);padding:10px 18px;transition:all .2s}.home-nav .cta .book:hover{background:var(--ink);color:var(--paper)}.home-hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;background:none;border:none;padding:4px;justify-self:end}.home-hamburger span{width:24px;height:1px;background:var(--ink);display:block;transition:all .3s}.home .wrap{padding:0 56px}.home section{position:relative}.heroB{position:relative;height:92vh;min-height:820px;overflow:hidden}.heroB .bg{position:absolute;inset:0}.heroB .bg img{width:100%;height:100%;object-fit:cover}.heroB .bg.rose{background:repeating-linear-gradient(135deg,#ffffff05 0 10px,#fff0 10px 24px),radial-gradient(800px 600px at 70% 30%,#c28a7b,#6c3e38 40%,#23181a)}.heroB .vignette{position:absolute;inset:0;background:radial-gradient(ellipse at 60% 40%,transparent 30%,rgba(0,0,0,.55) 100%),linear-gradient(180deg,rgba(0,0,0,.35) 0%,transparent 20%,transparent 60%,rgba(0,0,0,.7) 100%);pointer-events:none}.heroB .content{position:absolute;inset:0;display:grid;grid-template-rows:1fr auto;padding:64px 56px;color:#fff}.heroB .top{display:flex;justify-content:space-between;align-items:flex-start}.heroB .top .meta{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;opacity:.8}.heroB .top .meta div{margin-bottom:4px}.heroB h1{font-family:var(--serif);font-weight:300;font-size:clamp(64px,9vw,160px);line-height:.9;letter-spacing:-.02em;margin:0;max-width:12ch;font-variation-settings:"opsz" 144}.heroB h1 em{font-style:italic;color:#e8c9a3;font-weight:400}.heroB .bottom{display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:40px}.heroB .lede{max-width:44ch;font-family:var(--serif);font-size:18px;line-height:1.55;opacity:.9;margin-top:28px}.heroB .scroll{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;display:flex;flex-direction:column;align-items:center;gap:10px;opacity:.8}.heroB .scroll .line{width:1px;height:60px;background:#fff;opacity:.4}.heroB .btn{justify-self:end;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding:16px 26px;background:#fff;color:#111;transition:background .2s,color .2s}.heroB .btn:hover{background:var(--accent);color:#fff}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;padding:96px 0 40px;border-bottom:1px solid var(--rule);margin-bottom:40px;gap:40px}.sec-head .left .num{font-family:var(--mono);font-size:11px;letter-spacing:.22em;color:var(--home-muted);text-transform:uppercase;display:flex;gap:14px;align-items:center}.sec-head .left .num .bar{width:28px;height:1px;background:var(--home-muted)}.sec-head .left h2{font-family:var(--serif);font-weight:300;font-size:clamp(56px,7vw,88px);line-height:.98;margin:18px 0 0;letter-spacing:-.02em}.sec-head .left h2 em{font-style:italic;color:var(--accent)}.sec-head .right{text-align:right}.sec-head .right .caption{font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--home-muted);text-transform:uppercase;max-width:28ch;display:block;margin-bottom:16px}.sec-head .right .link{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;padding-bottom:3px;border-bottom:1px solid var(--ink);transition:color .2s,border-color .2s}.sec-head .right .link:hover{color:var(--accent);border-bottom-color:var(--accent)}.home .portfolio{padding-bottom:40px}.grid-edit{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.tile{position:relative;overflow:hidden;background:#1c1915}.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.tile:hover img{transform:scale(1.04)}.tile .ph{position:absolute;inset:0}.tile .cap{position:absolute;left:16px;bottom:14px;right:16px;display:flex;justify-content:space-between;align-items:flex-end;color:#efe7d7;font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;z-index:2}.tile .cap .ttl{font-family:var(--serif);font-style:italic;font-weight:400;font-size:22px;text-transform:none;letter-spacing:0;color:#fff}.tile .badge{position:absolute;top:16px;left:16px;font-family:var(--mono);font-size:9px;letter-spacing:.16em;color:#efe7d7;opacity:.75;z-index:2}.tile .num{position:absolute;top:16px;right:16px;font-family:var(--mono);font-size:9px;letter-spacing:.16em;color:#efe7d7;opacity:.75;z-index:2}.tile:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.55) 100%);pointer-events:none;z-index:1}.t1{grid-column:span 7;aspect-ratio:3/2}.t2{grid-column:span 5;aspect-ratio:4/5}.t3,.t4,.t5{grid-column:span 4;aspect-ratio:4/5}.t6{grid-column:span 8;aspect-ratio:16/9}.t7{grid-column:span 4;aspect-ratio:1/1}.ph{background:repeating-linear-gradient(135deg,#ffffff0a 0 10px,#fff0 10px 22px),linear-gradient(135deg,#2b2620,#3a332a,#1f1c17)}.ph.warm{background:repeating-linear-gradient(135deg,#ffffff08 0 8px,#fff0 8px 18px),linear-gradient(160deg,#5b4a33,#8a6a45 55%,#3a2f22)}.ph.sage{background:repeating-linear-gradient(135deg,#ffffff08 0 8px,#fff0 8px 18px),linear-gradient(160deg,#2d3b2b,#4b5940,#1c241a)}.ph.dusk{background:repeating-linear-gradient(135deg,#ffffff0a 0 8px,#fff0 8px 18px),linear-gradient(160deg,#3a394f,#6b6b8a 45%,#1b1a29)}.ph.rose{background:repeating-linear-gradient(135deg,#ffffff08 0 8px,#fff0 8px 18px),linear-gradient(160deg,#7a4e55,#a8757a,#3b2a2d)}.ph.water{background:repeating-linear-gradient(135deg,#ffffff0a 0 8px,#fff0 8px 18px),linear-gradient(160deg,#2a3d47,#4d6974,#12202a)}.ph.stone{background:repeating-linear-gradient(135deg,#ffffff08 0 8px,#fff0 8px 18px),linear-gradient(160deg,#434139,#6b6659,#23211c)}.home .about{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding:120px 0}.home .about .portrait{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--paper-2)}.home .about .portrait img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home .about .portrait .frameCaption{position:absolute;top:18px;left:18px;font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:#efe7d7;z-index:2}.home .about .txt .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--home-muted);display:flex;gap:14px;align-items:center}.home .about .txt .eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.home .about .txt h2{font-family:var(--serif);font-weight:300;font-size:clamp(56px,7vw,88px);line-height:.98;margin:22px 0 0;letter-spacing:-.02em}.home .about .txt h2 em{font-style:italic;color:var(--accent)}.home .about .txt p{font-family:var(--serif);font-size:19px;line-height:1.6;color:var(--ink-2);max-width:50ch;margin-top:32px}.home .about .txt p em.accent{color:var(--accent);font-style:italic}.home .about .stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:28px 0}.home .about .stats .st{padding:4px 24px 4px 0;border-right:1px solid var(--rule)}.home .about .stats .st:last-child{border-right:none}.home .about .stats .num{font-family:var(--serif);font-weight:300;font-size:52px;line-height:1;font-style:italic}.home .about .stats .num.mono{font-family:var(--mono);font-weight:400;font-size:40px;font-style:normal;letter-spacing:-.04em}.home .about .stats .lbl{font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--home-muted);margin-top:10px}.home .about .morebtn{margin-top:40px;display:inline-flex;align-items:center;gap:14px;font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;border:1px solid var(--ink);padding:16px 26px;transition:background .2s,color .2s}.home .about .morebtn:hover{background:var(--ink);color:var(--paper)}.home .about .morebtn .arrow{display:inline-block;width:20px;height:1px;background:currentColor;position:relative}.home .about .morebtn .arrow:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}.home .journal{padding-bottom:80px}.jlist{border-top:1px solid var(--rule)}.jrow{display:grid;grid-template-columns:260px 1fr 180px 40px;align-items:center;gap:40px;padding:28px 0;border-bottom:1px solid var(--rule);transition:background .3s,padding .3s;color:inherit}.jrow:hover{background:var(--paper-2);padding-left:16px;padding-right:16px}.jrow .thumb{aspect-ratio:3/2;overflow:hidden;background:var(--paper-2);display:flex;align-items:center;justify-content:center}.jrow .thumb img{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.jrow:hover .thumb img{transform:scale(1.04)}.jrow .thumb-fallback{font-family:var(--mono);font-size:12px;letter-spacing:.22em;text-transform:uppercase;color:var(--home-muted)}.jrow .arrow{transition:transform .3s}.jrow:hover .arrow{transform:translate(6px)}.jrow .ttl{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.2;letter-spacing:-.01em}.jrow .ttl em{font-style:italic;color:var(--accent)}.jrow .tag{font-family:var(--mono);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--home-muted)}.jrow .date{font-family:var(--mono);font-size:11px;color:var(--ink-2);letter-spacing:.1em}.jrow .arrow{justify-self:end;width:24px;height:1px;background:var(--ink);position:relative}.jrow .arrow:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-top:1px solid var(--ink);border-right:1px solid var(--ink);transform:rotate(45deg)}.home .contact{background:var(--ink);color:var(--paper);padding:140px 56px;position:relative;overflow:hidden}.home .contact:before{content:"";position:absolute;inset:0;background:radial-gradient(1200px 600px at 20% 30%,rgba(210,170,110,.12),transparent 60%);pointer-events:none}.home .contact .inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative;max-width:1440px;margin:0 auto}.home .contact .eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:#bfb6a8;display:flex;gap:14px;align-items:center}.home .contact .eyebrow .dot{width:6px;height:6px;border-radius:50%;background:#e8c9a3}.home .contact h2{font-family:var(--serif);font-weight:300;font-size:clamp(64px,7.5vw,96px);line-height:1;margin:22px 0 0;letter-spacing:-.02em;max-width:12ch}.home .contact h2 em{font-style:italic;color:#e8c9a3}.home .contact .right{display:flex;flex-direction:column;gap:28px}.home .contact .lede{font-family:var(--serif);font-size:19px;line-height:1.55;color:#c9c0b2;max-width:44ch}.home .contact .lines{display:grid;grid-template-columns:120px 1fr;row-gap:16px;column-gap:32px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);margin-top:12px}.home .contact .lines dt{font-family:var(--mono);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:#8c8576}.home .contact .lines dd{margin:0;font-family:var(--serif);font-size:17px}.home .contact .lines dd a{transition:color .2s}.home .contact .lines dd a:hover{color:#e8c9a3}.home .contact .cta{margin-top:16px;display:inline-flex;align-items:center;gap:14px;align-self:flex-start;background:var(--paper);color:var(--ink);font-family:var(--mono);font-size:12px;letter-spacing:.2em;text-transform:uppercase;padding:20px 30px;transition:background .2s}.home .contact .cta:hover{background:#e8c9a3}.home-footer{display:grid;grid-template-columns:auto 1fr auto;gap:48px;align-items:center;padding:32px 56px;border-top:1px solid var(--rule);font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--home-muted);text-transform:uppercase;background:var(--paper)}.home-footer .brand{display:flex;align-items:center;gap:10px}.home-footer .brand img{height:32px;width:32px;display:block}.home-footer .brand span{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--ink)}.home-footer .mid{justify-self:center;display:flex;gap:40px;flex-wrap:wrap}.home-footer .right{justify-self:end;display:flex;gap:16px}.home-footer a{transition:color .2s}.home-footer a:hover{color:var(--accent)}.social-icon{display:inline-flex;align-items:center;justify-content:center;color:inherit;opacity:.7;transition:color .2s,opacity .2s,transform .2s}.social-icon:hover{opacity:1;color:var(--accent);transform:translateY(-1px)}.social-icon svg{display:block}.home-footer .social-icon{color:var(--ink)}.home .contact .social-row{display:inline-flex;gap:18px;align-items:center}.home .contact .social-icon{color:#e8c9a3}.roll-counter{position:fixed;right:24px;top:50%;transform:translateY(-50%);z-index:40;writing-mode:vertical-rl;font-family:var(--mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--home-muted);display:flex;flex-direction:column;gap:14px;align-items:center;pointer-events:none}.roll-counter .bar{width:1px;height:40px;background:var(--home-muted)}.home-mobile-menu{display:none;position:fixed;inset:0;background:var(--paper);z-index:99;flex-direction:column;align-items:center;justify-content:center;gap:2rem}.home-mobile-menu.open{display:flex}.home-mobile-menu a{font-family:var(--serif);font-size:2.5rem;font-weight:300;color:var(--ink);letter-spacing:-.01em}.home-mobile-menu a em{font-style:italic;color:var(--accent)}@media(max-width:1100px){.home .wrap{padding:0 32px}.home-nav{padding:18px 32px}.home-footer{padding:28px 32px}.heroB .content{padding:48px 32px}.home .contact{padding:100px 32px}.grid-edit{gap:12px}.t1{grid-column:span 7}.t2{grid-column:span 5}.t3,.t4,.t5{grid-column:span 6}.t6{grid-column:span 12}.t7{grid-column:span 6}.jrow{grid-template-columns:180px 1fr 140px;gap:24px}.jrow .arrow{display:none}.home .about{grid-template-columns:1fr;gap:48px;padding:80px 0}.home .about .portrait{max-width:520px}}@media(max-width:900px){.home-nav{grid-template-columns:auto 1fr;padding:16px 24px}.home-nav ul,.home-nav .cta{display:none}.home-hamburger{display:flex}.home .wrap{padding:0 24px}.heroB{min-height:640px;height:100vh}.heroB .content{padding:40px 24px}.heroB .bottom{grid-template-columns:1fr;gap:24px}.heroB .scroll{display:none}.heroB .btn{justify-self:start}.sec-head{flex-direction:column;align-items:flex-start;gap:24px;padding:72px 0 32px}.sec-head .right{text-align:left}.grid-edit{grid-template-columns:repeat(4,1fr)}.t1{grid-column:span 4;aspect-ratio:3/2}.t2{grid-column:span 4}.t3,.t4,.t5{grid-column:span 2}.t6{grid-column:span 4;aspect-ratio:16/9}.t7{grid-column:span 4;aspect-ratio:3/2}.jrow{grid-template-columns:1fr;gap:14px;padding:22px 0}.jrow .arrow{display:none}.jrow .thumb{aspect-ratio:3/2}.jrow .ttl{font-size:22px}.jrow:hover{padding-left:0;padding-right:0}.home .about .stats .num{font-size:40px}.home .about .stats .num.mono{font-size:32px}.home .contact{padding:80px 24px}.home .contact .inner{grid-template-columns:1fr;gap:40px}.home-footer{grid-template-columns:1fr;gap:20px;text-align:center;padding:28px 24px}.home-footer .brand,.home-footer .mid,.home-footer .right{justify-self:center}.roll-counter{display:none}}.home .cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--ink);color:var(--paper);padding:1.25rem 2rem;z-index:150;display:flex;align-items:center;gap:1.5rem;justify-content:space-between;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:.08em;border-top:1px solid rgba(255,255,255,.08);transition:transform .4s ease}.home .cookie-banner.hidden{transform:translateY(110%)}.home .cookie-text{max-width:600px;line-height:1.6;color:#c9c0b2;font-family:var(--serif);font-size:14px;letter-spacing:0}.home .cookie-text a{color:#e8c9a3;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.home .cookie-btns{display:flex;gap:.75rem;flex-shrink:0}.home .btn-cookie-accept{padding:.7rem 1.4rem;background:var(--paper);color:var(--ink);border:none;cursor:pointer;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;transition:background .2s}.home .btn-cookie-accept:hover{background:#e8c9a3}.home .btn-cookie-reject{padding:.7rem 1.4rem;background:transparent;color:#c9c0b2;border:1px solid rgba(255,255,255,.2);cursor:pointer;font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;transition:border-color .2s,color .2s}.home .btn-cookie-reject:hover{border-color:var(--paper);color:var(--paper)}@media(prefers-reduced-motion:reduce){.tile img,.home-nav,.jrow,.home .about .morebtn,.home .contact .cta,.home-nav .cta .book{transition:none}}
