.cns-page{--cns-rule:#c9d0d9}.cns-page ::selection{color:white;background:var(--royal)}.cns-page main :is(a,button,summary):focus-visible{outline:2px solid var(--royal);outline-offset:5px}.cns-page main a{text-underline-offset:5px}.cns-wrap{width:min(1280px,calc(100% - 112px));margin-inline:auto}.cns-hero{padding-top:70px;background:var(--paper)}.cns-hero-grid{display:grid;grid-template-columns:minmax(0,1.24fr) minmax(0,1fr);grid-gap:52px;gap:52px;align-items:start}.cns-heading{padding-top:8px;padding-bottom:44px}.cns-page .cns-heading h1{margin:0;color:var(--navy);font-size:clamp(3.3rem,6.35vw,5.7rem);font-weight:500;letter-spacing:-.04em;line-height:1.025}.cns-heading h1>span{display:block}.cns-heading h1 .cns-heading-accent{color:var(--royal)}.cns-heading>p{max-width:40ch;margin:32px 0 0;color:var(--slate);font-size:1.02rem;line-height:1.8}.cns-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:18px;margin-top:30px}.cns-hero-button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--royal);color:white;padding:18px 24px;min-height:57px;font-size:.9rem;font-weight:600;text-decoration:none;border-radius:3px;transition:background-color .18s ease}.cns-hero-button:hover{background:var(--navy)}.cns-hero-button svg,.cns-hero-foot svg{width:20px;height:20px;flex-shrink:0}.cns-hero-phone{color:var(--navy);font-size:.85rem;-webkit-text-decoration-color:#a4afbd;text-decoration-color:#a4afbd}.cns-hero-phone:hover{-webkit-text-decoration-color:var(--royal);text-decoration-color:var(--royal);color:var(--royal)}.cns-hero-photo{margin:16px 0 0;min-width:0}.cns-hero-photo-window{position:relative;height:560px;overflow:hidden;background:#e0d8c7}.cns-hero-photo img{object-fit:cover;object-position:50% 50%}.cns-hero-photo figcaption{margin:0;padding:17px 0;color:var(--slate);font-size:.73rem;line-height:1.7}.cns-hero-foot{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0;margin-top:25px;border-top:1px solid var(--cns-rule);font-size:.73rem;color:var(--navy)}.cns-hero-foot p{margin:0}.cns-hero-foot p span{margin-left:24px;color:var(--slate)}.cns-hero-foot a{display:inline-flex;align-items:center;gap:22px;text-decoration:none}.cns-hero-foot svg{color:var(--royal);width:17px;height:17px}.cns-request{padding:80px 0;background:#fff;scroll-margin-top:90px}.cns-request-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-gap:100px;gap:100px;align-items:start}.cns-page .cns-request-copy h2{margin:0;color:var(--navy);font-size:clamp(2.2rem,3.5vw,3.2rem);font-weight:500;letter-spacing:-.035em;line-height:1.13}.cns-request-copy>p{margin:22px 0 0;max-width:30ch;font-size:.96rem;line-height:1.8;color:var(--slate)}.cns-request-copy>a{display:inline-block;margin-top:23px;color:var(--royal);font-weight:600;font-size:.85rem}.cns-request-contact{margin-top:44px;font-size:.8rem;line-height:1.8}.cns-request-contact p{margin:0 0 4px;color:var(--slate)}.cns-request-contact a{color:var(--navy);overflow-wrap:anywhere}.cns-form-card{min-width:0}.cns-form-card .cf-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-gap:23px 24px;gap:23px 24px}.cns-form-card .cf-field{min-width:0;grid-column:1/-1}.cns-form-card .cf-field:nth-child(2),.cns-form-card .cf-field:nth-child(3){grid-column:auto}.cns-form-card .cf-label{display:block;margin-bottom:9px;color:var(--navy);font-size:.85rem;font-weight:600;line-height:1.5}.cns-form-card .cf-input{display:block;width:100%;min-width:0;padding:12px 14px;min-height:49px;border:1px solid #aab6c5;border-radius:2px;background:#fff;font:inherit;font-size:1rem;color:var(--ink);caret-color:var(--royal);transition:border-color .16s ease,background-color .16s ease}.cns-form-card .cf-input:hover{border-color:var(--royal)}.cns-form-card .cf-input:focus{outline:2px solid var(--royal);outline-offset:2px;background:#f7faff}.cns-form-card textarea.cf-input{min-height:126px;height:126px;resize:vertical}.cns-form-card .cf-field-invalid .cf-input{border-color:#b40000}.cns-form-card .cf-error{margin:7px 0 0;color:#b40000;font-size:.78rem;line-height:1.5}.cns-form-card .cf-delivery-error{grid-column:1/-1}.cns-form-card .cf-submit{grid-column:1/-1;display:block;width:100%;min-height:52px;padding:14px 18px;border:none;border-radius:2px;background:var(--royal);color:#fff;font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:background-color .16s ease}.cns-form-card .cf-submit:hover{background:var(--navy)}.cns-form-card .cf-reassure{grid-column:1/-1;margin:-9px 0 0;color:var(--slate);font-size:.76rem;line-height:1.7}.cns-delivery-note{margin:9px 0 0;color:var(--navy);font-size:.76rem;line-height:1.7}.cns-form-card .cf-success{padding:28px;background:var(--mist)}.cns-form-card .cf-success-title{font-size:1.4rem;font-weight:600;color:var(--navy)}.cns-form-card .cf-success-body{font-size:.95rem;line-height:1.8;margin-top:16px}.cns-form-card noscript{display:block;overflow-wrap:anywhere;font-size:.85rem;margin-top:20px}.cns-guide{background:#fff;padding:72px 0}.cns-guide-grid{display:grid;grid-template-columns:.85fr 1.3fr;grid-gap:70px;gap:70px}.cns-page .cns-booking-copy h2,.cns-page .cns-guide h2{margin:0;color:var(--navy);font-size:clamp(2rem,3vw,2.7rem);line-height:1.15;font-weight:500;letter-spacing:-.03em}.cns-guide-intro{margin-top:20px;color:var(--slate);line-height:1.75;font-size:.95rem}.cns-questions{border-top:1px solid var(--navy)}.cns-questions details{border-bottom:1px solid var(--cns-rule)}.cns-questions summary{list-style:none;position:relative;padding:23px 34px 23px 0;color:var(--navy);font-size:.97rem;font-weight:600;cursor:pointer}.cns-questions summary::-webkit-details-marker{display:none}.cns-questions summary:after,.cns-questions summary:before{content:"";position:absolute;background:var(--royal);width:12px;height:1px;top:35px;right:2px}.cns-questions summary:after{transform:rotate(90deg)}.cns-questions details[open] summary:after{transform:rotate(0)}.cns-questions summary:hover{color:var(--royal)}.cns-answer{padding:0 32px 24px 0;color:var(--slate);font-size:.9rem;line-height:1.8}.cns-answer p{margin:0}.cns-answer ul{margin:14px 0 0;padding-left:18px}.cns-answer a{color:var(--navy)}.cns-handoff{background:var(--paper);padding:clamp(56px,7vw,100px) 0;scroll-margin-top:100px}.cns-booking-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);align-items:end;grid-column-gap:0;column-gap:0;grid-row-gap:40px;row-gap:40px}.cns-page .cns-booking-copy h2{font-size:clamp(2.8rem,4.8vw,4.5rem);line-height:1.06;letter-spacing:-.04em}.cns-booking-copy h2 span{color:var(--royal)}.cns-booking-intro{max-width:35ch;margin:0;padding:0 0 5px 40px;color:var(--slate);font-size:1rem;line-height:1.85}.cns-calendar{position:relative;margin:0;min-height:300px;height:100%;overflow:hidden}.cns-calendar img{object-fit:cover;object-position:center 65%}.cns-booking-action{min-width:0;min-height:300px;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:start;padding:clamp(28px,3.5vw,50px);background:var(--navy)}.cns-booking-icon{width:40px;height:40px;color:#bfd4ff;margin-bottom:30px}.cns-book-button{display:inline-flex;width:100%;justify-content:space-between;align-items:center;gap:18px;min-height:56px;padding:16px 20px;background:white;color:var(--navy);border-radius:2px;font-size:.92rem;font-weight:700;text-decoration:none;transition:background-color .18s ease,color .18s ease}.cns-book-button:hover{background:#ddeaff;color:var(--royal)}.cns-page .cns-book-button:focus-visible{outline-color:#bfd4ff}.cns-book-button svg{width:20px;height:20px;flex:none}.cns-book-note{display:block;color:#bfd4ff;margin-top:15px;font-size:.73rem;line-height:1.7}.cns-title-line{overflow:clip;padding-bottom:.09em;margin-bottom:-.09em}.cns-title-line>span{display:inline-block;position:relative;transform-origin:left bottom}.cns-clarity-rule{position:absolute;left:.02em;right:.05em;bottom:.015em;height:2px;background:currentColor;transform-origin:left}.cns-form-card{position:relative}.cns-focus-trail{position:absolute;top:0;left:0;width:2px;height:1px;background:var(--royal);transform-origin:top left;pointer-events:none;opacity:0}.cns-questions details[data-expanding=false] summary:after{transform:rotate(90deg)}@media (prefers-reduced-motion:no-preference){.cns-questions summary:after{transition:transform .25s ease}.cns-book-button svg,.cns-hero-button svg{transition:transform .25s cubic-bezier(.16,1,.3,1)}.cns-hero-button:is(:hover,:focus-visible) svg{transform:translateY(4px)}.cns-book-button:is(:hover,:focus-visible) svg{transform:translateX(5px)}.cns-book-button:active,.cns-form-card .cf-submit:active,.cns-hero-button:active{transform:scale(.985)}}@media (max-width:1100px){.cns-wrap{width:calc(100% - 64px)}.cns-hero{padding-top:48px}.cns-hero-grid{gap:32px}.cns-hero-photo-window{height:470px}.cns-request-grid{gap:60px}}@media (max-width:800px){.cns-wrap{width:calc(100% - 48px)}.cns-hero{padding-top:40px}.cns-hero-grid{grid-template-columns:1fr;gap:34px}.cns-heading{padding:0}.cns-page .cns-heading h1{font-size:clamp(2.5rem,8.3vw,4.7rem)}.cns-heading>p{max-width:44ch;margin-top:25px;font-size:.98rem}.cns-hero-actions{flex-direction:row;align-items:center;gap:25px;flex-wrap:wrap;margin-top:24px}.cns-hero-photo{margin:0}.cns-hero-photo-window{height:370px}.cns-hero-photo img{object-position:50% 60%}.cns-hero-foot{margin-top:5px}.cns-hero-foot p span{display:block;margin:4px 0 0}.cns-request{padding:50px 0}.cns-request-grid{grid-template-columns:1fr;gap:35px}.cns-request-copy>p{max-width:45ch}.cns-request-contact{margin-top:24px}.cns-guide-grid{gap:35px}.cns-booking-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.cns-booking-intro{padding-left:28px;font-size:.92rem}.cns-booking-action{padding:28px}}@media (max-width:760px){.cns-booking-grid{grid-template-columns:1fr;row-gap:0}.cns-booking-intro{padding:0;margin:24px 0 30px;max-width:42ch}.cns-calendar{min-height:0;height:240px}.cns-booking-action{min-height:0;padding:30px}.cns-booking-icon{margin-bottom:22px}}@media (max-width:560px){.cns-wrap{width:calc(100% - 40px)}.cns-hero{padding-top:35px}.cns-page .cns-heading h1{font-size:clamp(2.35rem,9.8vw,3.4rem)}.cns-heading>p{font-size:.92rem;line-height:1.75}.cns-hero-actions{flex-direction:column;align-items:flex-start;gap:17px}.cns-hero-button{padding:15px 19px;min-height:53px;gap:22px;font-size:.84rem}.cns-hero-phone{font-size:.8rem}.cns-hero-grid{gap:30px}.cns-hero-photo-window{height:300px}.cns-hero-photo figcaption{font-size:.67rem;padding:13px 0}.cns-hero-foot{padding:18px 0;font-size:.66rem;gap:15px}.cns-hero-foot a{gap:9px;max-width:115px}.cns-form-card .cf-form{grid-template-columns:1fr;gap:21px}.cns-form-card .cf-field:nth-child(2),.cns-form-card .cf-field:nth-child(3){grid-column:1}.cns-guide{padding:44px 0}.cns-guide-grid{grid-template-columns:1fr;gap:28px}.cns-page .cns-guide h2{font-size:2rem}.cns-guide-intro{margin-top:14px;font-size:.88rem}.cns-questions summary{font-size:.89rem}.cns-answer{font-size:.85rem;padding-right:16px}.cns-booking-action{padding:26px 22px}.cns-book-button{font-size:.85rem;padding-inline:16px}}@media (max-width:360px){.cns-page .site-header-bar{gap:10px}}@media (prefers-reduced-motion:reduce){.cns-page main *,.cns-page main :after,.cns-page main :before{transition:none!important}}