@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&family=Inter:wght@300;400;500;600&display=swap";:root{--color-bg: #F5F1EB;--color-bg-alt: #EDE8E0;--color-primary: #8B2500;--color-primary-light: #A0522D;--color-primary-hover: #6B1C00;--color-text: #2C2C2C;--color-text-light: #6B6B6B;--color-text-muted: #9A9A9A;--color-border: #D4CFC7;--color-white: #FDFCFA;--color-dark: #1A1A1A;--color-dark-overlay: rgba(26, 26, 26, .55);--font-serif: "Playfair Display", "Georgia", serif;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 2rem;--space-lg: 4rem;--space-xl: 6rem;--space-2xl: 8rem;--space-3xl: 12rem;--max-width: 1200px;--max-width-narrow: 800px;--max-width-wide: 1400px;--nav-height: 72px;--transition: .3s ease;--transition-slow: .6s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-sans);background-color:var(--color-bg);color:var(--color-text);line-height:1.7;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;transition:color var(--transition)}ul,ol{list-style:none}button{font-family:inherit;cursor:pointer;border:none;background:none}h1,h2,h3,h4,h5{font-family:var(--font-serif);font-weight:400;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4.5rem);letter-spacing:-.02em}h2{font-size:clamp(2rem,3.5vw,3rem);letter-spacing:-.01em}h3{font-size:clamp(1.4rem,2vw,1.8rem)}h4{font-size:1.2rem}p{font-size:1rem;max-width:65ch}.text-lg{font-size:1.125rem}.text-sm{font-size:.875rem}.text-xs{font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:500}.text-center{text-align:center}.text-muted{color:var(--color-text-light)}.container{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-md)}.container--narrow{max-width:var(--max-width-narrow)}.container--wide{max-width:var(--max-width-wide)}.section{padding:var(--space-xl) 0}.section--large{padding:var(--space-2xl) 0}.divider{width:100%;height:1px;background:var(--color-border);margin:var(--space-lg) 0}.divider--small{width:60px;height:1px;background:var(--color-primary);margin:var(--space-md) 0}.nav{position:fixed;top:0;left:0;right:0;z-index:1000;background:var(--color-bg);border-bottom:1px solid transparent;transition:border-color var(--transition),background var(--transition);height:var(--nav-height)}.nav--scrolled{border-bottom-color:var(--color-border)}.nav__inner{max-width:var(--max-width-wide);margin:0 auto;padding:0 var(--space-md);display:flex;align-items:center;justify-content:space-between;height:100%}.nav__logo{display:flex;align-items:center;gap:.75rem}.nav__logo img{height:44px;width:auto}.nav__logo-text{font-family:var(--font-serif);font-size:1.2rem;font-weight:500;letter-spacing:.02em}.nav__links{display:flex;align-items:center;gap:var(--space-md)}.nav__link{font-size:.875rem;letter-spacing:.04em;text-transform:uppercase;font-weight:400;position:relative;padding:.25rem 0}.nav__link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--color-primary);transition:width var(--transition)}.nav__link:hover:after,.nav__link--active:after{width:100%}.nav__link:hover{color:var(--color-primary)}.nav__hamburger{display:none;flex-direction:column;gap:5px;padding:.5rem;z-index:1001}.nav__hamburger span{display:block;width:24px;height:1.5px;background:var(--color-text);transition:transform var(--transition),opacity var(--transition)}.nav__hamburger--active span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}.nav__hamburger--active span:nth-child(2){opacity:0}.nav__hamburger--active span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}.nav__dropdown{position:relative}.nav__dropdown-menu{position:absolute;top:100%;left:50%;transform:translate(-50%);background:var(--color-bg);border:1px solid var(--color-border);padding:.75rem 0;min-width:180px;opacity:0;visibility:hidden;transition:opacity var(--transition),visibility var(--transition);z-index:1001;margin-top:.5rem}.nav__dropdown:hover .nav__dropdown-menu{opacity:1;visibility:visible}.nav__dropdown-menu a{display:block;padding:.5rem 1.25rem;font-size:.85rem;color:var(--color-text-light);transition:color var(--transition),background var(--transition)}.nav__dropdown-menu a:hover{color:var(--color-primary);background:var(--color-bg-alt)}.nav__mobile{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:var(--color-bg);z-index:999;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-md)}.nav__mobile--open{display:flex}.nav__mobile a{font-family:var(--font-serif);font-size:2rem;transition:color var(--transition)}.nav__mobile a:hover{color:var(--color-primary)}.hero{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;text-align:center;padding:var(--space-3xl) var(--space-md);position:relative;overflow:hidden}.hero--image{background-size:cover;background-position:center;background-repeat:no-repeat;color:var(--color-white)}.hero--image:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--color-dark-overlay);z-index:1}.hero--image .hero__content{position:relative;z-index:2}.hero__content{max-width:800px}.hero__eyebrow{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;margin-bottom:var(--space-md);color:var(--color-primary)}.hero--image .hero__eyebrow{color:#fffc}.hero__title{margin-bottom:var(--space-md)}.hero__subtitle{font-size:1.125rem;line-height:1.8;color:var(--color-text-light);max-width:600px;margin:0 auto}.hero--image .hero__subtitle{color:#ffffffd9}.page-hero{padding:calc(var(--nav-height) + var(--space-xl)) var(--space-md) var(--space-xl);text-align:center;border-bottom:1px solid var(--color-border)}.page-hero__eyebrow{font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;color:var(--color-primary);margin-bottom:var(--space-sm)}.page-hero__title{margin-bottom:var(--space-sm)}.page-hero__desc{color:var(--color-text-light);max-width:600px;margin:0 auto;font-size:1.05rem;line-height:1.8}.btn{display:inline-block;padding:.875rem 2.5rem;font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;transition:all var(--transition);border:1px solid transparent}.btn--primary{background:var(--color-primary);color:var(--color-white);border-color:var(--color-primary)}.btn--primary:hover{background:var(--color-primary-hover);border-color:var(--color-primary-hover)}.btn--outline{background:transparent;color:var(--color-text);border-color:var(--color-text)}.btn--outline:hover{background:var(--color-text);color:var(--color-bg)}.btn--outline-light{background:transparent;color:var(--color-white);border-color:#ffffff80}.btn--outline-light:hover{background:var(--color-white);color:var(--color-text)}.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md)}.card{position:relative;overflow:hidden;background:var(--color-white);transition:transform var(--transition)}.card:hover{transform:translateY(-4px)}.card__image{width:100%;aspect-ratio:4 / 3;object-fit:cover;transition:transform var(--transition-slow)}.card:hover .card__image{transform:scale(1.03)}.card__image-wrap{overflow:hidden}.card__body{padding:var(--space-md)}.card__eyebrow{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--color-primary);margin-bottom:var(--space-xs)}.card__title{font-family:var(--font-serif);font-size:1.3rem;margin-bottom:var(--space-xs)}.card__desc{color:var(--color-text-light);font-size:.9rem;line-height:1.7}.card__meta{display:flex;gap:var(--space-sm);margin-top:var(--space-sm);font-size:.8rem;color:var(--color-text-muted)}.card__link{display:inline-block;margin-top:var(--space-sm);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--color-primary);position:relative;padding-bottom:2px;border-bottom:1px solid var(--color-primary);transition:opacity var(--transition)}.card__link:hover{opacity:.7}.tours-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px}.tour-card{position:relative;aspect-ratio:3 / 4;overflow:hidden;cursor:pointer}.tour-card__image{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.tour-card:hover .tour-card__image{transform:scale(1.05)}.tour-card__overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,rgba(0,0,0,.6) 0%,transparent 50%);display:flex;flex-direction:column;justify-content:flex-end;padding:var(--space-md);color:var(--color-white);transition:background var(--transition)}.tour-card:hover .tour-card__overlay{background:linear-gradient(to top,#000000b3,#0000001a 60%)}.tour-card__eyebrow{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;margin-bottom:.5rem;opacity:.8}.tour-card__title{font-family:var(--font-serif);font-size:1.5rem;margin-bottom:.5rem}.tour-card__desc{font-size:.85rem;line-height:1.6;opacity:0;max-height:0;transition:opacity var(--transition),max-height var(--transition)}.tour-card:hover .tour-card__desc{opacity:.85;max-height:100px}.quote-section{padding:var(--space-2xl) var(--space-md);text-align:center;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.quote-section__text{font-family:var(--font-serif);font-size:clamp(1.5rem,3vw,2.5rem);font-style:italic;line-height:1.5;max-width:850px;margin:0 auto;font-weight:400}.quote-section__attr{margin-top:var(--space-md);font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-muted)}.split{display:grid;grid-template-columns:1fr 1fr;min-height:600px}.split__content{display:flex;flex-direction:column;justify-content:center;padding:var(--space-xl)}.split__content h2{margin-bottom:var(--space-md)}.split__content p{color:var(--color-text-light);line-height:1.8;margin-bottom:var(--space-md)}.split__image{width:100%;height:100%;object-fit:cover}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);text-align:center}.step__number{font-family:var(--font-serif);font-size:3rem;color:var(--color-primary);margin-bottom:var(--space-sm);font-weight:400}.step__title{font-family:var(--font-serif);font-size:1.3rem;margin-bottom:var(--space-xs)}.step__desc{color:var(--color-text-light);font-size:.9rem;line-height:1.7}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.info-card{padding:var(--space-md);border:1px solid var(--color-border);transition:border-color var(--transition)}.info-card:hover{border-color:var(--color-primary)}.info-card__icon{font-size:1.5rem;margin-bottom:var(--space-sm)}.info-card__title{font-family:var(--font-serif);font-size:1.2rem;margin-bottom:var(--space-xs)}.info-card__desc{color:var(--color-text-light);font-size:.9rem;line-height:1.7}.form{max-width:600px}.form__group{margin-bottom:var(--space-md)}.form__label{display:block;font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500;margin-bottom:var(--space-xs)}.form__input,.form__textarea,.form__select{width:100%;padding:.875rem 1rem;font-family:var(--font-sans);font-size:1rem;border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text);transition:border-color var(--transition);outline:none}.form__input:focus,.form__textarea:focus,.form__select:focus{border-color:var(--color-primary)}.form__textarea{min-height:160px;resize:vertical}.footer{background:var(--color-dark);color:#ffffffb3;padding:var(--space-xl) 0 var(--space-md)}.footer__grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:var(--space-lg);margin-bottom:var(--space-lg)}.footer__brand p{margin-top:var(--space-sm);font-size:.9rem;line-height:1.7;max-width:300px}.footer__heading{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;font-weight:600;color:#fff6;margin-bottom:var(--space-sm)}.footer__links li{margin-bottom:.6rem}.footer__links a{font-size:.9rem;transition:color var(--transition)}.footer__links a:hover{color:#fff}.footer__social{display:flex;gap:var(--space-sm);margin-top:var(--space-sm)}.footer__social a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid rgba(255,255,255,.2);border-radius:50%;transition:all var(--transition)}.footer__social a:hover{border-color:var(--color-primary);background:var(--color-primary);color:#fff}.footer__social svg{width:18px;height:18px;fill:currentColor}.footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:var(--space-md);display:flex;justify-content:space-between;align-items:center;font-size:.8rem;color:#fff6}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.reveal--visible{opacity:1;transform:translateY(0)}.legal-content{padding:calc(var(--nav-height) + var(--space-xl)) var(--space-md) var(--space-xl);max-width:var(--max-width-narrow);margin:0 auto}.legal-content h1{font-size:clamp(2rem,3vw,2.5rem);margin-bottom:var(--space-sm)}.legal-content .legal-date{font-size:.85rem;color:var(--color-text-muted);margin-bottom:var(--space-lg)}.legal-content h2{font-size:1.4rem;margin-top:var(--space-lg);margin-bottom:var(--space-sm)}.legal-content p{margin-bottom:var(--space-sm);color:var(--color-text-light);line-height:1.8;max-width:none}.legal-content ul{margin-bottom:var(--space-sm);padding-left:var(--space-md)}.legal-content ul li{list-style:disc;margin-bottom:.4rem;color:var(--color-text-light);line-height:1.7}.tour-hero{position:relative;min-height:60vh;background-size:cover;background-position:center;display:flex;align-items:flex-end}.tour-hero__overlay{width:100%;background:linear-gradient(to top,#000000b3,#00000026 60%);padding:calc(var(--nav-height) + var(--space-xl)) var(--space-md) var(--space-xl)}.tour-hero__content{max-width:var(--max-width);margin:0 auto;color:var(--color-white)}.tour-hero__tag{display:inline-block;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;font-weight:500;background:var(--color-primary);color:var(--color-white);padding:.3rem .8rem;margin-bottom:var(--space-sm)}.tour-hero__title{font-size:clamp(2rem,4vw,3.5rem);margin-bottom:var(--space-sm);color:var(--color-white)}.tour-hero__subtitle{font-size:1.05rem;line-height:1.8;max-width:650px;opacity:.9}.tour-overview{background:var(--color-white);border-bottom:1px solid var(--color-border);padding:var(--space-md) 0}.tour-overview__inner{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-md);display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--space-sm)}.tour-overview__item{display:flex;flex-direction:column;gap:.25rem;min-width:100px}.tour-overview__label{font-size:.65rem;letter-spacing:.12em;text-transform:uppercase;font-weight:500;color:var(--color-text-muted)}.tour-overview__value{font-family:var(--font-serif);font-size:1.1rem}.tour-highlights{list-style:none;padding:0}.tour-highlights__item{position:relative;padding-left:1.5rem;margin-bottom:.75rem;font-size:1rem;line-height:1.7;color:var(--color-text-light)}.tour-highlights__item:before{content:"";position:absolute;left:0;top:.6rem;width:8px;height:8px;background:var(--color-primary);border-radius:50%}.tour-itinerary{display:flex;flex-direction:column;gap:0}.tour-day{padding:var(--space-md) 0;border-bottom:1px solid var(--color-border)}.tour-day:last-child{border-bottom:none}.tour-day__header{display:flex;align-items:baseline;gap:var(--space-sm);margin-bottom:.75rem}.tour-day__number{font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;font-weight:600;color:var(--color-primary);flex-shrink:0;min-width:45px}.tour-day__title{font-family:var(--font-serif);font-size:1.2rem;font-weight:400}.tour-day__desc{color:var(--color-text-light);font-size:.95rem;line-height:1.8;max-width:none;margin-bottom:.5rem}.tour-day__meta{display:flex;gap:var(--space-md);font-size:.8rem;color:var(--color-text-muted);margin-top:.5rem}.tour-includes{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg)}.tour-includes__heading{font-family:var(--font-serif);font-size:1.1rem;margin-bottom:var(--space-sm);padding-bottom:.5rem;border-bottom:2px solid var(--color-border)}.tour-includes__heading--yes{border-bottom-color:#3a7d44}.tour-includes__heading--no{border-bottom-color:var(--color-primary)}.tour-includes__list{list-style:none;padding:0}.tour-includes__list li{position:relative;padding-left:1.5rem;margin-bottom:.6rem;font-size:.9rem;line-height:1.6;color:var(--color-text-light)}.tour-includes__list li:before{content:"✓";position:absolute;left:0;color:#3a7d44;font-weight:700}.tour-includes__list--no li:before{content:"✗";color:var(--color-primary)}.tour-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:4px}.tour-gallery__img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform var(--transition-slow)}.tour-gallery__img:hover{transform:scale(1.02)}.tour-dates{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:.75rem}.tour-dates__item{padding:.6rem 1.25rem;border:1px solid var(--color-border);font-size:.9rem;color:var(--color-text);transition:border-color var(--transition)}.tour-dates__item:hover{border-color:var(--color-primary)}.tour-policy p{color:var(--color-text-light);line-height:1.8;margin-bottom:var(--space-sm);max-width:none}@media(max-width:1024px){.card-grid,.tours-grid{grid-template-columns:repeat(2,1fr)}.tours-grid .tour-card:last-child{grid-column:span 2;aspect-ratio:16 / 9}.footer__grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr}.split__image{height:400px;order:-1}.steps{grid-template-columns:1fr;gap:var(--space-md)}}@media(max-width:768px){.nav__links{display:none}.nav__hamburger{display:flex}.card-grid,.tours-grid{grid-template-columns:1fr}.tours-grid .tour-card:last-child{grid-column:span 1;aspect-ratio:3 / 4}.tour-card__desc{opacity:.85;max-height:100px}.tour-card__overlay{background:linear-gradient(to top,#000000b3,#0000001a 60%)}.hero{padding:var(--space-xl) var(--space-md)}.info-grid{grid-template-columns:1fr}.tour-overview__inner{gap:var(--space-sm) var(--space-md)}.tour-overview__item{min-width:calc(50% - 1rem)}.tour-includes{grid-template-columns:1fr;gap:var(--space-md)}.tour-gallery{grid-template-columns:repeat(2,1fr)}.footer__grid{grid-template-columns:1fr;gap:var(--space-md)}.footer__bottom{flex-direction:column;gap:var(--space-xs);text-align:center}.split__content{padding:var(--space-lg) var(--space-md)}.section{padding:var(--space-lg) 0}.section--large{padding:var(--space-xl) 0}}
