 :root{--bg:#0d0d0e;--bg2:#161618;--fg:#ecebe8;--mute:#9a9893;--line:#2a2a2d;--accent:#c9a46a; --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif; --sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif} *{box-sizing:border-box;margin:0;padding:0} html{scroll-behavior:smooth} body{background:var(--bg);color:var(--fg);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased} img,picture{display:block;width:100%;height:auto} a{color:inherit;text-decoration:none} .wrap{max-width:1240px;margin:0 auto;padding:0 24px} h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:.01em;line-height:1.2} h1{font-size:clamp(2.2rem,5vw,4rem)}h2{font-size:clamp(1.7rem,3vw,2.4rem)}h3{font-size:1.4rem} .eyebrow{font-size:.75rem;letter-spacing:.25em;text-transform:uppercase;color:var(--accent)} .mute{color:var(--mute)} header.top{position:fixed;inset:0 0 auto;z-index:50;transition:background .3s} header.top.solid,body:not(.has-hero) header.top{background:rgba(13,13,14,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)} .nav{display:flex;align-items:center;justify-content:space-between;height:72px} .logo{font-family:var(--serif);font-size:1.15rem;letter-spacing:.08em} .logo picture,.logo img{display:block;width:auto;height:56px} .foot-sig{flex-basis:100%}.foot-sig img{width:120px;height:auto;opacity:.7} .sig img{width:220px;height:auto;margin:8px 0 24px;opacity:.9} @media(max-width:860px){.logo picture,.logo img{height:40px}} .logo small{display:block;font-family:var(--sans);font-size:.6rem;letter-spacing:.3em;color:var(--mute);text-transform:uppercase} .menu{display:flex;gap:28px;align-items:center;font-size:.85rem;letter-spacing:.08em;text-transform:uppercase} .menu a{opacity:.8}.menu a:hover,.menu a[aria-current]{opacity:1;color:var(--accent)} .lang{border:1px solid var(--line);padding:4px 10px;border-radius:2px;font-size:.75rem} .burger{display:none;background:none;border:0;color:var(--fg);font-size:1.6rem;cursor:pointer} @media(max-width:860px){.burger{display:block}.menu{position:fixed;inset:72px 0 auto;background:var(--bg);flex-direction:column;padding:28px;gap:22px;border-bottom:1px solid var(--line);display:none}.menu.open{display:flex}} main{min-height:70vh} body:not(.has-hero) main{padding-top:72px} .hero{position:relative;height:100svh;min-height:520px;overflow:hidden} .hero picture,.hero img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--pos,50% 50%)} .hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.28),rgba(0,0,0,0) 22%,rgba(0,0,0,0) 50%,rgba(0,0,0,.7))} .hero .txt{position:absolute;z-index:2;left:0;right:0;bottom:12vh;text-align:center} .hero p{margin:14px 0 30px;color:#ddd} .btn{display:inline-block;padding:14px 30px;border:1px solid var(--fg);font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;transition:.25s;cursor:pointer;background:none;color:var(--fg)} .btn:hover{background:var(--fg);color:var(--bg)} .btn.solid{background:var(--accent);border-color:var(--accent);color:#111}.btn.solid:hover{background:#ddb97f} section{padding:96px 0} .center{text-align:center;max-width:680px;margin:0 auto} .center p{margin-top:18px} .sec-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:40px;gap:20px;flex-wrap:wrap} .sec-head a{font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;color:var(--accent)} .grid-tours{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:32px} .card{background:var(--bg2);border:1px solid var(--line);transition:.3s;display:flex;flex-direction:column} .card:hover{border-color:#444} .card .ph{aspect-ratio:3/2;overflow:hidden}.card .ph img{height:100%;object-fit:cover;transition:transform .8s} .card:hover .ph img{transform:scale(1.04)} .card .bd{padding:24px}.card .meta{font-size:.85rem;color:var(--mute);margin:6px 0 12px} .card .price{margin-top:auto;padding:0 24px 24px;display:flex;justify-content:space-between;color:var(--accent)} .gallery{columns:3 320px;column-gap:14px} .gallery a{display:block;margin-bottom:14px;break-inside:avoid;position:relative;overflow:hidden;cursor:zoom-in} .gallery a span{position:absolute;left:0;right:0;bottom:0;padding:30px 16px 12px;font-size:.85rem;background:linear-gradient(transparent,rgba(0,0,0,.7));opacity:0;transition:.3s} .gallery a:hover span{opacity:1} .lb{position:fixed;inset:0;background:rgba(0,0,0,.96);z-index:100;display:none;align-items:center;justify-content:center} .lb.open{display:flex}.lb img{max-width:94vw;max-height:88vh;width:auto;object-fit:contain} .lb p{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:var(--mute);font-size:.9rem} .lb button{position:absolute;background:none;border:0;color:#fff;font-size:2rem;cursor:pointer;padding:16px;opacity:.7} .lb button:hover{opacity:1}.lb .x{top:8px;right:12px}.lb .pv{left:8px}.lb .nx{right:8px} .page-head{padding-top:80px;padding-bottom:40px} .tour-hero{aspect-ratio:21/9;overflow:hidden;max-height:70vh}.tour-hero img{height:100%;object-fit:cover;object-position:var(--pos,50% 50%)} @media(max-width:700px){.tour-hero{aspect-ratio:4/3}} .tour{padding-top:56px;padding-bottom:72px} .tour-head{text-align:center;max-width:820px;margin:0 auto 40px}.tour-head h1{margin:14px 0 8px}.tour-head .lead{font-size:1.15rem;margin-top:16px} .tour-photo{max-width:1040px;margin:0 auto} .facts{max-width:1040px;margin:32px auto 0;display:grid;grid-template-columns:repeat(4,1fr);background:var(--bg2);border:1px solid var(--line)} .facts div{padding:22px 16px;text-align:center;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:6px;justify-content:center}.facts div:first-child{border-left:0} .facts b{font-weight:400}.facts .big{font-family:var(--serif);font-size:1.8rem;color:var(--accent);line-height:1.1} .cta{text-align:center;margin-top:32px} .tour-body{max-width:760px;margin:64px auto 0}.tour-body p{margin-bottom:18px}.tour-body h3{margin-top:28px} @media(max-width:700px){.facts{grid-template-columns:1fr 1fr}.facts div:nth-child(3){border-left:0}.facts div:nth-child(n+3){border-top:1px solid var(--line)}} .social{display:flex;gap:16px;align-items:center}.social svg{width:20px;height:20px;display:block} .tour-gal{padding:0 0 96px} .soon{position:relative;overflow:hidden;min-height:440px;display:flex;align-items:center;justify-content:center;text-align:center;border:1px solid var(--line)} .soon picture,.soon>picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover} .soon::after{content:"";position:absolute;inset:0;background:rgba(10,10,12,.62)} .soon .in{position:relative;z-index:2;max-width:640px;padding:56px 24px}.soon h2{margin:12px 0 16px}.soon p{color:#ddd;margin-bottom:28px}.tour-gal h2{margin-bottom:28px;text-align:center} .tour-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:56px;padding:64px 0} .tour-grid p{margin-bottom:18px} .box{background:var(--bg2);border:1px solid var(--line);padding:32px;position:sticky;top:96px;align-self:start} .box dl{display:grid;grid-template-columns:auto 1fr;gap:10px 18px;margin:20px 0 28px}.box dt{color:var(--mute)} .box .big{font-family:var(--serif);font-size:2.2rem;color:var(--accent)} ul.chk{list-style:none;margin:10px 0 26px}ul.chk li{padding:6px 0 6px 26px;position:relative;border-bottom:1px solid var(--line)} ul.chk li::before{content:"—";position:absolute;left:0;color:var(--accent)} @media(max-width:860px){.tour-grid{grid-template-columns:1fr}.box{position:static}} .about{display:grid;grid-template-columns:1fr 1.2fr;gap:64px;align-items:start;padding:56px 0 96px}.about>div:first-child{position:sticky;top:110px} .about p{margin-bottom:18px;font-size:1.05rem} @media(max-width:860px){.about{grid-template-columns:1fr;gap:32px}.about>div:first-child{position:static}} form.contact{max-width:620px;display:grid;gap:18px;margin-top:36px} form.contact label{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)} form.contact input,form.contact textarea{width:100%;background:var(--bg2);border:1px solid var(--line);color:var(--fg);padding:14px;font:inherit;margin-top:6px} form.contact input:focus,form.contact textarea:focus{outline:none;border-color:var(--accent)} form.contact .ck{display:flex;gap:10px;align-items:center;text-transform:none;letter-spacing:0;font-size:.9rem} form.contact .ck input{width:auto;margin:0} .prose{max-width:760px;padding-bottom:96px}.prose p,.prose h2{margin-bottom:18px} footer{border-top:1px solid var(--line);padding:40px 0;font-size:.85rem;color:var(--mute)} footer .wrap{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap} footer nav{display:flex;gap:20px;flex-wrap:wrap;align-items:center}footer a:hover{color:var(--fg)}