:root{--paper:#eee;--ink:#333;--muted:#737373;--teal:#00838f;--white:#fff;--sale:#c3443e;--required:#ff6464;--line:#e8e8e8;--sans:"Zen Kaku Gothic New",sans-serif;--serif:"Playfair Display",Georgia,serif;--content:1040px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;font-size:16px;line-height:1.8}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:700}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{max-width:100%;display:block}::selection{color:#17383a;background:#b8e4e8}:focus-visible{outline:3px solid var(--teal);outline-offset:5px}input,textarea{caret-color:var(--teal)}a,button{touch-action:manipulation}a{text-underline-offset:4px}body{scrollbar-color:#7b9fa2 var(--paper)}.container{width:min(var(--content),calc(100% - 80px));margin-inline:auto}.cover-image{object-fit:cover;object-position:center}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;color:#000;background:#fff;padding:10px 20px;position:fixed;top:10px;left:10px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{color:#fff;z-index:30;justify-content:space-between;align-items:center;height:80px;padding:20px 30px;transition:color .2s;display:flex;position:fixed;inset:0 0 auto}.site-header.is-scrolled{color:var(--teal)}.wordmark{font-family:var(--serif);letter-spacing:2.8px;font-size:28px;font-weight:600;line-height:1.4}.desktop-nav{letter-spacing:1.4px;gap:30px;font-size:14px;font-weight:900;display:flex}.desktop-nav a:hover{opacity:.65}.menu-toggle,.mobile-nav{display:none}.button{color:#fff;letter-spacing:1.8px;background:#000;border:0;border-radius:6px;justify-content:center;align-items:center;gap:16px;min-height:56px;padding:14px 30px;font-size:18px;font-weight:900;line-height:1.5;transition:background .2s,transform .2s;display:inline-flex}.button:hover{background:#24494d;transform:translateY(-2px)}.button:active{transform:translateY(0)}.button:disabled{cursor:not-allowed;background:#777;transform:none}.button svg{flex-shrink:0}.button-white{color:var(--ink);background:#fff}.button-white:hover{background:#e9f4f4}.button-line{background:#008736}.button-line:hover{background:#006b2b}.home-hero{color:#fff;place-items:center;height:100svh;min-height:640px;display:grid;position:relative}.hero-tint{background:#ffffff47;position:absolute;inset:0}.hero-content{text-align:center;padding:0 25px;position:relative}.hero-content h1{font-family:var(--serif);letter-spacing:5px;font-size:100px;font-weight:600;line-height:1}.hero-content>p{letter-spacing:2px;margin-top:10px;font-size:20px;font-weight:900;line-height:1.4}.hero-button{margin-top:30px}.sale-banner{width:200px;height:200px;position:absolute;bottom:20px;right:20px}.sale-banner img{object-fit:contain}.about-intro{text-align:center;padding-block:110px 120px}.section-label,.section-title>p{letter-spacing:.8px;color:var(--teal);font-size:16px;font-weight:700;line-height:1}.about-intro h2{letter-spacing:2.4px;margin-top:10px;font-size:24px;font-weight:700;line-height:1.8}.about-intro .button{margin-top:40px}.section-title{text-align:center}.section-title h2{letter-spacing:4.8px;margin-top:10px;font-size:48px;line-height:1.25}.section-description{text-align:center;letter-spacing:1.2px;margin-top:25px;font-size:18px;font-weight:700}.instagram-panel{background:var(--white);text-align:center;border-radius:16px;margin-top:60px;padding:65px 30px}.instagram-panel h3{letter-spacing:3.6px;font-size:36px;line-height:1.5}.instagram-link{letter-spacing:1.8px;justify-content:center;align-items:center;gap:10px;font-size:18px;font-weight:700;display:inline-flex}.instagram-button{color:#fff;background:linear-gradient(-225deg,#7b0eff 0%,#d506e5 29%,#ff1361 67%,#fff800 100%);border-radius:6px;width:326px;max-width:100%;margin-top:20px;padding:12px 30px}.instagram-button:hover{filter:brightness(.92)}.tour-list{gap:60px;margin-top:60px;display:grid}.tour-card{background:var(--white);border-radius:16px;padding:70px;scroll-margin-top:90px}.tour-heading{text-align:center}.sale-label{background:var(--sale);color:#fff;border-radius:8px;padding:4px 14px;font-size:14px;font-weight:700;line-height:1.5;display:inline-block}.tour-heading h3{letter-spacing:1.8px;margin-top:20px;font-size:36px;line-height:1.4}.tour-heading>p{color:#737373;letter-spacing:2.4px;margin-top:12px;font-size:24px;font-weight:700;line-height:1.4}.tour-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:40px;display:grid}.tour-gallery.photos-3{grid-template-columns:repeat(3,minmax(0,1fr))}.tour-photo{height:270px;position:relative;overflow:hidden}.tour-photo img{object-fit:cover;object-position:center}.tour-details{margin:20px 0 40px}.tour-details>div{border-bottom:1px solid var(--line);grid-template-columns:24% minmax(0,1fr);align-items:center;gap:20px;padding:32px 20px;display:grid}.tour-details dt{color:#737373;font-size:20px;font-weight:700}.tour-details dd{margin:0;font-size:20px;font-weight:700;line-height:1.8}.tour-details small{margin-top:12px;font-size:14px;font-weight:400;line-height:1.8;display:block}.tour-details .price-row{border:0;padding-top:30px;padding-bottom:10px}.price-block+.price-block{margin-top:30px}.price-label{font-size:16px}.price-line{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:15px;margin-top:10px;display:flex}.price-line strong{text-underline-offset:6px;text-decoration:underline}.sale-price,.price-arrow{color:var(--sale)}.discount-label{background:var(--sale);color:#fff;padding:2px 6px;font-size:10px;line-height:1.6}.booking-button{max-width:480px;margin-inline:auto;display:flex}.tour-notes{background:#fff;border-radius:16px;margin-top:60px;padding:40px;font-size:14px;line-height:2}.tour-notes h3{margin-bottom:12px;font-size:20px}.tour-notes ul{margin:0;padding-left:20px}.tour-notes li+li{margin-top:10px}.reservation{padding-top:120px}.booking-steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:68px;margin:60px 0 0;padding:0;list-style:none;display:grid}.booking-steps>li{position:relative}.booking-steps>li:not(:last-child):after{content:"";border-top:20px solid #0000;border-bottom:20px solid #0000;border-left:18px solid #c4c4c4;position:absolute;top:50%;right:-44px;transform:translateY(-50%)}.step-card{background:#fff;border-radius:12px;height:100%;padding:24px 20px}.step-number{color:var(--teal);font-size:24px;font-weight:900}.step-card h3{margin-top:10px;font-size:20px;line-height:1.5}.step-card p{color:var(--muted);letter-spacing:.7px;margin-top:16px;font-size:14px;font-weight:700;line-height:1.9}.step-card small{margin-top:8px;font-size:12px;display:block}.faq-section{padding-block:120px}.faq-list{gap:30px;margin-top:60px;display:grid}.faq-list article{background:#fff;border-radius:12px;padding:36px 40px}.faq-list h3{letter-spacing:1.4px;font-size:28px;line-height:1.5}.faq-list p{letter-spacing:.7px;margin-top:16px;font-size:14px;line-height:1.9}.contact-banner{color:#fff;border-radius:16px;place-items:center;min-height:449px;display:grid;position:relative;overflow:hidden}.photo-shade{background:#0000002e;position:absolute;inset:0}.contact-banner .photo-shade{background:#0006}.contact-banner-content{text-align:center;padding:60px 40px;position:relative}.contact-banner .section-title>p{color:#fff}.contact-banner .section-title h2{letter-spacing:3.6px;font-size:36px}.contact-banner-content>p{margin-top:25px;font-size:16px;font-weight:700;line-height:1.8}.contact-buttons{justify-content:center;gap:20px;margin-top:35px;display:flex}.contact-buttons .button{letter-spacing:.8px;font-size:16px}.site-footer{padding:100px 40px 30px}.footer-main{text-align:center}.footer-main>.wordmark{color:var(--teal);letter-spacing:4.8px;font-size:48px;display:block}.footer-main>.instagram-link{margin-top:30px}.footer-main nav{letter-spacing:1.4px;flex-wrap:wrap;justify-content:center;gap:30px;margin-top:45px;font-size:14px;font-weight:700;display:flex}.footer-main nav a:hover{text-decoration:underline}.copyright{text-align:center;margin-top:70px;font-size:12px}.page-hero{color:#fff;place-items:center;height:60svh;min-height:320px;max-height:520px;display:grid;position:relative}.page-hero h1{font-family:var(--serif);font-size:64px;font-weight:600;line-height:1.4;position:relative}.about-story{text-align:center;letter-spacing:1px;padding-top:120px;font-size:18px;font-weight:700;line-height:2.4}.about-story h2{letter-spacing:3px;margin-bottom:20px;font-size:36px;line-height:1.5}.about-story p+p{margin-top:18px}.owner{background:#fff;grid-template-columns:1fr 1fr;align-items:center;margin-top:80px;display:grid}.owner-photo{height:500px;position:relative}.owner-photo img{object-fit:cover}.owner-bio{padding:40px}.owner-bio h2{color:var(--teal);font-size:18px}.owner-name{letter-spacing:3px;margin-bottom:25px;font-size:36px;font-weight:900}.owner-bio>p:not(.owner-name){font-size:16px;line-height:2}.owner-facts{margin-top:24px;font-size:14px}.qualifications{padding-block:100px 120px}.qualifications h2{text-align:center;letter-spacing:3px;font-size:32px}.qualifications ul{grid-template-columns:2fr 1fr 1fr;align-items:start;gap:20px;margin:40px 0 0;padding:0;list-style:none;display:grid}.qualifications li{text-align:center;background:#fff;border-radius:8px;min-width:0;padding:20px;font-size:20px;font-weight:700}.qualifications h3{font:inherit;line-height:1.5}.qualification-images{align-items:flex-start;gap:15px;margin-top:20px;display:flex}.qualification-images img{object-fit:contain;flex:1 1 0;width:100%;min-width:0;height:auto}.plan-page{padding-block:80px}.plan-navigation{flex-direction:column;gap:16px;max-width:650px;margin:30px auto;display:flex}.plan-navigation a{text-decoration:underline}.contact-page{padding-top:110px;padding-bottom:40px}.contact-page .section-title>p{font-family:var(--serif);color:var(--ink);letter-spacing:1.6px;font-size:32px;font-weight:600;line-height:1.4}.contact-page .section-title h2{margin-top:15px}.contact-page .section-description{letter-spacing:.4px;font-size:16px}.contact-form{width:600px;max-width:100%;margin:40px auto 0}.form-field{margin-top:20px}.form-field label{align-items:center;gap:12px;margin-bottom:8px;font-size:15px;font-weight:700;display:flex}.required-label{background:var(--required);color:#fff;border-radius:3px;padding:0 7px;font-size:12px;line-height:1.8}.form-field input,.form-field select,.form-field textarea{width:100%;min-height:50px;color:var(--ink);background:#fff;border:1px solid #d6d6d6;border-radius:4px;padding:12px 15px;font-size:16px}.form-field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 16px center;background-repeat:no-repeat;background-size:18px 18px;padding-right:48px}.form-field textarea{resize:vertical;min-height:160px}.form-field [aria-invalid=true]{border-color:#b32922}.field-error{color:#a32420;margin-top:6px;font-size:14px}.form-status{background:#fff;border:1px solid #d0d0d0;margin-top:20px;padding:16px;font-size:14px;line-height:1.8}.form-error{color:#a32420;border-color:#b32922}.form-submit{min-width:220px;margin:30px auto 0;display:flex}.form-disabled-note{border-left:1px solid var(--teal);background:#fff;max-width:600px;margin:28px auto 0;padding:16px 20px;font-size:14px}.honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.turnstile-container{margin-top:24px}.message-page{text-align:center;padding-block:90px}.message-page h2{font-size:30px}.message-page p{margin-top:24px}.message-page .button{margin-top:32px}@media (min-width:1440px){.container{--content:1200px}.tour-card{padding:70px}.hero-content h1{font-size:110px}.hero-content>p{font-size:22px}}@media (max-width:1140px){.desktop-nav{gap:20px}.hero-content h1{font-size:80px}.hero-content>p{font-size:18px}.tour-card{padding:50px 40px}.tour-heading h3{font-size:30px}.tour-heading>p{font-size:20px}.instagram-panel h3{font-size:30px}.booking-steps{gap:40px}.booking-steps>li:not(:last-child):after{border-top-width:16px;border-bottom-width:16px;border-left-width:14px;right:-29px}.tour-details>div{grid-template-columns:25% minmax(0,1fr);padding-inline:0}.tour-gallery.photos-3 .tour-photo{height:230px}.owner-bio{padding:30px}}@media (max-width:840px){.qualifications ul{grid-template-columns:1fr 1fr}.qualifications li:first-child{grid-column:1/-1}.container{width:calc(100% - 40px)}.site-header{height:70px;padding:15px 20px}.desktop-nav{display:none}.menu-toggle{width:44px;height:44px;color:var(--teal);background:0 0;border:0;justify-content:center;align-items:center;padding:10px;display:flex;position:absolute;top:18px;right:20px}.mobile-nav{color:#fff;overscroll-behavior:contain;background:#002b2fe6;border:0;border-radius:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:120px;position:fixed;inset:0;overflow:auto}.mobile-nav[open]{flex-direction:column;align-items:center;gap:30px;display:flex}.mobile-nav::backdrop{background:#00000029}.mobile-nav-links{flex-direction:column;align-items:center;gap:30px;display:flex}.mobile-nav-links a{letter-spacing:normal;font-size:24px;font-weight:900;line-height:1.4}.mobile-nav-close{color:#fff;background:0 0;border:0;place-items:center;width:44px;height:44px;padding:8px;display:grid;position:absolute;top:13px;right:7px}.mobile-nav[open] .mobile-nav-close svg{animation:.4s cubic-bezier(.4,.4,0,1) both menu-close-appear}.mobile-nav-instagram{color:#fff;letter-spacing:.9px;background:linear-gradient(-225deg,#7b0eff 0%,#d506e5 29%,#ff1361 67%,#fff800 100%);border-radius:8px;flex-shrink:0;align-items:center;gap:10px;padding:15px 100px;font-size:18px;font-weight:700;line-height:1.4;display:inline-flex}.mobile-nav-instagram svg{flex-shrink:0;width:21px;height:24px}.mobile-nav a:focus-visible,.mobile-nav button:focus-visible{outline-color:#fff}.home-hero{min-height:600px}.hero-content h1{letter-spacing:3.2px;font-size:64px}.hero-content>p{max-width:500px;margin:15px auto 0;font-size:16px}.sale-banner{width:150px;height:150px}.about-intro{padding-block:90px}.about-intro h2{font-size:20px}.desktop-break{display:none}.section-title h2{letter-spacing:3.6px;font-size:36px}.instagram-panel h3,.tour-heading h3{font-size:26px}.tour-heading>p{font-size:18px}.tour-card{padding:45px 30px}.tour-gallery{gap:10px}.tour-photo{height:220px}.tour-gallery.photos-3 .tour-photo{height:180px}.tour-details dt,.tour-details dd{font-size:18px}.tour-details>div{grid-template-columns:27% minmax(0,1fr);gap:15px}.price-line{gap:10px}.booking-steps{grid-template-columns:1fr 1fr;gap:30px}.booking-steps>li:not(:last-child):after{display:none}.step-card{padding:25px}.faq-list h3{font-size:24px}.faq-list article{padding:30px}.contact-banner .section-title h2{font-size:30px}.contact-banner-content{padding:50px 25px}.contact-buttons{flex-direction:column;align-items:center}.contact-buttons .button{width:320px;max-width:100%}.owner{grid-template-columns:1fr}.owner-photo{height:500px}.owner-bio{padding:40px}.about-story{padding-top:80px;font-size:16px}.about-story h2{font-size:28px}.about-story br{display:none}.page-hero h1{font-size:56px}.footer-main nav{gap:20px}.contact-page .section-title h2{font-size:36px}}@media (max-width:540px){.mobile-nav{padding:60px 15px}.mobile-nav[open],.mobile-nav-links{align-items:flex-start}.mobile-nav-instagram{padding:15px 39px}.mobile-nav[open] .mobile-nav-close svg{animation-duration:.8s;animation-delay:.2s}.qualifications ul{grid-template-columns:1fr}.qualification-images{flex-direction:column}.qualification-images img{flex:none}.container{width:calc(100% - 40px)}.wordmark{letter-spacing:2.6px;font-size:26px}.home-hero{height:100svh;min-height:580px;max-height:900px}.hero-content{padding:0 20px;transform:translateY(-16px)}.hero-content h1{letter-spacing:2.2px;font-size:44px;line-height:1.15}.hero-content>p{letter-spacing:1.4px;max-width:330px;font-size:14px;line-height:1.7}.hero-button{min-height:52px;margin-top:28px;font-size:16px}.sale-banner{width:110px;height:110px;bottom:15px;right:15px}.about-intro{padding-block:70px}.about-intro h2{letter-spacing:1.2px;font-size:18px;line-height:2}.about-intro .button{margin-top:30px}.section-title h2{letter-spacing:2px;font-size:30px}.section-description{letter-spacing:.6px;margin-top:20px;font-size:15px;line-height:1.9}.instagram-panel{border-radius:12px;margin-top:35px;padding:32px 20px}.instagram-panel h3{letter-spacing:1.2px;font-size:22px;line-height:1.6}.instagram-button{width:240px;font-size:16px}.tour-list{gap:35px;margin-top:35px}.tour-card{border-radius:12px;padding:35px 20px}.sale-label{font-size:12px}.tour-heading h3{letter-spacing:1px;margin-top:16px;font-size:23px;line-height:1.6}.tour-heading>p{letter-spacing:.8px;font-size:16px;line-height:1.8}.tour-gallery,.tour-gallery.photos-3{grid-template-columns:1fr;gap:10px;margin-top:25px}.tour-photo,.tour-gallery.photos-3 .tour-photo{aspect-ratio:1.55;height:auto}.tour-details{margin-bottom:24px}.tour-details>div{grid-template-columns:1fr;gap:8px;padding-block:24px}.tour-details dt{font-size:15px}.tour-details dd{font-size:17px}.tour-details small{margin-top:8px;font-size:12px}.price-line{gap:10px;font-size:17px}.price-arrow svg{width:18px}.price-label{font-size:14px}.price-block+.price-block{margin-top:24px}.booking-button{letter-spacing:.8px;gap:10px;padding-inline:15px;font-size:15px}.tour-notes{margin-top:35px;padding:25px 20px;font-size:13px}.reservation{padding-top:75px}.booking-steps{grid-template-columns:1fr;gap:35px;margin-top:35px}.booking-steps>li:not(:last-child):after{border:10px solid #0000;border-top:12px solid #c4c4c4;border-bottom:0;display:block;inset:auto auto -25px calc(50% - 10px);transform:none}.step-card{padding:24px}.step-card h3{margin-top:5px}.step-card p{margin-top:10px}.faq-section{padding-block:75px}.faq-list{gap:20px;margin-top:35px}.faq-list article{padding:25px 20px}.faq-list h3{letter-spacing:.8px;font-size:20px}.faq-list p{font-size:14px;line-height:2}.contact-banner{width:100%;min-height:450px}.contact-banner .section-title h2{letter-spacing:1px;font-size:25px}.contact-banner-content>p{font-size:14px}.contact-banner-content>p br{display:none}.contact-buttons{gap:15px;margin-top:25px}.site-footer{padding:65px 20px 25px}.footer-main>.wordmark{font-size:40px}.footer-main nav{flex-direction:column;gap:18px;margin-top:35px}.copyright{margin-top:45px}.page-hero{height:42svh;min-height:280px;max-height:400px}.page-hero h1{font-size:44px}.about-story{text-align:left;letter-spacing:.7px;padding-top:65px;font-size:16px;line-height:2.1}.about-story h2{letter-spacing:1px;text-align:center;font-size:26px}.about-story p+p{margin-top:20px}.owner{margin-top:50px}.owner-photo{height:340px}.owner-bio{padding:30px 25px}.owner-name{font-size:30px}.qualifications{padding-block:65px}.qualifications h2{font-size:28px}.qualifications ul{gap:15px;margin-top:30px}.qualifications li{padding:20px;font-size:16px;line-height:1.8}.contact-page{padding-top:65px}.contact-page .section-title>p{font-size:26px}.contact-page .section-title h2{letter-spacing:1.4px;font-size:28px}.contact-page .section-description{font-size:14px}.contact-form{margin-top:30px}.form-field{margin-top:22px}.form-submit{font-size:16px}.form-disabled-note{font-size:13px}.plan-page{padding-top:50px}.message-page{padding-block:65px}.message-page h2{font-size:24px}.message-page p{font-size:15px}}@keyframes menu-close-appear{0%{opacity:0;rotate:20deg}to{opacity:1;rotate:0deg}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}}.news-page,.news-article{max-width:800px;padding-top:120px;padding-bottom:80px}.news-page li{border-bottom:1px solid #ddd;padding:24px 0;list-style:none}.news-page time,.news-article time{color:#666;font-size:14px}.news-article h1{margin:16px 0 32px;font-size:clamp(28px,5vw,42px);line-height:1.5}.news-article img{max-width:100%;height:auto;margin:24px 0}.news-article p{margin:20px 0;line-height:1.9}.news-article h2,.news-article h3{margin:40px 0 16px}.news-article a,.news-page a{color:var(--color-primary,#166f82);text-decoration:underline}.news-article blockquote{border-left:3px solid #aaa;padding-left:20px}
