:root{font-family:Work Sans,sans-serif;color:#14253d;background:#f7f4ec;font-synthesis:none;font-weight:400;--navy: #14253d;--gold: #e4a738;--teal: #126673;--cream: #f7f4ec;--line: #dcded8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:disabled{opacity:.5;cursor:not-allowed}button{border:0}a,button,input,textarea,select{outline-offset:5px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold)}p{line-height:1.8}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Anton,sans-serif;font-weight:400;line-height:1.14;letter-spacing:.005em}h1{font-size:clamp(2.6rem,4.5vw,4.5rem)}h2{font-size:clamp(2.3rem,3.1vw,3.4rem);margin-bottom:26px}h3{font-size:1.3rem;line-height:1.4}small{font-size:.8rem;line-height:1.6}.eyebrow{font-family:Cinzel,serif;font-size:.8rem;font-weight:700;letter-spacing:.12em;line-height:1.7}.gold{color:var(--gold)}.teal{color:var(--teal)}.subtle{color:#64707a;font-size:.9rem;line-height:1.7}.header{height:102px;padding:0 5.4%;display:flex;align-items:center;justify-content:space-between;background:var(--cream);border-bottom:1px solid var(--line);position:relative;z-index:5}.brand{display:flex;gap:12px;align-items:center;text-decoration:none}.brand svg{width:39px;height:39px;color:var(--teal);stroke-width:1.3}.brand>span{font-family:Anton;font-size:1.38rem;letter-spacing:.055em;line-height:1.2}.brand small{display:block;font-family:Cinzel;font-size:.66rem;letter-spacing:.48em;margin-top:4px}.navigation{display:flex;align-items:center;gap:34px}.navigation>a{text-decoration:none;font-size:.88rem;font-weight:500}.navigation>a:hover{color:var(--teal)}.button{background:var(--navy);color:#fff;min-height:48px;padding:15px 25px;display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;font-size:.88rem;font-weight:600;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{background:#244263}.button.small{padding:12px 20px;min-height:44px}.gold-button{background:var(--gold);color:var(--navy)}.gold-button:hover{background:#efbc5c}.button.outline{background:transparent;border-color:#abb3b7;color:var(--navy)}.button.outline:hover{background:#eae9e2}.full{width:100%}.text-link{display:inline-flex;align-items:center;gap:9px;background:none;padding:0;color:var(--teal);text-decoration:none;font-size:.9rem;font-weight:600;line-height:1.6}.text-link:hover{text-decoration:underline}.text-link.light{color:var(--cream)}.hero{min-height:665px;display:grid;grid-template-columns:53% 47%;background:var(--navy);color:var(--cream)}.hero-copy{padding:65px 7% 45px 10.2%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero-copy>.eyebrow{font-size:.69rem;letter-spacing:.13em;margin-bottom:25px}.hero-kicker{font-family:Cinzel;font-size:.85rem;letter-spacing:.16em;margin-bottom:15px}.hero h1{font-size:clamp(3.2rem,5.5vw,6rem);margin-bottom:25px;line-height:1.07}.hero h1 span{color:var(--gold)}.hero-description{max-width:490px;color:#d4d9dc;font-size:1rem;margin-bottom:28px}.hero-actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap}.hero-meta{display:flex;gap:25px;border-top:1px solid #ffffff25;padding-top:25px;margin-top:40px;flex-wrap:wrap;font-size:.8rem;color:#dadcd9}.hero-meta span{display:flex;gap:9px;align-items:center}.hero-meta svg{color:var(--gold)}.hero-visual{position:relative;overflow:hidden;min-height:600px}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:53% center;position:absolute}.image-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 30%,#12243dcc 100%)}.image-caption{position:absolute;bottom:46px;left:40px;right:35px}.image-caption>.eyebrow{color:var(--gold)}.image-caption>strong{font-family:Anton;display:flex;align-items:baseline;gap:20px;font-size:clamp(3rem,6vw,6.5rem);letter-spacing:.02em;font-weight:400}.image-caption>strong span{font-family:Cinzel;font-size:1.7rem;color:var(--gold)}.image-caption p{margin:4px 0 0;font-size:.87rem}.featured-stamp{position:absolute;right:30px;top:30px;border:1px solid #ffffffe0;color:#fff;border-radius:50%;height:95px;width:95px;display:flex;align-items:center;justify-content:center;text-align:center;transform:rotate(12deg);font-family:Cinzel;font-size:.72rem;font-weight:700;letter-spacing:.07em;background:#14253d45}.route-strip{display:flex;gap:35px;align-items:center;padding:25px 5.4%;border-bottom:1px solid #d6d8d2;background:#eeeee5}.route-strip>.eyebrow{color:var(--teal);white-space:nowrap;margin:0}.route-strip p{font-family:Cinzel;font-size:.78rem;line-height:1.9;margin:0;color:#59626a}.section{padding:90px 7%;max-width:1600px;margin:auto}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;padding-top:105px;padding-bottom:100px}.lead{font-size:1.22rem;line-height:1.85}.about-grid>div>p:not(.eyebrow){color:#52606a}.values{display:flex;gap:30px;border-top:1px solid var(--line);padding-top:25px;margin-top:25px}.values>div{display:flex;flex-direction:column;gap:12px;font-size:.79rem;font-weight:600}.values svg{color:var(--teal);stroke-width:1.5}.tours-section{background:#eeeee7;max-width:none}.section-heading{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-bottom:35px}.section-heading h1,.section-heading h2,.section-heading p:last-child{margin-bottom:0}.tour-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:30px}.tour-card{background:var(--cream);border:1px solid #dadcd5}.tour-image{height:280px;position:relative;display:block;overflow:hidden}.tour-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.tour-image:hover img{transform:scale(1.04)}.tag{position:absolute;left:24px;top:23px;background:var(--gold);color:var(--navy);padding:8px 12px;font-family:Cinzel;font-weight:700;font-size:.68rem;letter-spacing:.1em}.tour-card-content{padding:30px}.tour-card-content h3{font-family:Anton;font-size:2rem;font-weight:400}.tour-card-content>p:not(.eyebrow){color:#64707a;font-size:.91rem}.card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px}.card-bottom strong{font-family:Anton;font-weight:400;font-size:1.8rem}.card-bottom small{display:block;color:#677079}.round-button{width:45px;height:45px;border:1px solid #a8b0b0;border-radius:50%;background:transparent;color:var(--navy);display:flex;align-items:center;justify-content:center}.round-button:hover{background:var(--gold)}.future-card{border:1px solid #d3d8d1;display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center;padding:55px 30px;background:repeating-linear-gradient(135deg,transparent,transparent 15px,#d1d5cb18 16px,#d1d5cb18 17px)}.future-card>svg{color:var(--teal);margin-bottom:30px}.future-card h3{font-family:Anton;font-size:2.8rem;font-weight:400}.future-card p:not(.eyebrow){color:#66716f}.destinations{padding:85px 7%;background:var(--navy);color:var(--cream)}.destinations h2{font-size:clamp(2.2rem,3vw,3.2rem)}.destination-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.destination-grid img{width:100%;height:215px;object-fit:cover;display:block}.destination-grid .eyebrow{display:block;margin-top:15px;font-size:.76rem}.contact-section{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}.contact-card{border-left:2px solid var(--gold);padding:20px 0 20px 40px}.contact-card>a{display:flex;align-items:center;gap:14px;text-decoration:none;margin-top:18px;color:var(--teal)}footer{background:var(--navy);color:var(--cream);padding:45px 5.4%;display:flex;justify-content:space-between;align-items:center;gap:35px}footer .brand svg{color:var(--gold)}footer p{font-size:.85rem;color:#b7c0ca;margin:0}footer p small{color:#a0adbb}.footer-link{background:none;color:#d6dbe2;font-size:.79rem;text-decoration:underline}.menu-toggle{display:none;background:transparent;color:var(--navy)}.skip-link{position:absolute;left:20px;top:-100px;background:#fff;padding:15px;z-index:100}.skip-link:focus{top:10px}.page-message{min-height:60vh;padding:100px 8%;text-align:center}.spinner{animation:spin 3s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.trip-hero{padding:75px 7%;background-position:center;background-size:cover;color:var(--cream)}.trip-hero>div{max-width:720px}.trip-hero .text-link{margin-bottom:35px}.trip-hero h1{margin:20px 0 25px}.trip-hero p:not(.eyebrow){max-width:580px}.trip-nav{display:flex;justify-content:center;gap:45px;padding:20px;background:#eeeee5;border-bottom:1px solid var(--line)}.trip-nav a{font-size:.9rem;text-decoration:none;font-weight:500}.trip-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:70px}.trip-layout section{scroll-margin-top:30px}.route-text{font-family:Cinzel;color:var(--teal);font-size:.9rem;line-height:2}.itinerary{margin-top:70px}.day{border-top:1px solid #cdd4d2}.day:last-of-type{border-bottom:1px solid #cdd4d2}.day button{width:100%;background:none;color:var(--navy);text-align:left;display:flex;align-items:center;gap:20px;padding:24px 0}.day-number{font-family:Anton;font-size:1.8rem;color:#899b9e}.day button>span:nth-child(2){flex:1}.day .eyebrow{display:block;color:var(--teal);font-size:.7rem;margin-bottom:6px}.day button strong{font-size:1.1rem}.expand-mark{font-size:1.5rem;color:var(--teal)}.day p{padding:0 15px 18px 55px;color:#596671;margin:0}.day.expanded .day-number{color:var(--teal)}.itinerary>.subtle{margin-top:20px}.price-card{background:var(--teal);color:#fff;padding:35px}.price{font-family:Anton;font-size:4.6rem;font-weight:400;line-height:1.2}.price-card>p:not(.eyebrow){font-size:.9rem;color:#e0eeee}.price-card ul{list-style:none;padding:24px 0 15px;margin:20px 0;border-top:1px solid #ffffff40}.price-card li{display:flex;gap:10px;align-items:flex-start;font-size:.9rem;line-height:1.7;margin-bottom:13px}.price-card li svg{flex-shrink:0;margin-top:4px;color:var(--gold)}.price-card .text-link{margin-top:20px;justify-content:center;width:100%;font-size:.8rem}.details-card{background:#eeeee6;border:1px solid var(--line);padding:28px;margin-top:25px}.details-card p{font-size:.9rem}.details-card li{line-height:1.7;font-size:.9rem}hr{border:0;border-top:1px solid var(--line);margin:25px 0}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-weight:600;font-size:.9rem}details p{margin-top:15px}.leaders{margin-top:60px}.leaders>div{display:flex;gap:16px;align-items:center;margin-bottom:18px}.leader-initial{border:1px solid #b6c4bd;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;color:var(--teal);font-family:Cinzel;font-size:.85rem}.auth-panel{max-width:460px;margin:0 auto;background:#fffdf8;border:1px solid var(--line);padding:40px}.auth-panel>svg{color:var(--teal);margin-bottom:25px}.auth-panel h1{font-size:2.5rem}.auth-panel>p:not(.eyebrow){font-size:.9rem;color:#627078}label{display:flex;flex-direction:column;gap:8px;margin-bottom:20px;font-size:.88rem;font-weight:500;line-height:1.5}label>small{font-weight:400;color:#68747b}input,textarea,select{width:100%;padding:12px;border:1px solid #bac3c3;background:#fffefb;border-radius:0;color:var(--navy);min-height:47px;font-size:1rem}textarea{resize:vertical;line-height:1.6}.auth-links{display:flex;flex-direction:column;gap:15px;margin-top:25px}.auth-links button,.inline-button{background:none;color:var(--teal);padding:0;font-size:.83rem;text-decoration:underline}.error,.success{padding:16px 20px;line-height:1.6;font-size:.9rem;border-left:3px solid}.error{background:#fbebe7;color:#8d352d;border-color:#b94b3d}.success{background:#e1efdf;color:#2c632f;border-color:#4f8646}.registration h1{margin-bottom:15px}.registration>.eyebrow{margin-top:30px}.registration-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:45px;margin-top:45px}.progress-top{display:flex;justify-content:space-between;gap:15px;font-size:.8rem;align-items:center}.progress-top>span{color:var(--teal)}.progress-track{height:4px;background:#d8ded8;margin:15px 0 30px}.progress-track>div{height:100%;background:var(--teal);transition:width .3s}.form-panel{background:#fffdf8;padding:35px;border:1px solid var(--line)}.form-panel h2{font-size:2rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 22px}.span-2{grid-column:1/-1}.checkbox{flex-direction:row;gap:13px;align-items:flex-start;font-weight:400;line-height:1.7}.checkbox input{width:18px;min-height:18px;height:18px;flex-shrink:0;margin-top:5px;accent-color:var(--teal)}.form-note{padding:20px;background:#edf1e9;font-size:.9rem;border-left:2px solid var(--teal)}.form-note p:last-child{margin-bottom:0}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:25px}.registration-summary{align-self:start;position:sticky;top:25px;background:#eaece3;padding:30px}.registration-summary>div{display:flex;justify-content:space-between;gap:15px;font-size:.9rem;margin-bottom:15px}.registration-summary .total{border-top:1px solid #cbd2c9;padding-top:22px;margin-top:25px;align-items:center}.total strong{font-family:Anton;font-size:2rem;font-weight:400}.registration-summary small{color:#687773}.policy{margin-bottom:25px;padding-bottom:15px;border-bottom:1px solid var(--line)}.policy p,.policy li{font-size:.9rem;line-height:1.85}.policy ul{padding-left:22px}.preserve{white-space:pre-line}.confirmation{max-width:900px;text-align:center;min-height:70vh}.confirmation .details-card{text-align:left;margin-bottom:30px}.confirmation-check{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border-radius:50%;background:var(--teal);color:#fff;margin:0 auto 25px}.account-record{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);padding:25px 0}.account-record h3{margin:10px 0}.status{display:inline-block;background:#e0e8dd;color:#345d4b;padding:5px 9px;font-size:.73rem;text-transform:capitalize}.account-page{min-height:65vh}.admin-page{max-width:1600px;padding:60px 5%}.admin-page h1{font-size:2.8rem}.button-row{display:flex;gap:15px;align-items:center}.admin-tabs{border-bottom:1px solid var(--line);display:flex;gap:25px;margin:40px 0 30px}.admin-tabs button{padding:16px 0;background:transparent;text-transform:capitalize;color:#66747e;border-bottom:3px solid transparent;font-weight:600}.admin-tabs button.active{border-color:var(--teal);color:var(--teal)}.admin-tabs span{margin-left:10px;font-size:.8rem}.admin-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:30px}.admin-sidebar{align-self:start;position:sticky;top:25px}.tour-list-item{display:flex;flex-direction:column;gap:8px;background:#eeeee5;padding:20px;width:100%;text-align:left;border-bottom:1px solid var(--line);color:var(--navy)}.tour-list-item.selected{background:#dae5df;border-left:3px solid var(--teal)}.tour-list-item small{color:#576b65}.admin-sidebar>.button{margin-bottom:20px}.editor{padding:35px;background:#fffdf8;border:1px solid var(--line)}.editor h2{font-size:2rem;margin:0}.editor h3{margin-top:25px}.empty-editor{min-height:300px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.empty-editor h2{margin-bottom:20px}.itinerary-editor{background:#f1f1e8;padding:20px;margin:20px 0}.itinerary-editor>.button-row{margin-bottom:15px}.itinerary-editor strong{flex:1}.icon-button{padding:7px;background:transparent;display:flex;align-items:center}.danger{color:#a53f32}.settings-editor{max-width:700px}.settings-editor h2{margin-bottom:30px}.registration-filters{display:flex;align-items:flex-end;gap:20px;margin-bottom:25px}.registration-filters label{flex:1;margin:0}.registration-row{display:flex;text-align:left;align-items:center;gap:25px;background:#fffdf8;border:1px solid var(--line);border-bottom:0;width:100%;padding:22px;color:var(--navy)}.registration-row:last-child{border-bottom:1px solid var(--line)}.registration-row>span:first-child{flex:1}.registration-row small{display:block;margin-top:7px;color:#65707b}.modal-backdrop{position:fixed;inset:0;background:#07172cc4;z-index:50;display:flex;justify-content:center;padding:30px;overflow:auto}.registration-modal{background:var(--cream);padding:40px;max-width:800px;width:100%;height:max-content;position:relative}.modal-close{float:right}.registration-data>div{display:grid;grid-template-columns:1fr 2fr;border-top:1px solid var(--line);padding:12px 0;font-size:.88rem;gap:20px}.registration-data dt{text-transform:capitalize;font-weight:500}.registration-data dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.registration-data{margin:35px 0}.auth-panel h1{line-height:1.25}@media(min-width:1500px){.hero{min-height:730px}.hero-copy{padding-left:14%}.hero-visual{min-height:730px}}@media(max-width:1100px){.navigation{gap:20px}.hero-copy{padding:45px 8%}.hero-copy>.eyebrow{font-size:.64rem}.hero h1{font-size:4.6rem}.hero-meta{gap:15px}.hero-visual{min-height:620px}.hero-actions{gap:20px}.hero-actions .text-link{font-size:.8rem}.section{padding:65px 5%}.about-grid{gap:40px}.trip-layout{gap:35px}.destination-grid{gap:13px}.destination-grid img{height:160px}.contact-section{gap:30px}.registration-layout{gap:25px;grid-template-columns:minmax(0,1fr) 265px}.form-panel{padding:25px}.admin-layout{grid-template-columns:220px minmax(0,1fr)}.editor{padding:25px}}@media(max-width:780px){.header{height:80px;padding:0 6%}.brand>span{font-size:1.13rem}.brand svg{width:32px}.menu-toggle{display:block}.navigation{display:none;position:absolute;top:80px;left:0;right:0;background:var(--cream);padding:25px 6%;box-shadow:0 10px 20px #14253d18}.navigation.open{display:flex;align-items:stretch;flex-direction:column}.navigation>a{padding:8px 0}.hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:46px 7% 40px}.hero h1{font-size:clamp(3.8rem,12vw,5rem)}.hero-copy>.eyebrow{font-size:.7rem;max-width:300px}.hero-description{max-width:560px}.hero-meta{margin-top:30px;gap:20px}.hero-visual{min-height:350px}.hero-visual>img{object-position:center}.image-caption{bottom:25px;left:7%}.image-caption>strong{font-size:4rem}.featured-stamp{width:78px;height:78px;right:20px;top:20px;font-size:.6rem}.route-strip{padding:22px 7%;display:block}.route-strip>.eyebrow{display:block;margin-bottom:8px}.route-strip p{font-size:.7rem}.section{padding:55px 7%}.about-grid{grid-template-columns:1fr;gap:5px}.about-grid h2{margin-bottom:15px}.lead{font-size:1.1rem}.values{gap:25px;justify-content:space-between}.values>div{font-size:.74rem}.section-heading{align-items:flex-start;flex-direction:column;gap:20px}.tour-grid{grid-template-columns:1fr}.tour-image{height:235px}.future-card{padding:45px 25px}.future-card h3{font-size:2.3rem}.destinations{padding:55px 7%}.destination-grid{grid-template-columns:1fr 1fr;gap:24px 15px}.destination-grid img{height:150px}.destination-grid .eyebrow{font-size:.64rem}.contact-section{grid-template-columns:1fr;gap:15px}.contact-card{padding:10px 0 10px 25px}footer{flex-direction:column;align-items:flex-start;padding:40px 7%;gap:25px}.trip-hero{padding:45px 7%}.trip-hero h1{font-size:3rem}.trip-nav{gap:0;justify-content:space-evenly;padding:18px 4%;flex-wrap:wrap}.trip-nav a{font-size:.75rem;padding:6px}.trip-layout{grid-template-columns:1fr;gap:40px}.trip-layout aside{display:flex;flex-direction:column}.itinerary{margin-top:45px}.day button{gap:15px}.day button strong{font-size:1rem}.day .eyebrow{font-size:.63rem}.day p{padding-left:45px}.auth-panel{padding:30px 24px}.registration-layout{grid-template-columns:1fr}.registration-summary{position:static;grid-row:1;display:none}.form-panel{padding:25px 20px}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.form-actions{gap:10px}.form-actions .button{padding:13px 15px}.form-actions .text-link{font-size:.8rem}.registration h1{font-size:2.7rem}.account-record{align-items:flex-start;flex-direction:column}.admin-page{padding:40px 5%}.admin-page h1{font-size:2.2rem}.admin-tabs{gap:20px}.admin-tabs button{font-size:.85rem}.admin-layout{grid-template-columns:1fr}.admin-sidebar{position:static}.editor{padding:22px 18px}.admin-sidebar>.button{margin:0}.tour-list-item{padding:15px}.registration-filters{flex-direction:column;align-items:stretch}.registration-row{gap:12px;padding:17px}.registration-row>svg{display:none}.registration-row strong{font-size:.85rem}.registration-row small{font-size:.7rem}.modal-backdrop{padding:12px}.registration-modal{padding:25px 18px}.registration-data>div{grid-template-columns:1fr;gap:5px}.modal-close{float:none;margin-bottom:25px}.confirmation .details-card{overflow-wrap:anywhere}.contact-card a{font-size:.94rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
