/* Blue mockup edition: independently readable contrast on light surfaces */
:root{--gtm-blue:#0764f5;--gtm-navy:#0b213e;--gtm-teal:#13cccc;--gtm-muted:#506078}
html,body{overflow-x:hidden}body{background:#f1f8fd;color:#10243d}.site-header{position:relative!important;z-index:50!important;background:#fff!important;box-shadow:0 2px 16px rgba(9,39,75,.07)!important}.header-inner{height:88px!important}.brand-emblem{background:linear-gradient(135deg,#0a67ec,#137fad)!important}.brand-copy strong{font-weight:900!important;color:#0d2746!important}.brand-copy small{color:#576a7d!important}.desktop-nav a{color:#10243d!important;font-weight:650!important}.desktop-nav a:hover,.desktop-nav a:focus{color:#0065ed!important}.site-header .btn-yellow{background:#0866ee!important;border-radius:34px!important;color:#fff!important}.gtm-home{background:linear-gradient(#eaf5fc,#f8fcff);font-family:Inter,'DM Sans',sans-serif}.gtm-shell{max-width:1260px;width:calc(100% - 72px);margin-left:auto;margin-right:auto}.gtm-hero{min-height:535px;background:#061d33;position:relative;isolation:isolate;overflow:hidden}.gtm-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#04182fe9 0%,#061d35e0 27%,#09213aa8 46%,#091c304d 72%,#071a310a 100%);z-index:-1}.gtm-hero-photo{position:absolute;inset:0 0 0 31%;background-image:url('../img/gt-highlands-hero-clean.webp');background-size:cover;background-position:center 50%;z-index:-2}.gtm-hero-inner{display:flex;align-items:center;min-height:535px}.gtm-hero-copy{max-width:615px;color:#fff;padding:45px 0 92px}.gtm-kicker{font-size:11px;letter-spacing:.27em;font-weight:750;color:#c7e3f5;margin:0 0 18px}.gtm-kicker span{font-size:17px;letter-spacing:0;margin:0 10px;color:#54dad7}.gtm-hero h1{margin:0;color:#fff;font-size:clamp(50px,5.2vw,76px);line-height:1.06;letter-spacing:-.056em;font-weight:850}.gtm-hero h1 span{color:#18d2d1}.gtm-hero p{color:#f5f9fd;line-height:1.5;max-width:425px;font-size:20px;margin:20px 0 26px}.gtm-actions{display:flex;flex-wrap:wrap;gap:14px}.gtm-btn{border:1px solid transparent;border-radius:28px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:14px 25px;font-size:14px;font-weight:750;text-decoration:none!important;min-height:48px;transition:transform .2s,background .2s;cursor:pointer}.gtm-btn:hover{transform:translateY(-2px)}.gtm-blue{background:#0763f2;color:#fff!important;box-shadow:0 8px 25px #0763f23b}.gtm-blue:hover{background:#034fc3;color:white!important}.gtm-outline{border:1px solid #f0f6ff;background:#071a326b;color:white!important}.gtm-outline:hover{background:#122b4d}.gtm-btn .gt-icon{width:18px;height:18px}.gtm-book-position{position:relative;z-index:3;margin-top:-53px}.gtm-search{display:grid;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) minmax(0,1.1fr) minmax(160px,.85fr);gap:12px;align-items:center;padding:16px;background:white;border-radius:17px;box-shadow:0 14px 38px #0e345526}.gtm-field{height:62px;min-width:0;border:1px solid #dce7f2;border-radius:12px;display:flex;align-items:center;gap:11px;padding:10px 13px;color:#0763f2!important;background:#fff}.gtm-field>span:last-child{min-width:0;display:block;flex:1}.gtm-field>span:first-child{font-size:22px}.gtm-field small{display:block;color:#57667a!important;font-size:11px;margin-bottom:3px}.gtm-field select,.gtm-field input{display:block;width:100%;margin:0!important;min-width:0;padding:0!important;background:transparent!important;color:#122b4e!important;font-family:inherit;font-size:13px!important;font-weight:750;border:0!important;box-shadow:none!important;outline:none}.gtm-field input{font-size:12px!important}.gtm-swap{text-align:center;color:#0663db;font-size:25px}.gtm-search-button{height:62px;border-radius:13px}.gtm-book-note{color:#586982!important;font-size:11px!important;text-align:right;margin:8px 4px 0}.gtm-shortcuts{margin-top:26px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.gtm-shortcut{display:flex;gap:16px;align-items:center;min-height:118px;background:#fff;border:1px solid #e6f0fa;border-radius:18px;padding:18px;color:#132a49!important;text-decoration:none!important;box-shadow:0 10px 27px #18395408}.gtm-shortcut>span:nth-child(2){flex:1;min-width:0}.gtm-shortcut strong{display:block;font-size:17px;color:#112846}.gtm-shortcut small{display:block;color:#566b82;font-size:12px;line-height:1.55;margin-top:5px}.gtm-shortcut b{height:30px;width:30px;border-radius:50%;background:#edf4fa;color:#0763f2;text-align:center;line-height:26px;font-size:24px;font-weight:500}.gtm-short-icon,.gtm-feature-icon{width:60px;height:60px;display:flex;flex:0 0 auto;align-items:center;justify-content:center;border-radius:13px;color:#fff}.gtm-short-icon svg,.gtm-feature-icon svg{height:30px;width:30px}.gtm-icon-blue{background:linear-gradient(135deg,#2484fb,#045af0)}.gtm-icon-teal{background:linear-gradient(135deg,#23bec4,#00a5a5)}.gtm-icon-amber{background:linear-gradient(135deg,#ffdc68,#ffbf22);color:#16304b}.gtm-confidence{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:17px;margin-top:43px;margin-bottom:70px;align-items:stretch}.gtm-confidence-intro{padding:5px 30px 10px 0}.gtm-section-label{font-size:10px;letter-spacing:.23em;color:#1274ca;font-weight:800}.gtm-confidence h2{color:#092546;font-weight:850;font-size:clamp(31px,3vw,45px);line-height:1.04;letter-spacing:-.06em;margin:12px 0 16px}.gtm-confidence h2 span{color:#0868f4}.gtm-confidence-intro p{color:#52657a;max-width:310px;font-size:14px;line-height:1.6}.gtm-intro-rule{width:43px;height:3px;background:#0868f4;margin-top:19px}.gtm-feature{min-height:245px;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border-radius:16px;padding:18px;background:#0b2f4b;color:white;position:relative;isolation:isolate}.gtm-feature:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,#031526ed,#0c3a5680 55%,#0a263616)}.gtm-feature-safe{background:linear-gradient(125deg,#081a2d,#316285 58%,#0b2235)}.gtm-feature-local{background-image:url('../img/gt-highlands-road.webp');background-size:cover;background-position:center}.gtm-feature-history{background:linear-gradient(125deg,#534d46,#9e8c75,#3e4652)}.gtm-feature h3{color:#fff;font-size:18px;margin:8px 0;font-weight:750}.gtm-feature p{color:#f1f5f8;line-height:1.55;font-size:12px;margin:0}.gtm-feature-icon{width:50px;height:50px}.gtm-feature-icon svg{width:27px;height:27px}.gtm-more{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:20px 0 70px}.gtm-more h2{font-size:32px;color:#0a2747;margin:8px 0}.gtm-more p{font-size:14px;color:#56677a;max-width:580px}.gtm-home ~ .site-footer{margin-top:0}
/* Contrast: preserve dark readable text in white content blocks across all pages */
.entry-content,.entry-content p,.contact-card p,.trip-form-wrap,.trip-form-wrap label,.booking-aside p,.site-footer .privacy-small{color:#24364b}.entry-content h1,.entry-content h2,.entry-content h3,.contact-card h2,.contact-card h3{color:#102540}.entry-content a{color:#075cba}.trip-form input,.trip-form select,.trip-form textarea,.contact-card input,.contact-card textarea{color:#10243d!important;background:#fff!important}.gtm-home .gtm-search *{box-sizing:border-box}
@media(max-width:1150px){.gtm-confidence{grid-template-columns:repeat(3,minmax(0,1fr))}.gtm-confidence-intro{grid-column:1/-1}.gtm-confidence-intro p{max-width:610px}.gtm-search{grid-template-columns:1fr 16px 1fr 1fr}.gtm-search-button{grid-column:1/-1}.gtm-hero-photo{inset:0 0 0 25%}}
@media(max-width:760px){.header-inner{height:72px!important}.gtm-shell{width:calc(100% - 28px)}.gtm-hero{min-height:560px}.gtm-hero-photo{inset:0;background-size:auto 66%;background-repeat:no-repeat;background-position:center top}.gtm-hero:before{background:linear-gradient(0deg,#061b30 5%,#061b30 17%,#061b30f0 32%,#061b3040 80%)}.gtm-hero-inner{min-height:560px;align-items:flex-end}.gtm-hero-copy{padding:0 4px 70px}.gtm-kicker{font-size:9px;letter-spacing:.18em}.gtm-hero h1{font-size:clamp(37px,8vw,56px)}.gtm-hero p{font-size:14px;max-width:390px;margin:12px 0 18px}.gtm-actions{gap:8px}.gtm-btn{padding:12px 15px;font-size:12px}.gtm-book-position{margin-top:-26px}.gtm-search{grid-template-columns:1fr;padding:12px;gap:8px;border-radius:15px}.gtm-field{height:58px}.gtm-swap{display:none}.gtm-search-button{grid-column:auto;height:52px}.gtm-book-note{text-align:left}.gtm-shortcuts{grid-template-columns:1fr;gap:7px;margin-top:13px}.gtm-shortcut{min-height:78px;padding:10px 12px;border-radius:12px}.gtm-shortcut strong{font-size:14px}.gtm-shortcut small{font-size:11px}.gtm-short-icon{width:49px;height:49px}.gtm-short-icon svg{width:25px;height:25px}.gtm-confidence{grid-template-columns:1fr;gap:11px;margin-top:28px;margin-bottom:25px}.gtm-confidence-intro{grid-column:auto}.gtm-feature{min-height:150px}.gtm-more{flex-direction:column;align-items:flex-start;padding:18px 0 45px}.gtm-more h2{font-size:27px}}
@media(min-width:761px) and (max-width:1020px){.gtm-hero,.gtm-hero-inner{min-height:480px}.gtm-hero h1{font-size:52px}}

/* v4 supplied-brand identity & quotation upgrade */
.gt-brand-mark{display:block;flex:0 0 auto;height:51px;width:auto;object-fit:contain}.brand{gap:10px!important}.brand-copy strong{font-size:19px!important;letter-spacing:-.025em!important;white-space:nowrap}.brand-copy small{font-size:8px!important;letter-spacing:.14em!important}.gt-footer-logo{display:inline-flex!important;align-items:center;gap:9px;font-size:20px!important;letter-spacing:.01em}.gt-footer-logo img{width:38px;height:42px;object-fit:contain}.gt-quote-page .booking-page-layout{align-items:start}.gt-quote-wrap{margin-top:30px}.gt-quote-page .trip-form .gt-q-wide{grid-column:1/-1}.gt-quote-page .trip-form textarea{width:100%;border:0;background:transparent!important;resize:vertical;padding:11px 6px;color:#142b47!important;font:inherit;min-height:86px}.gt-quote-page .gt-quote-button{background:#0764f5!important;color:#fff!important;border-color:#0764f5!important}.gt-quote-page .gt-quote-button:hover{background:#034fc3!important}.gt-fb-inline{display:inline-flex;margin-top:18px;color:#075cbd;font-weight:750;text-decoration:none}.gt-about-v4{background:#f3f8fc;color:#18304a}.gt-about-v4 .section-space{padding-top:74px;padding-bottom:74px}.gt-about-v4 h2{font-size:clamp(27px,3vw,43px);line-height:1.16;color:#0b2c4d;margin:14px 0 22px;letter-spacing:-.035em}.gt-about-v4 p{color:#425671;line-height:1.8}.gt-about-split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:65px}.gt-about-image{border-radius:22px;overflow:hidden;box-shadow:0 24px 65px #183a5c25}.gt-about-image img{display:block;width:100%;height:350px;object-fit:cover}.gt-about-stat{display:flex;align-items:center;gap:15px;margin-top:26px}.gt-about-stat strong{font-size:43px;color:#0565e7}.gt-about-stat span{color:#607288;font-size:13px}.gt-about-purpose{background:#fff}.gt-about-lead{max-width:930px;font-size:17px}.gt-about-value-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:38px}.gt-about-value{background:#f5f9ff;border:1px solid #dce9f5;border-radius:18px;padding:28px}.gt-about-value>span{display:inline-flex;width:51px;height:51px;align-items:center;justify-content:center;color:#fff;background:linear-gradient(130deg,#0871f1,#00aeab);border-radius:13px}.gt-about-value .gt-icon{width:25px;height:25px}.gt-about-value h3{color:#0a2949;font-size:21px;margin:20px 0 8px}.gt-about-value p{margin:0;font-size:14px}.gt-about-leadership{background:#eaf4fc}.gt-about-leaders{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:720px;margin-top:28px}.gt-about-leader{background:#fff;border:1px solid #d7e6f3;border-radius:16px;padding:25px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;box-shadow:0 5px 22px #0a365010}.gt-leader-avatar{background:#e7f2fe;color:#0964e6;border-radius:50%;display:inline-flex;width:48px;height:48px;align-items:center;justify-content:center}.gt-about-leader strong{font-size:18px;color:#0f2b47}.gt-about-leader small{font-size:13px;color:#5e7185}.gt-about-legal{font-size:12px!important;margin-top:28px}.gt-about-v4 .entry-content{background:#fff;border-radius:16px;padding:25px}.gtm-search .gtm-field input{color:#0d2746!important}.site-footer a:hover{color:#50c6e4}.gt-quote-page .trip-form-wrap,.gt-about-v4 .gt-about-value{color:#172d48}
@media(max-width:760px){.gt-brand-mark{height:40px}.brand-copy strong{font-size:15px!important}.brand-copy small{font-size:6.5px!important}.gt-about-split,.gt-about-value-grid,.gt-about-leaders{grid-template-columns:1fr;gap:16px}.gt-about-v4 .section-space{padding-top:48px;padding-bottom:48px}.gt-about-image img{height:230px}.gt-quote-page .gt-q-wide{grid-column:auto}}

/* v5 additions */
.gt-office-b5{margin:35px 0;padding:30px;border-radius:18px;background:#fff;border:1px solid #d9e8f5;box-shadow:0 8px 30px #143d6210;color:#193149}
.gt-office-b5 h2{color:#102947;margin:8px 0 12px}.gt-office-b5 p{color:#334b64;line-height:1.7;margin:8px 0}.gt-office-b5 a{color:#075cbd;font-weight:700}
.gt-footer-extras{display:flex;flex-wrap:wrap;justify-content:space-between;gap:24px;padding:22px 0;border-top:1px solid #ffffff22}
.gt-footer-apps{display:flex;flex-direction:column;gap:12px}.gt-footer-apps strong{color:#f0f6fd}.gt-footer-app-buttons,.gt-footer-policies{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.gt-footer-app-buttons a{padding:11px 14px;background:#ffffff12;border:1px solid #ffffff36;border-radius:11px;color:#fff;font-weight:700;font-size:13px;text-decoration:none}
.gt-footer-policies a{color:#cfdae7;text-decoration:underline;text-underline-offset:3px;font-size:13px}
.gt-book-apps{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:15px}.gt-book-apps span{font-size:13px;color:#405670}.gt-book-apps a{font-size:13px;color:#0758ae;font-weight:700;text-decoration:underline}
.gt-legal-page{background:#f0f7fc}.gt-legal-layout{padding:60px 0 85px;max-width:920px}.gt-legal-card{background:#fff;border:1px solid #dce9f3;border-radius:20px;padding:clamp(22px,4vw,54px);box-shadow:0 16px 50px #13466b10;color:#19334e}
.gt-legal-card h2{color:#0d2a48;font-size:clamp(21px,2.5vw,29px);margin:30px 0 12px}.gt-legal-card p,.gt-legal-card li{color:#334b62;line-height:1.8}.gt-legal-card a{color:#075cbd}
.gt-legal-source{margin-top:40px;border-top:1px solid #d6e2ed;padding-top:20px}.gt-legal-source strong{color:#0c3154}.gt-legal-source p{font-size:13px}.gt-legal-source a{font-size:13px;word-break:break-word}
@media(max-width:650px){.gt-legal-layout{padding:30px 0 55px}.gt-footer-extras{flex-direction:column}.gt-office-b5{padding:22px}}

/* v6: two office cards and accessible policy typography */
.gt-office-locations { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px; }
.gt-office-locations .gt-office-b5 { margin-top:0; }
.gt-legal-card.entry-content {color:#253444;line-height:1.75;}
.gt-legal-card.entry-content h2 {color:#0b2442;margin-top:1.7em;}
.gt-legal-card.entry-content li {margin-bottom:.65rem;}
.gt-legal-card.entry-content a {color:#0756bd;text-decoration:underline;}
@media(max-width:767px){.gt-office-locations{grid-template-columns:1fr;}}

/* v7 footer: office details remain on Contact Us, app shortcuts replace footer offices */
.footer-top{grid-template-columns: minmax(215px,1.6fr) minmax(130px,1fr) minmax(145px,1.1fr) minmax(205px,1.35fr);gap:clamp(18px,3vw,48px)}
.footer-col.gt-footer-app-column p{color:#b7c5d7;margin-bottom:14px;line-height:1.7}
.footer-col.gt-footer-app-column a{display:block;color:#e3f0ff;text-decoration:none}
.footer-col.gt-footer-app-column a:hover{color:#50c6e4}
@media(max-width:1020px){.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:auto}}
@media(max-width:650px){.footer-top{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-brand{grid-column:1/-1}.gt-footer-app-column{grid-column:1/-1}}

/* v8: formal legal document and accessible branded download badges */
.gt-legal-layout{max-width:1010px;padding-top:44px;padding-bottom:95px}
.gt-legal-card.entry-content{background:#fff;color:#253548;border:1px solid #dbe5ef;border-radius:18px;box-shadow:0 12px 45px rgba(23,55,90,.07);padding:clamp(24px,5vw,70px);font-size:15.5px;line-height:1.9}
.gt-legal-document-top{border-bottom:2px solid #e0eaf3;padding-bottom:18px;margin-bottom:32px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.gt-legal-doc-type{display:inline-block;letter-spacing:.13em;text-transform:uppercase;font-size:11px;font-weight:800;color:#0862bd;background:#eaf5ff;border-radius:6px;padding:7px 10px}
.gt-legal-issuer{margin:0!important;color:#23384b!important;font-size:12px!important;font-weight:750;letter-spacing:.045em}
.gt-legal-card.entry-content p{margin:0 0 1.2em;line-height:1.9;color:#35475a}
.gt-legal-card.entry-content h2{font-size:clamp(19px,2vw,24px);line-height:1.32;color:#122d4a;margin:2.15em 0 .75em;padding-bottom:12px;border-bottom:1px solid #dfe7ee;font-weight:800}
.gt-legal-card.entry-content h3{font-size:18px;color:#163857;margin:1.8em 0 .6em}
.gt-legal-card.entry-content ol{list-style:decimal;padding-left:1.75em;margin:10px 0 26px;counter-reset:none}
.gt-legal-card.entry-content ul{list-style:disc;padding-left:1.6em;margin:12px 0 24px}
.gt-legal-card.entry-content li{line-height:1.85;margin-bottom:13px;padding-left:4px;color:#34485e}
.gt-legal-card.entry-content li::marker{color:#126fc7;font-weight:bold}
.gt-legal-card.entry-content li>ul{margin-top:12px}
.gt-legal-card.entry-content strong{color:#152f4b}
.gt-legal-card.entry-content a{overflow-wrap:anywhere}
.gt-footer-app-column .gt-store-icon-link,.gt-book-apps .gt-store-icon-link{display:inline-flex!important;vertical-align:middle;margin:8px 8px 0 0;padding:0!important;background:transparent!important;border:0!important;max-width:142px}
.gt-store-icon-link img{width:142px;height:43px;object-fit:contain;display:block;transition:transform .2s}
.gt-store-icon-link:hover img{transform:translateY(-2px)}
.gt-store-icon-link:focus-visible{outline:3px solid #5ac3fa!important;outline-offset:3px}
.gt-footer-policies{gap:14px 24px}
.gt-footer-policies a{text-decoration:none;border-bottom:1px solid #92abbf;padding-bottom:3px}
.gt-footer-policies a:hover{color:#fff;border-color:#fff}
@media(max-width:650px){.gt-legal-card.entry-content{padding:26px 21px}.gt-legal-document-top{align-items:flex-start;flex-direction:column}.gt-legal-card.entry-content ol{padding-left:1.4em}}
