/* LondonCabs.co.uk production static site — original visual identity, modern implementation */
:root{--yellow:#e9ef00;--yellow2:#f8ff3d;--ink:#111;--char:#1f1f1f;--muted:#666;--line:#cfcfcf;--paper:#fff;--max:960px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#ececec;color:#111;font:13px/1.45 Arial,Helvetica,sans-serif}a{color:#111;text-decoration:underline;text-underline-offset:2px}a:hover{color:#5a5f00}img{max-width:100%;height:auto}.wrap{width:min(var(--max),calc(100% - 28px));margin:auto}
.site-head{background:linear-gradient(#efefef 0,#bababa 55%,#d5d5d5 100%);border-top:1px solid #bbb;box-shadow:inset 0 -1px #999}.mast{height:118px;position:relative}.mast:before{content:'';position:absolute;inset:0;background:url('/assets/images/top-row-bg.gif') center top/960px 117px no-repeat;opacity:.72}.brand{position:absolute;left:10px;top:0;width:171px;height:112px;z-index:2}.brand img{width:171px;height:112px;display:block}.phone{position:absolute;right:28px;top:46px;text-align:center;font-weight:700;z-index:2;line-height:1.05}.phone span{display:block;font-size:13px;text-transform:uppercase}.phone a{font-size:19px;text-decoration:none;color:#111}
.nav-shell{position:relative;margin-top:-3px;z-index:4}.nav-bg{background:linear-gradient(#494949,#101010);border-radius:22px;box-shadow:0 4px 7px #777;min-height:42px;padding:5px 9px}.nav-toggle{display:none;width:100%;background:none;border:0;color:#fff;font-weight:700;text-align:left;padding:7px 10px}.nav{display:flex;list-style:none;margin:0;padding:0}.nav>li{position:relative;border-right:1px solid #55483f}.nav>li:last-child{border-right:0}.nav a{display:block;padding:6px 14px;border-radius:15px;color:#fff;text-decoration:none;text-transform:uppercase;white-space:nowrap}.nav a:hover,.nav .active>a{background:var(--yellow);color:#000}.has-sub>a:after{content:' ▾';font-size:9px}.submenu{display:none;position:absolute;top:100%;left:0;width:240px;background:#f6f6f6;border:1px solid #aaa;border-radius:0 0 8px 8px;box-shadow:0 8px 16px #0004;padding:8px;margin:0;list-style:none}.submenu li{border-bottom:1px solid #ddd}.submenu li:last-child{border-bottom:0}.submenu a{color:#111;text-transform:none;border-radius:0;padding:8px}.submenu a:hover{background:var(--yellow)}.has-sub:hover>.submenu,.has-sub:focus-within>.submenu{display:block}
.hero{height:209px;position:relative;background:linear-gradient(#d5d5d5,#e9e9e9)}.hero .hero-img{position:absolute;left:0;right:0;bottom:0;height:169px;background:url('/assets/images/image-area.jpg') center bottom/983px 169px no-repeat}.hero-actions{position:absolute;right:24px;top:70px;display:flex;gap:14px;align-items:center;z-index:2}.call-pill,.book-pill{height:59px;border:4px solid #505050;border-radius:25px;text-decoration:none;color:#111;display:flex;align-items:center;justify-content:center;box-shadow:inset 0 0 0 2px #bbb,0 2px 4px #888}.call-pill{width:220px;background:linear-gradient(#f2f2f2,#bdbdbd);font-size:12px;text-transform:uppercase;line-height:1.05}.call-pill strong{font-size:16px}.book-pill{width:205px;background:var(--yellow);font-weight:700;text-transform:uppercase;font-size:14px}.book-pill:hover{background:var(--yellow2);color:#000}
.main-bg{background:linear-gradient(90deg,#ececec 0,#fafafa 13%,#fff 50%,#fafafa 87%,#ececec 100%);border-top:1px solid #ddd;padding:19px 0 55px;min-height:540px}.breadcrumbs{font-size:11px;color:#666;margin:0 0 15px}.breadcrumbs a{color:#444}.layout{display:grid;grid-template-columns:minmax(0,650px) 210px;gap:28px}.content{min-width:0}.content h1,.content h2,.content h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}.content h1{font-size:25px;margin:0 0 14px}.content h2{font-size:21px;margin:20px 0 10px}.content h3{font-size:16px;margin:17px 0 8px}.content p{margin:0 0 13px}.lead{font-size:14px}.ribbon{position:relative;background:linear-gradient(#3e3e3e,#060606);color:#ffffb5;font:700 16px Georgia,'Times New Roman',serif;padding:9px 14px;margin-bottom:14px;box-shadow:0 3px 5px #0003}.ribbon:after{content:'';position:absolute;right:-16px;top:0;border-top:18px solid #222;border-bottom:18px solid transparent;border-left:16px solid #222}
.sidebar{border-left:1px dotted #bbb;padding-left:10px}.sidebox{margin:0 0 17px;border:1px solid #777;border-radius:0 0 13px 13px;background:#222;color:#fff;box-shadow:0 2px 4px #999}.sidebox h2{position:relative;margin:-1px -10px 0;background:linear-gradient(#444,#090909);color:#ffffb4;font:700 16px Georgia,'Times New Roman',serif;padding:9px 16px}.sidebox h2:before,.sidebox h2:after{content:'';position:absolute;top:0;border-top:18px solid transparent;border-bottom:18px solid transparent}.sidebox h2:before{left:-10px;border-right:10px solid #222}.sidebox h2:after{right:-10px;border-left:10px solid #222}.sidebody{padding:13px 14px}.sidebox ul{margin:0;padding:0;list-style:none}.sidebox li{position:relative;padding-left:10px;margin:4px 0}.sidebox li:before{content:'•';position:absolute;left:0;color:var(--yellow)}.sidebox a{color:#fff}.sidebox.light{background:#fff;color:#111}.sidebox.light a{color:#111}.side-call{text-align:center}.side-call a{display:block}
.btn{display:inline-block;border:2px solid #4b4b4b;border-radius:20px;background:var(--yellow);padding:8px 18px;color:#111;text-decoration:none;font-weight:700;text-transform:uppercase;box-shadow:inset 0 0 0 1px #fbff81}.btn:hover{background:var(--yellow2);color:#000}.btn.dark{background:#2b2b2b;color:#fff}.btn.dark:hover{background:#111;color:#fff}.btn-row{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0 2px}
.notice{background:#fffbe2;border:1px solid #d9d27b;border-radius:8px;padding:12px 14px;margin:13px 0 17px}.small{font-size:11px;color:#555}.fare-table{width:100%;border-collapse:separate;border-spacing:0;margin:10px 0 9px;border:1px solid #d0d0d0;border-radius:10px;overflow:hidden;font-size:12px}.fare-table th,.fare-table td{padding:7px 10px;border-bottom:1px solid #ddd}.fare-table tr:last-child td{border-bottom:0}.fare-table th{background:#e2e2e2;color:#666;text-align:left}.fare-table tbody tr:nth-child(even){background:#f5f5f5}.fare-table td:last-child,.fare-table th:last-child{text-align:right;font-weight:700}.fare-table .area{font-weight:700}.fare-note{font-size:11px;color:#555;margin-top:4px}
.home-intro{display:grid;grid-template-columns:1fr 150px;gap:18px;align-items:start}.roundel{width:145px;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#555 0 45%,#888 46% 54%,#aaa 55%);display:grid;place-items:center;text-align:center;color:#ffffb0;box-shadow:0 2px 6px #777;font-weight:700}.roundel b{font-size:30px;display:block}.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:23px 0}.card{min-width:0}.card figure{margin:0 0 8px;text-align:center}.card figure img{max-height:125px}.link-list{list-style:none;padding:0;margin:8px 0}.link-list li{margin:3px 0}.link-list li:before{content:'›';font-weight:700;margin-right:5px}.history{margin-top:24px}.history-row{display:grid;grid-template-columns:1fr 245px;gap:22px;align-items:center}.history img{max-width:240px;justify-self:center}
.area-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0}.area-card{border:1px solid #ccc;border-radius:8px;background:#f7f7f7;padding:13px;text-decoration:none}.area-card:hover{background:#ffffdf}.area-card strong{display:block;font:18px Georgia,'Times New Roman',serif;margin-bottom:3px}.airport-hero{float:right;width:225px;margin:-25px 0 3px 16px}.split{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.booking-box{background:#f3f3f3;border:1px solid #c5c5c5;border-radius:13px;padding:16px;margin:15px 0;box-shadow:0 2px 3px #aaa}.booking-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field{display:flex;flex-direction:column;gap:4px}.field.full{grid-column:1/-1}.field label{font-weight:700}.field input,.field select,.field textarea{font:inherit;background:#fff;border:1px solid #aaa;border-radius:4px;padding:9px 10px}.field textarea{min-height:85px;resize:vertical}.form-message{display:none;margin-top:12px;padding:11px 13px;border-radius:7px}.form-message.show{display:block}.form-message.ok{background:#edf7df;border:1px solid #9fb675}.form-message.error{background:#fff0ef;border:1px solid #d29b95}.booking-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.request-preview{display:none;white-space:pre-wrap;background:#fff;border:1px solid #bbb;border-radius:7px;padding:12px;margin-top:12px}.request-preview.show{display:block}
.footer{background:linear-gradient(#171717,#000);color:#fff;padding:20px 0 25px;border-top:1px solid #111}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr auto;gap:20px}.footer h2{font:700 12px Arial;margin:0 0 7px}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin:3px 0}.footer a{color:#e9ef65;text-decoration:none;font-size:11px}.footer a:hover{text-decoration:underline}.footer-logo{width:103px;align-self:end}.copyright{margin-top:18px;color:#999;font-size:10px}
@media(max-width:820px){.wrap{width:min(var(--max),calc(100% - 20px))}.mast{height:98px}.mast:before{background-size:auto 98px}.brand{transform:scale(.82);transform-origin:left top;left:0}.phone{right:0;top:37px}.phone a{font-size:17px}.nav-bg{border-radius:9px}.nav-toggle{display:block}.nav{display:none;flex-direction:column}.nav.open{display:flex}.nav>li{border-right:0;border-top:1px solid #444}.nav a{border-radius:0}.submenu{position:static;width:auto;box-shadow:none;border-radius:0}.has-sub:hover>.submenu{display:none}.has-sub.open>.submenu{display:block}.hero{height:174px}.hero .hero-img{height:150px;background-size:auto 150px;background-position:35% bottom}.hero-actions{top:46px;right:0;flex-direction:column;gap:8px}.call-pill,.book-pill{height:50px;width:195px}.layout{grid-template-columns:1fr}.sidebar{border-left:0;padding-left:0;display:grid;grid-template-columns:1fr 1fr;gap:18px}.sidebox{margin:0}.footer-grid{grid-template-columns:1fr 1fr}.footer-logo{display:none}.area-cards{grid-template-columns:1fr 1fr}.airport-hero{width:185px}}
@media(max-width:560px){body{font-size:14px}.mast{height:88px}.brand{transform:scale(.70)}.phone{top:34px}.phone span{font-size:10px}.phone a{font-size:14px}.hero{height:215px}.hero .hero-img{height:135px;background-size:auto 135px;background-position:25% bottom}.hero-actions{top:8px;right:0;left:0;flex-direction:row;justify-content:center}.call-pill,.book-pill{width:calc(50% - 7px);height:52px;font-size:11px}.call-pill strong{font-size:13px}.layout{display:block}.sidebar{display:block;margin-top:26px}.sidebox{margin-bottom:17px}.home-intro,.history-row,.split{grid-template-columns:1fr}.roundel{display:none}.cards,.area-cards{grid-template-columns:1fr}.booking-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.fare-table{font-size:11px}.fare-table th,.fare-table td{padding:6px}.airport-hero{float:none;width:180px;display:block;margin:0 auto 10px}.footer-grid{grid-template-columns:1fr 1fr}.ribbon{font-size:15px}.ribbon:after{display:none}}
