.hero-section{background:var(--color-dark);width:100%;height:100svh;min-height:640px;position:relative;overflow:hidden}.hero-video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-overlay-bottom{background:linear-gradient(#1e2a1c80,#1e2a1c0d 45%,#1e2a1ceb);position:absolute;inset:0}.hero-overlay-glow{background:radial-gradient(120% 80% at 50% 120%,#c0603c59,#0000 60%);position:absolute;inset:0}.hero-content{z-index:10;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;padding:0 24px;display:flex;position:relative}.hero-logo{opacity:0;filter:drop-shadow(0 4px 22px #00000040);width:auto;height:34px;margin-bottom:56px;animation:.9s cubic-bezier(.16,1,.3,1) .2s forwards heroFadeUpSoft}.hero-title{max-width:900px;font-family:var(--font-serif-display);letter-spacing:-.02em;color:var(--color-cream);opacity:0;margin:0;font-size:clamp(46px,5vw,78px);font-weight:300;line-height:.95;animation:.9s cubic-bezier(.16,1,.3,1) .4s forwards heroFadeUp}.hero-subtitle{text-transform:uppercase;letter-spacing:.35em;color:#f7f2e9cc;opacity:0;max-width:430px;margin:28px 0 0;font-size:13px;line-height:1.9;animation:.9s cubic-bezier(.16,1,.3,1) .6s forwards heroFadeUp}.hero-cta-wrap{opacity:0;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:40px;animation:.9s cubic-bezier(.16,1,.3,1) .8s forwards heroFadeUp;display:flex}.hero-cta{color:var(--color-cream);border-radius:999px;justify-content:center;align-items:center;gap:12px;padding:14px 28px;font-size:14px;display:inline-flex}.hero-cta-solid{background:var(--gradient-bloom);font-weight:500;box-shadow:0 8px 30px #92362a59}.hero-cta-solid:hover{color:var(--color-cream);background:var(--gradient-bloom-hover)}.hero-cta-outline{border:1px solid #f7f2e973}.hero-cta-outline:hover{background:var(--color-cream);color:var(--color-green)}.hero-scroll{z-index:10;opacity:0;animation:1.2s 1.1s forwards heroFadeIn;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.hero-scroll-capsule{border:1px solid #f7f2e980;border-radius:999px;justify-content:center;align-items:flex-start;width:24px;height:44px;padding:6px;display:flex}.hero-scroll-dot{background:#f7f2e9cc;border-radius:999px;width:4px;height:8px;animation:2.4s ease-in-out infinite terraPulse}@keyframes heroFadeUp{0%{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}@keyframes heroFadeUpSoft{0%{opacity:0;transform:translateY(26px)}to{opacity:.9;transform:none}}@keyframes heroFadeIn{to{opacity:1}}@media (prefers-reduced-motion:reduce){.hero-logo,.hero-title,.hero-subtitle,.hero-cta-wrap,.hero-scroll{opacity:1;animation:none}.hero-logo{opacity:.9}}@media (max-width:768px){.hero-content{padding:0 20px}}
.about-section{background:var(--color-cream);padding:130px 40px;position:relative;overflow:hidden}.about-inner{grid-template-columns:7fr 5fr;align-items:center;gap:64px;max-width:1280px;margin:0 auto;display:grid}.about-greeting{font-family:var(--font-script);color:var(--color-terracotta);margin:0;font-size:34px}.about-title{max-width:660px;font-family:var(--font-serif-display);color:var(--color-green);margin:24px 0 0;font-size:clamp(34px,3.4vw,48px);font-weight:400;line-height:1.1}.about-body{color:#5a4632d9;flex-direction:column;gap:20px;max-width:580px;margin-top:32px;font-size:16px;line-height:1.75;display:flex}.about-body p{margin:0}.about-pull{max-width:520px;font-family:var(--font-serif-display);color:var(--color-green);margin:36px 0 0;font-size:26px;font-style:italic;line-height:1.4}.about-signoff{margin-top:32px}.about-signoff-label{color:#5a4632b3;margin:0;font-size:14px}.about-signature{font-family:var(--font-script);color:var(--color-terracotta);margin:0;font-size:52px;line-height:1.1}.about-photo-wrap{position:relative}.about-photo{aspect-ratio:4/5;object-fit:cover;border-radius:26px;width:100%;box-shadow:0 24px 60px #3a4a3638}@media (max-width:768px){.about-section{padding:88px 20px}.about-inner{grid-template-columns:1fr;gap:48px}}
.pillars-section{background:var(--color-sand);padding:130px 40px;position:relative;overflow:hidden}.pillars-inner{max-width:1280px;margin:0 auto}.pillars-heading{max-width:760px}.pillars-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:clamp(34px,3.4vw,48px);font-weight:400;line-height:1.1}.pillars-sub{color:#5a4632cc;max-width:560px;margin:24px 0 0;font-size:16px;line-height:1.75}.pillars-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:64px;display:grid}.pillars-card{isolation:isolate;background:#f7f2e9b3;border:1px solid #5a463224;border-radius:16px;padding:28px;transition:transform .5s,box-shadow .5s;position:relative;overflow:hidden}.pillars-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px #3a4a3629}.pillars-card-bg{z-index:-1;pointer-events:none;position:absolute;inset:0}.pillars-card-img{object-fit:cover;opacity:0;width:100%;height:100%;transition:opacity .7s,transform .7s;transform:scale(1.05)}.pillars-card:hover .pillars-card-img{opacity:1}.pillars-card-veil{background:#f7f2e9cc;transition:background .7s;position:absolute;inset:0}.pillars-card-num{font-family:var(--font-serif-display);color:#c0603ccc;font-size:24px}.pillars-card-title{font-family:var(--font-serif-display);color:var(--color-green);margin:24px 0 0;font-size:24px;font-weight:400}.pillars-card-meta{text-transform:uppercase;letter-spacing:.28em;color:#5a463299;margin:8px 0 0;font-size:10px;font-weight:600}.pillars-card-body{color:#5a4632d9;margin:16px 0 0;font-size:14px;line-height:1.7}@media (max-width:900px){.pillars-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.pillars-section{padding:88px 20px}.pillars-grid{grid-template-columns:1fr;margin-top:48px}.pillars-card{padding:24px}}
.exp-section{background:var(--color-cream);padding:110px 40px;position:relative;overflow:hidden}.exp-container{max-width:1100px;margin:0 auto}.exp-heading{max-width:760px}.exp-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:clamp(34px,3.4vw,48px);font-weight:400;line-height:1.1}.exp-subtitle{color:#5a4632cc;max-width:560px;margin:24px 0 0;font-size:16px;line-height:1.75}.exp-accordion{flex-direction:column;gap:20px;margin-top:48px;display:flex}.exp-card{background:var(--color-cream);border:1px solid #c0603c66;border-radius:24px;scroll-margin-top:112px;overflow:hidden;box-shadow:0 18px 50px #3a4a361f}.exp-card-toggle{text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:24px;width:100%;padding:36px 40px;display:flex}.exp-card-head{align-items:baseline;gap:24px;display:flex}.exp-card-num{font-family:var(--font-serif-display);color:#c0603cb3;font-size:20px}.exp-card-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:30px;font-weight:400;line-height:1.2}.exp-card-sub{color:#5a4632b3;max-width:460px;margin:8px 0 0;font-size:15px}.exp-card-dot{border:1px solid var(--color-bloom);width:44px;height:44px;color:var(--color-green);background:0 0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;display:flex;position:relative}.exp-card-open .exp-card-dot{background:var(--gradient-bloom);color:var(--color-cream)}.exp-dot-h{background:currentColor;border-radius:2px;width:16px;height:1.5px;position:absolute}.exp-dot-v{background:currentColor;border-radius:2px;width:1.5px;height:16px;transition:transform .4s;position:absolute;transform:scaleY(1)}.exp-card-open .exp-dot-v{transform:scaleY(0)}.exp-intro{grid-template-columns:1fr 1fr;align-items:center;gap:56px;padding:8px 40px 40px;display:grid}.exp-intro-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:30px;font-weight:400;line-height:1.15}.exp-intro-copy{color:#5a4632d9;flex-direction:column;gap:16px;max-width:520px;margin-top:24px;font-size:15px;line-height:1.75;display:flex}.exp-intro-copy p{margin:0}.exp-intro-italic{font-family:var(--font-serif-display);color:var(--color-green);font-size:22px;font-style:italic;line-height:1.4}.exp-intro-media{position:relative}.exp-intro-img{aspect-ratio:4/5;object-fit:cover;border-radius:26px;width:100%;box-shadow:0 24px 60px #3a4a3638}.exp-band{background:var(--color-sand);padding:64px 40px}.exp-step{align-items:baseline;gap:16px;display:flex}.exp-step-spaced{margin-top:72px}.exp-step-num{font-family:var(--font-serif-display);color:var(--color-terracotta);font-size:22px}.exp-step-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:clamp(28px,2.6vw,38px);font-weight:400;line-height:1.1}.exp-step-sub{color:#5a4632cc;margin:10px 0 0;font-size:15px}.exp-formats{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:36px;display:grid}.exp-format-card{background:var(--color-cream);border-radius:16px;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 2px 14px #3a4a361a}.exp-format-body{flex-direction:column;flex:1;padding:32px;display:flex}.exp-format-when{text-transform:uppercase;letter-spacing:.24em;color:var(--color-terracotta);margin:0;font-size:11px;font-weight:600}.exp-format-name{font-family:var(--font-serif-display);color:var(--color-green);margin:14px 0 0;font-size:26px;font-weight:400}.exp-format-desc{color:#5a4632d9;flex:1;margin:14px 0 0;font-size:14px;line-height:1.7}.exp-format-divider{background:#5a46322e;width:100%;height:1px;margin-top:24px}.exp-format-includes{color:#5a4632b3;margin:18px 0 0;font-size:13px;line-height:1.7}.exp-format-includes-label{color:#5a4632d9;font-weight:600}.exp-locations{grid-template-columns:repeat(3,1fr);gap:24px;margin-top:32px;display:grid}.exp-location{border-radius:16px;margin:0;position:relative;overflow:hidden;box-shadow:0 2px 14px #3a4a361a}.exp-location-img{object-fit:cover;width:100%;height:340px;transition:transform .7s cubic-bezier(.16,1,.3,1),filter .7s;display:block}.exp-location-img-hills{object-position:center 65%}.exp-location-img-venice{object-position:center 55%}.exp-location-img-dolomites{object-position:center 60%}.exp-location-shade{background:linear-gradient(#0000,#1e2a1c1a 45%,#1e2a1cd1);transition:opacity .5s;position:absolute;inset:0}.exp-location-caption{font-family:var(--font-serif-display);color:var(--color-cream);padding:26px;font-size:28px;transition:transform .5s cubic-bezier(.16,1,.3,1);position:absolute;bottom:0;left:0;right:0}.exp-location:hover .exp-location-img{filter:brightness(1.2);transform:scale(1.05)}.exp-location:hover .exp-location-shade{opacity:.65}.exp-location:hover .exp-location-caption{transform:translateY(-4px)}.exp-locations-note{font-family:var(--font-serif-display);color:#5a4632b3;border-left:1px solid #c0603c80;margin:20px 0 0;padding-left:20px;font-size:17px;font-style:italic;line-height:1.6}.exp-choose{grid-template-columns:1.1fr 1fr;align-items:center;gap:48px;margin-top:28px;display:grid}.exp-choose-img{aspect-ratio:4/3;object-fit:cover;border-radius:16px;width:100%;box-shadow:0 18px 44px #3a4a362e}.exp-choose-copy{color:#5a4632d9;flex-direction:column;gap:16px;font-size:15px;line-height:1.75;display:flex}.exp-choose-copy p{margin:0}.exp-choose-italic{font-family:var(--font-serif-display);color:var(--color-green);font-size:22px;font-style:italic;line-height:1.4}.exp-cta-row{border-top:1px solid #5a46322e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:72px;padding-top:40px;display:flex}.exp-cta-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:clamp(26px,2.4vw,34px);font-weight:400}.exp-cta{background:var(--color-green);color:var(--color-cream);border-radius:999px;align-items:center;gap:12px;padding:14px 28px;font-size:14px;font-weight:500;display:inline-flex}.exp-cta:hover{color:var(--color-cream);background:#2c3929}.exp-trips-band{scroll-margin-top:112px}.exp-trips-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:clamp(28px,2.6vw,38px);font-weight:400}.exp-trips{grid-template-columns:repeat(2,1fr);gap:24px;margin-top:32px;display:grid}.exp-trip{text-align:left;cursor:pointer;background:var(--color-dark);border:0;border-radius:16px;padding:0;transition:transform .5s,box-shadow .5s;position:relative;overflow:hidden;box-shadow:0 2px 14px #3a4a361a}.exp-trip:hover{transform:translateY(-6px);box-shadow:0 24px 50px #3a4a3629}.exp-trip-media{width:100%;height:320px;position:relative;overflow:hidden}.exp-trip-img{object-fit:cover;width:100%;height:100%}.exp-trip-shade{background:linear-gradient(#0000,#1e2a1c40 45%,#1e2a1ce6);position:absolute;inset:0}.exp-trip-info{color:var(--color-cream);padding:28px;position:absolute;bottom:0;left:0;right:0}.exp-trip-when{text-transform:uppercase;letter-spacing:.24em;color:var(--color-gold);margin:0;font-size:11px;font-weight:600}.exp-trip-name{font-family:var(--font-serif-display);margin:8px 0 0;font-size:30px;font-weight:400}.exp-trip-blurb{color:#f7f2e9d9;max-width:380px;margin:8px 0 0;font-size:14px;line-height:1.6}.exp-trip-link{color:var(--color-cream);align-items:center;gap:8px;margin-top:16px;font-size:14px;font-weight:500;display:inline-flex}.exp-trips-cta-row{border-top:1px solid #5a46322e;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-top:56px;padding-top:40px;display:flex}.exp-trips-cta-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:clamp(26px,2.4vw,34px);font-weight:400}.exp-trips-cta-text{color:#5a4632cc;max-width:460px;margin:12px 0 0;font-size:15px;line-height:1.75}.exp-trips-cta{background:var(--gradient-bloom);color:var(--color-cream);border-radius:999px;align-items:center;gap:12px;padding:14px 28px;font-size:14px;font-weight:500;display:inline-flex}.exp-trips-cta:hover{color:var(--color-cream);background:var(--gradient-bloom-hover)}.exp-modal{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#1e2a1cb3;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.exp-modal-card{background:var(--color-cream);border-radius:24px;width:100%;max-width:768px;max-height:92vh;position:relative;overflow-y:auto}.exp-modal-media{width:100%;height:256px;position:relative;overflow:hidden}.exp-modal-img{object-fit:cover;width:100%;height:100%}.exp-modal-shade{background:linear-gradient(#0000,#1e2a1ccc);position:absolute;inset:0}.exp-modal-close{width:36px;height:36px;color:var(--color-green);cursor:pointer;background:#f7f2e9e6;border:0;border-radius:999px;justify-content:center;align-items:center;font-size:18px;display:flex;position:absolute;top:16px;right:16px}.exp-modal-head{color:var(--color-cream);position:absolute;bottom:20px;left:24px}.exp-modal-name{font-family:var(--font-serif-display);margin:0;font-size:30px;font-weight:400}.exp-modal-sub{color:#f7f2e9d9;margin:4px 0 0;font-size:14px}.exp-modal-body{padding:36px}.exp-modal-days{flex-direction:column;gap:20px;margin:0;padding:0;list-style:none;display:flex}.exp-modal-day{gap:16px;display:flex}.exp-modal-day-label{text-transform:uppercase;letter-spacing:.1em;width:64px;color:var(--color-terracotta);flex-shrink:0;margin-top:4px;font-size:11px;font-weight:600}.exp-modal-day-title{font-family:var(--font-serif-display);color:var(--color-green);margin:0;font-size:20px}.exp-modal-day-body{color:#5a4632cc;margin:2px 0 0;font-size:14px;line-height:1.6}.exp-modal-book{background:var(--color-green);color:var(--color-cream);border-radius:16px;margin-top:36px;padding:32px}.exp-modal-price{font-family:var(--font-serif-display);margin:0;font-size:24px}.exp-modal-note{color:#f7f2e9cc;margin:8px 0 0;font-size:14px}.exp-modal-form{gap:12px;margin-top:20px;display:flex}.exp-modal-input{color:var(--color-green);background:#f7f2e9f2;border:0;border-radius:999px;outline:none;flex:1;padding:12px 20px;font-size:14px}.exp-modal-submit{background:var(--gradient-bloom);color:var(--color-cream);cursor:pointer;border:0;border-radius:999px;padding:12px 24px;font-size:14px;font-weight:500}.exp-modal-error{color:var(--color-gold);margin:12px 0 0;font-size:13px}@media (max-width:900px){.exp-formats,.exp-locations{grid-template-columns:1fr}}@media (max-width:768px){.exp-section{padding:80px 20px}.exp-card-toggle{padding:24px}.exp-card-head{gap:16px}.exp-intro{grid-template-columns:1fr;gap:32px;padding:8px 24px 32px}.exp-band{padding:48px 24px}.exp-step-spaced{margin-top:56px}.exp-format-body{padding:24px}.exp-choose{grid-template-columns:1fr;gap:28px}.exp-cta-row{margin-top:56px}.exp-trips{grid-template-columns:1fr}.exp-trips-cta-row{flex-direction:column;align-items:flex-start;margin-top:48px;padding-top:32px}.exp-modal{padding:16px}.exp-modal-media{height:200px}.exp-modal-body,.exp-modal-book{padding:24px}.exp-modal-form{flex-direction:column}.exp-modal-submit{width:100%}}
.journeys-section{background:var(--color-sand);padding:130px 40px;position:relative;overflow:hidden}.journeys-inner{max-width:1280px;margin:0 auto}.journeys-head{max-width:640px}.journeys-eyebrow{text-transform:uppercase;letter-spacing:.3em;color:var(--color-terracotta);margin:0;font-size:11px;font-weight:600}.journeys-title{font-family:var(--font-serif-display);color:var(--color-green);margin:20px 0 0;font-size:clamp(34px,3.4vw,48px);font-weight:400;line-height:1.1}.journeys-grid{grid-template-columns:repeat(3,1fr);align-items:start;gap:24px;margin-top:64px;display:grid}.journeys-card{border-radius:16px;transition:transform .5s,box-shadow .5s;position:relative;overflow:hidden;box-shadow:0 2px 14px #3a4a361a}.journeys-card--offset{margin-top:48px}.journeys-card:hover{transform:translateY(-6px);box-shadow:0 24px 50px #3a4a3629}.journeys-media{width:100%;height:416px;position:relative;overflow:hidden}.journeys-media img{object-fit:cover;object-position:center;width:100%;height:100%}.journeys-gradient{background:linear-gradient(#0000,#1e2a1c1a 45%,#1e2a1cd9);position:absolute;inset:0}.journeys-overlay{color:var(--color-cream);padding:28px;position:absolute;bottom:0;left:0;right:0}.journeys-card-title{font-family:var(--font-serif-display);margin:0;font-size:30px;font-weight:400}.journeys-card-meta{text-transform:uppercase;letter-spacing:.22em;color:var(--color-gold);margin:4px 0 0;font-size:11px;font-weight:600}.journeys-card-body{color:#f7f2e9d9;margin:8px 0 0;font-size:14px}@media (max-width:900px){.journeys-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.journeys-section{padding:88px 20px}.journeys-grid{grid-template-columns:1fr}.journeys-card--offset{margin-top:0}}
.contact-section{background:var(--color-dark);color:var(--color-cream);position:relative;overflow:hidden}.contact-bg{pointer-events:none;position:absolute;inset:0}.contact-bg img{object-fit:cover;opacity:.1;width:100%;height:100%}.contact-bg-glow{background:radial-gradient(90% 60% at 50% 0,#c0603c47,#0000 65%);position:absolute;inset:0}.contact-inner{max-width:900px;margin:0 auto;padding:130px 24px;position:relative}.contact-head{text-align:center}.contact-title{max-width:640px;font-family:var(--font-serif-display);color:var(--color-cream);margin:0 auto;font-size:clamp(34px,3.4vw,48px);font-weight:400;line-height:1.08}.contact-sub{color:#f7f2e9bf;max-width:430px;margin:24px auto 0;font-size:16px}.contact-panel{max-width:576px;margin:56px auto 0}.contact-modes{grid-template-columns:1fr 1fr;gap:12px;display:grid}.contact-mode-btn{color:#f7f2e9cc;cursor:pointer;background:#f7f2e90d;border:1px solid #f7f2e933;border-radius:12px;padding:16px 20px;font-size:14px;font-weight:500;transition:all .3s}.contact-mode-btn--active{border-color:var(--color-bloom);background:var(--gradient-bloom);color:var(--color-cream)}.contact-form{flex-direction:column;gap:16px;padding-top:24px;display:flex}.contact-field{width:100%;color:var(--color-cream);background:#f7f2e90d;border:1px solid #f7f2e933;border-radius:12px;outline:none;padding:12px 16px;font-size:14px}.contact-field::placeholder{color:#f7f2e98c}textarea.contact-field{resize:vertical}select.contact-field option{color:var(--color-green)}.contact-check{color:#f7f2e9bf;align-items:center;gap:12px;font-size:14px;display:flex}.contact-check input{width:16px;height:16px;accent-color:var(--color-bloom);flex-shrink:0}.contact-submit{background:var(--gradient-bloom);width:100%;color:var(--color-cream);cursor:pointer;border:0;border-radius:999px;padding:16px;font-size:14px;font-weight:500}.contact-error{text-align:center;color:var(--color-gold);margin:0;font-size:13px}@media (max-width:768px){.contact-inner{padding:88px 20px}.contact-mode-btn{padding:16px 12px}}
