*,:before,:after{box-sizing:border-box}:root{--ink:#16191c;--ink-soft:#4a5157;--line:#dcdfe3;--line-soft:#eceef1;--paper:#fff;--paper-alt:#f5f6f7;--brand:#15466b;--brand-dark:#0e3149;--accent:#c0561f;--ok:#1c6b45;--warn:#a3421a;--measure:68ch;--wrap:1120px}html{-webkit-text-size-adjust:100%}body{color:var(--ink);background:var(--paper);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.65}h1,h2,h3{letter-spacing:-.01em;margin:0 0 .6em;font-weight:600;line-height:1.2}h1{font-size:clamp(1.9rem,1.3rem + 2.2vw,2.7rem)}h2{font-size:clamp(1.4rem,1.1rem + 1.1vw,1.75rem)}h3{font-size:1.1rem}p,ul,ol{margin:0 0 1.1em}p,li{max-width:var(--measure)}a{color:var(--brand)}a:hover{color:var(--brand-dark)}img{max-width:100%;height:auto}hr{border:0;border-top:1px solid var(--line);margin:2.5rem 0}.wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:1.25rem}.section{padding-block:clamp(2.5rem,1.5rem + 3vw,4.25rem)}.section--alt{background:var(--paper-alt);border-block:1px solid var(--line-soft)}.masthead{border-bottom:1px solid var(--line)}.masthead__inner{flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;padding-block:.9rem;display:flex}.brand{letter-spacing:-.02em;color:var(--ink);margin-right:auto;font-size:1.15rem;font-weight:700;text-decoration:none}.brand span{color:var(--brand)}.nav{flex-wrap:wrap;gap:.25rem 1.15rem;font-size:.95rem;display:flex}.nav a{color:var(--ink-soft);border-bottom:2px solid #0000;padding-block:.2rem;text-decoration:none}.nav a:hover,.nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--brand)}.masthead__phone{white-space:nowrap;color:var(--brand);font-weight:600;text-decoration:none}@media (width<=900px){.nav{flex-basis:100%;order:1;gap:.15rem 1rem;font-size:.9rem}}.btn{background:var(--brand);color:#fff;border:1px solid var(--brand);border-radius:3px;padding:.7rem 1.35rem;font-size:.98rem;font-weight:600;text-decoration:none;display:inline-block}.btn:hover{background:var(--brand-dark);border-color:var(--brand-dark);color:#fff}.btn--ghost{color:var(--brand);background:0 0}.btn--ghost:hover{background:var(--paper-alt);color:var(--brand-dark)}.btn-row{flex-wrap:wrap;gap:.75rem;margin-top:1.5rem;display:flex}.hero{border-bottom:1px solid var(--line-soft);padding-block:clamp(2.75rem,1.5rem + 4vw,5rem)}.hero p.lead{color:var(--ink-soft);font-size:1.12rem}.eyebrow{text-transform:uppercase;letter-spacing:.09em;color:var(--accent);margin-bottom:.75rem;font-size:.78rem;font-weight:700}.grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.5rem;display:grid}.grid--2{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.card{border:1px solid var(--line);background:var(--paper);border-radius:4px;padding:1.4rem}.card h3{margin-bottom:.4rem}.card p{color:var(--ink-soft);margin-bottom:0;font-size:.97rem}.card a{font-weight:600;text-decoration:none}.card a:hover{text-decoration:underline}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;border-top:3px solid var(--brand);max-width:none;padding-top:.9rem}.steps li:before{content:"Step " counter(step);letter-spacing:.07em;text-transform:uppercase;color:var(--accent);margin-bottom:.35rem;font-size:.78rem;font-weight:700;display:block}.steps h3{margin-bottom:.3rem}.steps p{color:var(--ink-soft);margin-bottom:0;font-size:.97rem}.pill-list{flex-wrap:wrap;gap:.5rem;margin:0 0 1.25rem;padding:0;list-style:none;display:flex}.pill-list li{max-width:none;color:var(--ink-soft);border:1px solid var(--line);background:var(--paper);border-radius:999px;margin:0;padding:.25rem .8rem;font-size:.9rem}.tick{padding:0;list-style:none}.tick li{margin-bottom:.55rem;padding-left:1.6rem;position:relative}.tick li:before{content:"";border-left:2px solid var(--brand);border-bottom:2px solid var(--brand);width:.7rem;height:.35rem;position:absolute;top:.62em;left:0;transform:rotate(-45deg)}.faq details{border-bottom:1px solid var(--line);padding:1rem 0}.faq summary{cursor:pointer;font-weight:600;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";float:right;color:var(--brand);font-size:1.3rem;font-weight:400;line-height:1}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--ink-soft);margin:.8rem 0 0}.band{background:var(--brand);color:#fff}.band h2{color:#fff}.band p{color:#d3e2ee}.band .btn{color:var(--brand-dark);background:#fff;border-color:#fff}.band .btn:hover{color:var(--brand-dark);background:#e8eef4}.band a{color:#fff}.form{max-width:34rem}.form label{margin-bottom:.3rem;font-size:.93rem;font-weight:600;display:block}.form input,.form select,.form textarea{width:100%;font:inherit;border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:3px;margin-bottom:1.1rem;padding:.6rem .7rem;font-size:1rem}.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--brand);outline-offset:1px;border-color:var(--brand)}.form textarea{resize:vertical;min-height:8rem}.hp{position:absolute;left:-9999px}.foot{border-top:1px solid var(--line);background:var(--paper-alt);color:var(--ink-soft);padding-block:2.5rem 2rem;font-size:.93rem}.foot h4{text-transform:uppercase;letter-spacing:.07em;color:var(--ink);margin:0 0 .7rem;font-size:.82rem}.foot ul{margin:0;padding:0;list-style:none}.foot li{margin-bottom:.35rem}.foot a{color:var(--ink-soft);text-decoration:none}.foot a:hover{color:var(--brand);text-decoration:underline}.foot__cols{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:1.75rem;margin-bottom:2rem;display:grid}.foot__base{border-top:1px solid var(--line);padding-top:1.25rem;font-size:.85rem}.foot__base p{max-width:none;margin:0 0 .4rem}.skip{position:absolute;left:-9999px}.skip:focus{z-index:10;border:2px solid var(--brand);background:#fff;padding:.5rem 1rem;top:.5rem;left:.5rem}.notice{border:2px solid var(--warn);background:#fdf3ee;border-radius:4px;margin-bottom:2rem;padding:1rem 1.15rem}.notice p{max-width:none;color:var(--ink);margin:0;font-size:.95rem}.notice strong{color:var(--warn)}.tiers{grid-template-columns:repeat(auto-fit,minmax(min(250px,100%),1fr));gap:1.5rem;display:grid}.tiers--detailed{grid-template-columns:repeat(auto-fit,minmax(min(430px,100%),1fr))}.tier{border:1px solid var(--line);background:var(--paper);border-radius:4px;flex-direction:column;height:100%;padding:1.5rem;display:flex}.tier--featured{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.tier__flag{letter-spacing:.08em;text-transform:uppercase;color:var(--brand);margin-bottom:.5rem;font-size:.72rem;font-weight:700}.tier h3{margin-bottom:.5rem}.price{letter-spacing:-.02em;color:var(--ink);font-size:2rem;font-weight:700;line-height:1.1}.price__note{color:var(--ink-soft);letter-spacing:0;margin-top:.25rem;font-size:.86rem;font-weight:400;display:block}.price__indicative{color:var(--warn);letter-spacing:0;margin-top:.3rem;font-size:.8rem;font-weight:600;display:block}.tier__meta{color:var(--ink-soft);border-top:1px solid var(--line-soft);margin:.9rem 0 0;padding:.9rem 0 0;font-size:.88rem;list-style:none}.tier__meta li{max-width:none;margin-bottom:.3rem}.tier__summary{color:var(--ink-soft);margin:.9rem 0 0;font-size:.96rem}.tier__best{background:var(--paper-alt);border-left:3px solid var(--brand);color:var(--ink);max-width:none;margin:.9rem 0 0;padding:.7rem .85rem;font-size:.93rem}.tier .btn-row{margin-top:auto;padding-top:1.4rem}.proscons{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1.1rem 1.75rem;margin-top:1.2rem;display:grid}.proscons h4{text-transform:uppercase;letter-spacing:.07em;margin:0 0 .55rem;font-size:.78rem}.proscons--pro h4{color:var(--ok)}.proscons--con h4{color:var(--warn)}.proscons ul{color:var(--ink-soft);margin:0;padding:0;font-size:.92rem;list-style:none}.proscons li{max-width:none;margin-bottom:.5rem;padding-left:1.35rem;position:relative}.proscons li:before{font-weight:700;position:absolute;left:0}.proscons--pro li:before{content:"+";color:var(--ok)}.proscons--con li:before{content:"−";color:var(--warn)}.chooser{border-collapse:collapse;width:100%;font-size:.95rem}.chooser th,.chooser td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:.75rem .9rem}.chooser th{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-soft);border-bottom-width:2px;font-size:.78rem}.chooser td:last-child{white-space:nowrap;font-weight:600}.table-scroll{margin-bottom:1.5rem;overflow-x:auto}.booking-step{border:1px solid var(--line);background:var(--paper);border-radius:4px;margin-bottom:1.25rem;padding:1.4rem}.booking-step h3{margin-bottom:.4rem}.booking-step p{color:var(--ink-soft);margin-bottom:0;font-size:.96rem}#cal-embed{width:100%;min-height:620px}
