:root{--main-text:#036;--main-shadow:rgba(0,0,0,.35);--menu-outline:#aaf;--main-input-border:#999;--main-invalid:#f00;--main-back:#000;--gallery-back:rgba(0,0,0,.8);--main-half-back:rgba(0,0,0,.5);--ratings-yellow:#fb2;--white:#fff;--main-button:#f30;--main-link:#36f;--light-grey:#888;--para-width:65rem}html{scroll-behavior:smooth;height:100%}html,body{width:100%;min-height:100%}body{font:normal normal normal 100%/1.6 'Montserrat',sans-serif;color:var(--main-text);perspective-origin:left;position:static;display:grid;grid-template-columns:100%;grid-template-rows:auto 1fr auto}*{margin:0;padding:0}*,*::before,*::after{box-sizing:border-box}header{display:flex;flex-wrap:wrap;position:sticky;top:0;width:100%;z-index:5}header>*{flex:2 2 auto;display:flex;align-items:center;flex-wrap:wrap;justify-content:center}header>#title{justify-content:center;flex:1 1 auto}header p{margin:0 .3rem 0 0}.centre table{margin:1rem auto}table{border-collapse:collapse;background-color:#000;color:#fff;border-radius:4px}th,td{border:none;padding:0 .4rem;text-align:left}th{color:#fc9;font-weight:bold}table a{color:#fc9}button,a.button,label#menuhiderlabel{cursor:pointer;background:var(--main-button);border:none;text-decoration:none;display:inline-block;color:var(--white);padding:0 .6em;line-height:2em;font-size:1.1em;transition:transform 250ms ease-in-out,box-shadow 250ms ease-in-out;width:auto;box-shadow:0 5px 10px 0 var(--main-shadow);font-family:inherit}button:hover,a.button:hover{transform:scale(1.15);box-shadow:0 8px 16px 0 var(--main-shadow);color:var(--white);opacity:1}h1,h2,h3,h4,p,ul,ol,address,.TableHolder{margin:1rem auto;max-width:var(--para-width);padding:0 .2rem}ul ul,ol ol{margin-top:0;margin-bottom:0}section ul{line-height:1.2}li{margin:8px 0 8px 1.8em}li:focus{outline:1px dotted var(--menu-outline)}h1,h2,h3,h4{font:normal normal normal 2rem/1.2 'Fjalla One',sans-serif}h2{font-size:1.8rem}h3{font-size:1.6rem}h4{font-size:1.4rem}a{color:var(--main-link);transition:opacity 300ms ease-in-out}a:hover{opacity:.5}input,textarea{color:inherit;width:500px;max-width:100%;border:none;border-bottom:1px solid var(--main-input-border);transition:outline-color 600ms ease-in-out;font:inherit}select{font:inherit}input:focus:invalid,textarea:focus:invalid{outline-color:var(--main-invalid)}label{display:inline-block;width:160px}img{max-width:100%;height:auto!important}svg.icon{width:1em;height:1em;fill:currentColor}svg{max-width:100%}::placeholder{opacity:1;color:#000}header{background-color:rgba(0,0,0,.5);text-align:right;transition:background-color 1s ease-in-out}header>*{color:#fff;font-size:1.2rem;line-height:1.2}header #title>a{transition:width 200ms ease-in-out,opacity 300ms ease-in-out;overflow:hidden;width:393px;max-width:calc(100vw - .4rem);display:inline-block;margin-left:.2rem;margin-right:.2rem}header img{object-fit:contain}header.Shrunk #title>a{width:200px}header.Shrunk,header:hover{background-color:rgba(0,0,0,.9)}nav{text-transform:uppercase;font:normal normal normal .8rem/1.6 'Fjalla One',sans-serif;flex-basis:100%}nav>ul{margin:0 .3rem 0 0;display:flex;justify-content:center;max-width:100%}nav a{color:#fff;text-decoration:none}nav li.on a{color:#f60}nav li{list-style:none;margin:0 1rem 0 0}nav li:last-child{margin:0}footer{font-size:.75em;line-height:1.4;color:var(--white);background:var(--main-back);padding:.5em 0;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}footer input{color:#000}footer input{width:300px}footer a{color:var(--white);text-decoration:none}footer>div{width:calc(80% - 2rem);min-width:200px}footer>div.fullwidth{width:100%}footer li{list-style:none;margin:0;line-height:1.6}footer svg.icon{width:1.6rem;height:1.6rem}li.SocialListItem{line-height:1.8;font-size:2rem}#gallery-holder{width:100%;height:100%;background:var(--gallery-back);position:fixed;top:0;left:0;transform:scale(0,0);transition:transform 300ms ease-in-out;text-align:center;cursor:zoom-out}#gallery-holder.show{transform:scale(1,1);animation:blurIn 400ms forwards}@keyframes blurIn{0%{filter:blur(20px)}100%{filter:blur(0)}}#gallery-holder img{max-width:100%;max-height:100%}#gallery-holder picture,#gallery-holder img,#gallery-holder source{pointer-events:none;user-select:none}#gallery-left{left:0}#gallery-right{right:0;text-align:right}#gallery-left,#gallery-right{position:absolute;top:0;width:1em;font-size:3em;display:grid;align-items:center;height:100vh;text-align:left;cursor:pointer}#gallery-caption{position:fixed;bottom:0;color:var(--white);background-color:var(--main-half-back);font-size:1.5rem;line-height:2em;text-align:center;width:100%}#gallery-holder svg.icon{fill:var(--white)}#gallery-carousel{width:100%;height:100%;position:fixed;top:200vh;left:200vw;overflow-y:hidden;overflow-x:auto;scroll-snap-type:x mandatory;white-space:nowrap;transform:scale(0,0);transition:transform 500ms ease-in-out,top 500ms ease-in-out,left 500ms ease-in-out}#gallery-carousel.show{transform:scale(1,1);top:0;left:0}#gallery-carousel>figure{position:relative;width:100%;height:100%;overflow:hidden;scroll-snap-align:center;display:inline-flex;justify-content:center;align-items:center;text-align:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background-color:rgba(0,0,0,.3);vertical-align:middle}#gallery-carousel figcaption{position:absolute;bottom:0;left:0;width:100%;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);text-align:center;color:var(--white);background-color:rgba(0,0,0,.3);white-space:normal;font-size:1.25rem;line-height:1.6em}#gallery-carousel figcaption span{font-weight:700;display:block}#gallery-carousel figure img{width:auto;max-width:92vw;max-height:92vh}#gallery-carousel .Close{position:absolute;top:2px;right:2px;width:2rem;cursor:pointer;background-color:var(--main-half-back)}#gallery-carousel .Before,#gallery-carousel .After{cursor:pointer;position:absolute;top:50%;left:0;background-color:var(--main-half-back);width:2.4rem;border-radius:2.4em;padding:.4em}#gallery-carousel .After{left:auto;right:0}.hon{display:none;visibility:hidden}.centre{text-align:center}.ratings{position:relative;width:4.166666667em;font-size:2rem;line-height:1em;height:1em;padding:0;color:var(--ratings-yellow)}.ratings .top{position:absolute;overflow:hidden;top:0;left:0;z-index:2}.ratings .bottom{position:absolute;top:0;left:0;z-index:1}.Hero{width:100%;height:100%;padding:0;position:fixed;top:0;left:0;z-index:-1;overflow:hidden}.Hero img{min-width:100%;min-height:100%;object-fit:cover}body>section::after{content:"";display:block;width:100%;height:100%;position:fixed;z-index:-2;background-image:url(i/gradient.svg);background-color:#000;top:0;left:0;background-size:cover}a.tel{color:inherit;text-decoration:none}.Orange{color:#f60}.WhiteBack{background-color:#fff;color:#444;padding:1px 0}.WhiteBack h1,.WhiteBack h2,.WhiteBack h3,.WhiteBack h4{color:#000}.HeadLine{color:#fff;height:60vh;display:flex;flex-wrap:wrap;align-items:center;text-align:center;text-shadow:2px 2px 4px #000;background:rgba(0,0,0,.2);font-size:1.7em}.HeadLine>*{width:100%}.HeadLine .button{text-shadow:none;font-size:1rem;}.HeadLine h1,.HeadLine p{margin:.2rem auto;line-height:1.2}.cards{max-width:var(--para-width);margin:1rem auto;display:flex;flex-wrap:wrap;justify-content:center;color:#fff;text-shadow:1px 1px 4px #000}.cards>*{background-image:url(i/design.jpg);background-size:cover;background-position:center top;margin:.3rem;min-width:calc(100% - .6rem);position:relative}.cards>*>*{z-index:2;position:relative}.cards>*::after{content:"";position:absolute;top:0;left:0;height:100%;width:100%;background-color:rgba(0,0,0,.35);z-index:1}.cards h2{color:#f60;background-color:#000;margin:0;line-height:2;text-align:center}.cards li{list-style-image:url(i/tick.svg)}.cards a{color:inherit;text-decoration:none}.cards a:hover{opacity:1}.MinHeight{min-height:100%}.portfolio{display:flex;flex-wrap:wrap;gap:1.5rem .5rem;justify-content:space-around;margin:1rem 0}.portfolio>div{box-shadow:1px 1px 10px rgba(0,0,0,.3);padding:.5rem 0}.portfolio p{margin:0;text-align:center}.portfolio .button{font-size:.8rem}.StandOut{overflow:hidden}.StandOut img{position:relative;left:100%;max-width:none}.StandOut img.right{left:-1248px;transition:left 30s linear}@media screen and (min-width:300px){nav{font-size:1rem}}@media screen and (min-width:800px){nav>ul,header>*{justify-content:flex-end}header>#title{justify-content:flex-start}}@media screen and (min-width:600px){.cards>*{min-width:calc(33% - .6rem)}footer>div{width:calc(25% - 2rem)}}