
:root{--ink:#07184b;--accent:#4b6b91;--paper:#f0f9fb;--line:#caebf2;--muted:#48678b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--paper);font-size:15px;line-height:1.6}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:500;line-height:1.12;letter-spacing:-.045em}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #68a6cc;outline-offset:4px}button svg,a svg{flex-shrink:0}img{display:block;max-width:100%}svg{display:inline-block;vertical-align:middle}a,button{touch-action:manipulation}.skip{position:absolute;top:-100px;z-index:100;background:#fff;padding:12px}.skip:focus{top:0}.topbar{background:var(--ink);color:#ceedf3;height:33px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.02em}.topbar span,.topbar a{display:flex;align-items:center;gap:6px}.siteheader{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:35px;justify-content:space-between;padding:22px 5%;background:#f0f9fbf5;backdrop-filter:blur(15px);border-bottom:1px solid #d2eef4}.brand{display:flex;align-items:center;gap:12px;font-size:22px;letter-spacing:-.045em;line-height:1.1;white-space:nowrap}.brand small{display:block;font-size:8px;letter-spacing:.19em;margin-top:7px}.brandicon{display:grid;place-items:center;height:44px;width:44px;background:var(--ink);color:var(--accent);border-radius:50%;transform:rotate(-8deg)}.nav{display:flex;align-items:center;gap:25px;font-size:12px}.nav a:hover{color:#4b6b91}.headcontact{border:1px solid #4b6b91;padding:10px 17px;border-radius:5px;font-size:12px;display:flex;gap:18px;align-items:center}.menubtn{display:none;background:none;border:0;color:var(--ink)}.hero{min-height:670px;height:calc(100svh - 125px);max-height:900px;position:relative;overflow:hidden;background:#061339;color:#fff}.heroimage{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 52%}.heroshade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,28,23,.89),rgba(6,28,23,.61) 44%,rgba(6,28,23,.05) 85%),linear-gradient(0deg,rgba(6,28,23,.64),transparent 30%)}.herocontent{position:relative;padding:110px 7% 110px;max-width:1050px}.eyebrow{font-size:10px;font-weight:600;letter-spacing:.17em;margin-bottom:23px;display:flex;align-items:center;gap:9px}.eyebrow.light{color:#caebf2}.eyebrow span{width:6px;height:6px;background:var(--accent);border-radius:50%}h1{font-size:clamp(48px,5.3vw,82px);font-weight:400;letter-spacing:-.055em;line-height:1.04;text-wrap:balance}.herotext{font-size:16px;line-height:1.7;color:#c5eaf2;max-width:445px;margin-top:28px}.heroactions{display:flex;align-items:center;gap:30px;margin-top:35px}.button{display:inline-flex;justify-content:center;align-items:center;gap:30px;padding:15px 23px;border-radius:5px;border:1px solid transparent;font-size:12px;font-weight:500;line-height:1.4;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button.lime{background:var(--accent);color:#071642}.button.dark{background:var(--ink);color:#fff}.button.outline{border-color:#4b6b91}.herosecond{font-size:12px;display:flex;align-items:center;gap:14px;color:#e3f5f9}.herobottom{position:absolute;bottom:30px;left:7%;right:7%;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff38;padding-top:21px;color:#cbecf3;font-size:11px}.herobottom span,.herobottom a{display:flex;gap:10px;align-items:center}.imagecredit{position:absolute;right:14px;bottom:6px;font-size:8px;color:#ffffff9c;letter-spacing:.03em}.notice{padding:22px 7%;background:#dff3f8;display:flex;gap:25px;align-items:center}.notice strong{white-space:nowrap}.introband{display:flex;padding:43px 7%;gap:7%;align-items:center;border-bottom:1px solid var(--line)}.introband>span:first-child{font-size:11px;letter-spacing:.09em;line-height:1.7;min-width:205px}.introband b{font-weight:500;color:#4b6b91}.introband p{max-width:570px;font-size:18px;line-height:1.5;letter-spacing:-.02em}.roundfish{margin-left:auto;border:1px solid #aadfeb;border-radius:50%;width:64px;height:64px;display:grid;place-items:center;flex-shrink:0}.section{padding:90px 7%}.sectionhead{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:43px}.sectionhead p:not(.eyebrow){font-size:13px;line-height:1.8;color:var(--muted)}h2{font-size:clamp(34px,3.4vw,52px);font-weight:400;line-height:1.13}.categorygrid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid var(--line);border-top:1px solid var(--line)}.category{background:transparent;color:var(--ink);border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;padding:30px;transition:background .2s;display:flex;flex-direction:column;align-items:flex-start}.category:hover,.category.selected{background:#ddf2f7}.categorytop{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:26px}.categorytop span{font-size:10px;color:#4b6b91}.category h3{font-size:25px;margin-bottom:13px}.category p{font-size:12px;line-height:1.7;color:var(--muted);max-width:300px;margin-bottom:25px}.categorylink{display:flex;font-size:11px;align-items:center;gap:15px;margin-top:auto}.categorydetail{margin-top:15px;padding:28px;background:#d6f0f5;display:flex;gap:25px;justify-content:space-between;align-items:center}.categorydetail h3{font-size:25px;margin-bottom:12px}.categorydetail p:not(.eyebrow){font-size:13px;margin-top:5px}.categorydetail .eyebrow{margin-bottom:14px}.categorydetail .button{flex-shrink:0}.studioband{display:grid;grid-template-columns:1fr 1fr;background:#dbf1f6}.studiovisual{position:relative;min-height:560px;overflow:hidden}.studiovisual>img{width:100%;height:100%;position:absolute;object-fit:cover}.visualcaption{position:absolute;bottom:25px;left:30px;right:30px;border:1px solid #ffffff55;padding:20px;color:#fff;display:flex;align-items:center;gap:15px;backdrop-filter:blur(14px);background:#05113555;font-size:13px}.studiotext{padding:76px 13% 65px 12%}.studiotext .copy{white-space:pre-line;color:#3f5a7a;font-size:14px;margin-top:26px;line-height:1.8}.person{display:flex;align-items:center;gap:13px;margin:30px 0}.person strong{font-size:13px;font-weight:500}.person small{display:block;color:#4b6b91;font-size:10px}.avatar{border:1px solid #4b6b91;width:43px;height:43px;border-radius:50%;display:grid;place-items:center}.textlink{display:inline-flex;gap:20px;align-items:center;border-bottom:1px solid #4b6b91;padding-bottom:7px;font-size:12px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.gallery button{background:none;border:0;padding:0;text-align:left;color:var(--ink)}.gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:5px}.gallery span{display:block;font-size:12px;margin-top:10px}.visitgrid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.addresscard{background:var(--ink);color:white;padding:42px;position:relative;overflow:hidden}.addresscard:after{content:'';position:absolute;width:190px;height:190px;border:1px solid #ffffff16;right:-65px;top:30px;border-radius:50%;box-shadow:0 0 0 30px #ffffff06,0 0 0 60px #ffffff04;pointer-events:none}.smalllabel{font-size:10px;letter-spacing:.12em;opacity:.65}.addresscard h3{font-size:28px;max-width:300px;margin:25px 0 16px}.addresscard p{font-size:14px;line-height:1.8;color:#c5eaf2}.addresscard .button{margin-top:30px;color:#fff}.addresscard small{display:block;font-size:9px;opacity:.65;margin-top:9px}.hourcard{border:1px solid var(--line);padding:35px 40px}.hourcard>svg{color:#4b6b91}.hourcard h3{font-size:25px;margin-top:20px}.hourcard dl{font-size:12px;margin-top:23px}.hourcard dl>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;border-bottom:1px solid var(--line)}dd{margin:0}dt{color:#4b6b91}.hourcard>p{font-size:11px;color:#4b6b91;margin-top:21px}.hourcard>p a{color:var(--ink);font-size:14px}.contactsection{padding:80px 7%;background:#ddf2f7;display:grid;grid-template-columns:1fr 1.2fr;gap:9%}.contactintro>p:not(.eyebrow){max-width:330px;margin-top:25px;color:#47668a;font-size:14px}.contactintro>a{display:flex;align-items:center;gap:16px;font-size:15px;margin-top:27px}.contactintro>a small{display:block;color:#4b6b91;font-size:10px;margin-bottom:4px}.formpanel{background:#fff;padding:34px;border-radius:6px}.formpanel h3{font-size:25px;margin-bottom:25px}label{display:block;font-size:11px;font-weight:500;margin-bottom:17px}input,textarea,select{display:block;width:100%;border:1px solid #c1e8f0;background:#f6fcfd;color:var(--ink);padding:12px 13px;border-radius:4px;font-size:13px;margin-top:7px}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#4b6b91}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:15px}.checklabel{display:flex;gap:10px;font-size:10px;line-height:1.6;color:#4b6b91;align-items:flex-start}.checklabel input{margin-top:2px;flex-shrink:0;width:15px;height:15px;accent-color:var(--ink)}.checklabel a{text-decoration:underline}.formhint{font-size:10px;color:#4b6b91;margin-top:15px;line-height:1.7}.error{background:#fff0ed;color:#9c3f31;padding:10px;font-size:12px;margin-bottom:14px;border-radius:5px}.success>span{width:60px;height:60px;display:grid;place-items:center;background:#dbf1f6;border-radius:50%;margin-bottom:20px}.success p{font-size:13px;margin-bottom:24px}.success .formhint{font-size:11px}.honeypot{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden;pointer-events:none}footer{padding:45px 7% 22px;background:#061339;color:#ceedf4}.footerupper{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:45px}.footerupper .brandicon{background:#ffffff12}.footerupper p{font-size:13px;opacity:.7;margin-left:auto;margin-right:100px}.totop{font-size:11px;display:flex;gap:15px;align-items:center}.footerlower{padding-top:20px;border-top:1px solid #ffffff20;display:flex;justify-content:space-between;font-size:10px;color:#4b6b91}.footerlower>div{display:flex;gap:25px}.lightbox{position:fixed;inset:0;background:#030a1ef0;z-index:80;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:70px 30px 30px;color:white}.lightbox>button{position:absolute;top:20px;right:25px;background:transparent;border:0;color:white;padding:12px}.lightbox img{max-height:80vh;max-width:90vw;object-fit:contain}.lightbox p{margin-top:10px;font-size:13px}.simplepage{max-width:850px;margin:0 auto;padding:50px 25px 90px}.simplepage h1{font-size:45px;margin:45px 0 25px}.simplepage .copy{white-space:pre-line;font-size:14px;line-height:1.9}.simplepage h2{font-size:25px;margin:25px 0 15px}.messagecard{background:#fff;border:1px solid var(--line);border-radius:8px;padding:28px;margin-top:25px}.bubble{padding:15px 18px;background:#e0f4f8;border-radius:7px;max-width:85%;margin:15px 0;font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.bubble.studio{background:var(--ink);color:#fff;margin-left:auto}.bubble small{display:block;font-size:10px;opacity:.65;margin-bottom:6px}.msgheading{display:flex;justify-content:space-between;align-items:center;gap:15px}.badge{font-size:10px;padding:5px 10px;background:#dcf2f7;border-radius:30px}.legalnote{padding:15px;background:#f1e9d8;font-size:12px;margin-bottom:20px}
@media(min-width:1600px){.herocontent{padding-top:150px}}@media(max-width:1100px){.siteheader{gap:20px;padding:18px 4%}.nav{gap:17px}.brand{font-size:20px}.headcontact{display:none}.hero{min-height:630px}.herocontent{padding-top:95px}.studiotext{padding:60px 10%}.footerupper p{margin-right:20px}.contactsection{gap:5%}.formpanel{padding:25px}}@media(max-width:760px){html{scroll-padding-top:85px}.topbar{padding:0 5%;font-size:10px}.topbar>span:nth-child(2){display:none}.siteheader{padding:17px 5%}.brand{font-size:19px}.brandicon{height:39px;width:39px}.brand small{font-size:7px}.menubtn{display:block;padding:8px}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:15px 5% 25px;border-bottom:1px solid var(--line)}.nav.open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav a{padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.hero{height:auto;min-height:690px}.heroimage{object-position:61% center}.heroshade{background:linear-gradient(90deg,#030b23c9,#030b2344),linear-gradient(0deg,#030b23bb,transparent)}.herocontent{padding:85px 7% 120px}.hero h1{font-size:clamp(41px,9vw,65px);line-height:1.08}.eyebrow{font-size:9px;letter-spacing:.12em}.hero .eyebrow{font-size:8px;letter-spacing:.11em}.herotext{font-size:14px;max-width:350px}.heroactions{align-items:flex-start;flex-direction:column;gap:22px;margin-top:30px}.herobottom{font-size:9px;bottom:27px}.herobottom>a{display:none}.imagecredit{font-size:7px}.introband{padding:30px 7%;gap:20px;flex-wrap:wrap}.introband>span:first-child{font-size:9px;min-width:0}.introband p{font-size:16px;flex:1;min-width:175px}.roundfish{display:none}.section{padding:58px 7%}.sectionhead{display:block;margin-bottom:30px}.sectionhead>p{margin-top:20px}h2{font-size:37px}.categorygrid{grid-template-columns:repeat(2,1fr)}.category{padding:22px 17px}.categorytop{margin-bottom:23px}.categorytop svg{width:27px}.category h3{font-size:22px}.category p{font-size:11px;margin-bottom:20px}.categorylink{font-size:10px;gap:7px}.categorydetail{flex-direction:column;align-items:flex-start;padding:23px}.studioband{grid-template-columns:1fr}.studiovisual{min-height:360px}.studiotext{padding:50px 7%}.studiotext h2{max-width:350px}.studiotext .copy{font-size:13px}.gallery{grid-template-columns:repeat(2,1fr);gap:15px}.visitgrid{grid-template-columns:1fr;gap:15px}.addresscard{padding:30px}.hourcard{padding:30px}.contactsection{grid-template-columns:1fr;padding:55px 7%;gap:35px}.contactintro>a{font-size:14px}.formpanel{padding:23px}.formrow{grid-template-columns:1fr;gap:0}.footerupper{align-items:flex-start;flex-wrap:wrap;padding-bottom:30px}.footerupper p{display:none}.footerupper .brand{font-size:17px}.footerupper .brand small{font-size:6px}.footerlower{flex-direction:column;gap:18px}.footerlower>div{gap:23px}.notice{align-items:flex-start;flex-direction:column;gap:6px;font-size:12px}.bubble{max-width:95%}.messagecard{padding:18px}.simplepage h1{font-size:35px}.msgheading{align-items:flex-start;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.servicessection{padding-top:20px}.serviceslist{border-top:1px solid var(--line);max-width:100%}.serviceslist details{border-bottom:1px solid var(--line)}.serviceslist summary{display:flex;gap:24px;align-items:center;padding:22px 5px;cursor:pointer;font-size:21px;letter-spacing:-.025em;list-style:none}.serviceslist summary::-webkit-details-marker{display:none}.serviceslist summary svg{margin-left:auto;transition:transform .2s}.serviceslist details[open] summary svg{transform:rotate(180deg)}.servicenumber{font-size:10px;letter-spacing:0;color:#4b6b91;width:30px;flex-shrink:0}.serviceslist details p{max-width:680px;padding:0 30px 23px 59px;color:var(--muted);font-size:14px;line-height:1.8}.studiofacts{display:grid;grid-template-columns:1fr 1.2fr;gap:10%;padding-bottom:60px}.studiofacts .copy{white-space:pre-line;color:var(--muted);font-size:14px;line-height:1.9}.brandsband{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 7%;padding:25px 0;display:flex;gap:50px;align-items:center}.brandsband span{font-size:8px;letter-spacing:.15em;max-width:130px;color:#4b6b91}.brandsband p{font-size:17px;letter-spacing:-.02em;word-spacing:8px;color:#415e7f}.serviceslist summary:focus-visible{outline:3px solid #68a6cc;outline-offset:3px}@media(max-width:760px){.studiofacts{grid-template-columns:1fr;gap:25px}.studiofacts .copy{font-size:13px}.brandsband{display:block;padding:25px 0}.brandsband span{font-size:8px}.brandsband p{font-size:15px;line-height:2.2;margin-top:12px}.serviceslist summary{font-size:18px;gap:12px;padding:20px 0}.serviceslist details p{padding-left:42px;font-size:13px}.servicenumber{width:22px}.servicessection{padding-top:10px}}
/* Aquatic palette matched to the approved logo. */
:root{--ink:#06296f;--accent:#b8effa;--paper:#f3fcff;--line:#c8e4ef;--muted:#48647c}
body{background:linear-gradient(120deg,#e3f9ff 0%,#f7fdff 45%,#ddf7ff 100%)}
.siteheader{background:linear-gradient(105deg,#c4f2fbf7,#e9fafff7 55%,#b9edf8f7);padding:10px 5%;border-color:#a8dce9}
.brandlogo{width:265px;height:106px;object-fit:contain;border-radius:6px}
.nav a:hover{color:#047d9c}.headcontact{border-color:#79bdd1;background:#f5fcff80}
.hero{background:linear-gradient(115deg,#71d8ee 0%,#c9f3fc 35%,#e6faff 56%,#a7e8f5 100%);color:var(--ink);min-height:650px;height:calc(100svh - 160px)}
.heroimage{left:47%;width:53%;object-position:center;opacity:1}
.heroshade{background:linear-gradient(90deg,#b3edf9 0%,#daf7fe 32%,#dbf7feef 44%,#d8f5fc55 58%,transparent 73%),linear-gradient(0deg,#0b2b4866,transparent 22%)}
.herocontent{max-width:850px;padding:105px 7% 120px;position:relative}
.hero h1{font-size:clamp(46px,4.8vw,73px);max-width:660px}
.eyebrow.light{color:#1c517c}.hero .eyebrow span{background:#f08050}
.herotext{color:#2e5577;max-width:400px}.herosecond{color:#123f71}
.button.lime{background:var(--accent);color:#06296f;border-color:#79cce3;box-shadow:0 4px 14px #164c7920}
.button.lime:hover{background:#9de4f4}.button.dark{background:#082d78}.button.dark:hover{background:#164b9a}
.herobottom{border-color:#23628c33;color:#123e70}.herobottom>a{color:white;text-shadow:0 1px 3px #102c42}
.hero .imagecredit{background:#082c55aa;padding:2px 5px;border-radius:3px;color:#e7faff}
.introband{background:#f0fbff}.introband b{color:#4987a4}.roundfish{color:#087c9b;border-color:#a7dbea}
.category{background:#ffffffa6}.category:hover,.category.selected{background:#dbf6ff}.categorytop>svg{color:#087e9d}
.categorydetail{background:#daf4fc}.studioband{background:linear-gradient(115deg,#b8eefa,#e8faff)}
.studiotext h2,.section h2,.contactintro h2{color:#06296f}.studiotext .copy,.studiofacts .copy{color:#42637e}
.brandsband p{color:#255b87}.brandsband span{color:#466b84}.hourcard{background:#ffffffb3}
.contactsection{background:linear-gradient(120deg,#8bdef0 0%,#d5f5fd 45%,#effbff 100%)}
.formpanel{border:1px solid #c9e8f1;box-shadow:0 12px 40px #123f7020}.contactintro>p:not(.eyebrow){color:#315776}
input,textarea,select{background:#f8fdff;border-color:#c3dfeb;color:#143f70}input::placeholder,textarea::placeholder{color:#57768d}
input:focus,textarea:focus,select:focus{border-color:#1798bd}.checklabel,.formhint{color:#46677c}.checklabel input{accent-color:#072c77}
footer{background:linear-gradient(115deg,#08275f,#06457a);color:#edfaff}.footerupper .brandlogo{width:240px;height:96px}.footerlower{color:#c5eaf7}
.badge,.bubble{background:#e1f6fd}.bubble.studio{background:#082c73}.serviceslist summary:hover{color:#087f9c}
@media(max-width:1100px){.siteheader{padding:9px 4%}.brandlogo{width:225px;height:90px}.nav{gap:17px}.hero{height:calc(100svh - 144px)}.herocontent{padding-top:100px}}
@media(max-width:760px){.siteheader{padding:7px 5%}.brandlogo{width:216px;height:86px}.nav{background:#e7faff}.hero{height:auto;min-height:730px}.heroimage{inset:0;width:100%;height:100%;object-position:65% center}.heroshade{background:linear-gradient(180deg,#c5f2fbf7 0%,#dff8fef7 40%,#dff8febb 58%,#092c5d70 100%)}.herocontent{padding:67px 7% 140px;max-width:none}.hero h1{font-size:clamp(43px,9.8vw,66px);max-width:550px}.herotext{max-width:350px;color:#244d70}.herobottom{color:white;border-color:#ffffff70;bottom:26px}.heroactions{gap:19px}.herosecond{color:#0b386c}.footerupper .brandlogo{width:215px;height:86px}.footerupper{padding-bottom:25px}}
.contactextra{border:1px solid #c3dfeb;border-radius:6px;padding:18px;margin:22px 0;min-width:0}.contactextra legend{font-size:12px;font-weight:600;padding:0 8px;display:flex;gap:8px;align-items:center;color:#153f70}.callbackcheck{font-size:12px;margin:5px 0}.callbackfields{padding-top:18px}.callbackfields .formhint{margin-top:0}.photoinput{margin:0;font-size:11px}.photoinput input{max-width:100%;font-size:11px;background:#edfaff;padding:10px}.uploadpreviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:15px}.uploadpreviews img{width:100%;height:90px;object-fit:cover;border-radius:4px}.uploadpreviews span{display:block;overflow-wrap:anywhere;font-size:9px;line-height:1.4;margin-top:6px}.uploadpreviews small{font-size:9px;color:#56758d}.removephotos{background:transparent;border:0;color:#315c7d;padding:10px 0 0;font-size:10px;display:flex;gap:5px;align-items:center}.messagephotos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:15px;white-space:normal}.messagephotos a{display:block;min-width:0;background:#ffffffb5;padding:5px;border-radius:5px;color:#143f70}.messagephotos img{height:130px;width:100%;object-fit:cover;border-radius:3px}.messagephotos span{display:block;font-size:9px;overflow-wrap:anywhere;line-height:1.4;padding:6px 2px}.callbacksummary{margin:18px 0;background:#e4f6fd;border:1px solid #b5dae8;border-radius:5px;padding:15px}.callbacksummary strong{display:block;font-size:13px}.callbacksummary a{display:block;font-size:15px;margin:6px 0}.callbacksummary p{font-size:12px;overflow-wrap:anywhere}.callbacksummary small{font-size:10px;color:#52758a}.inquirylist .callbackbadge{font-size:9px;background:#d3effb;color:#0c477d}@media(max-width:760px){.contactextra{padding:13px}.messagephotos img{height:100px}.uploadpreviews{gap:6px}.uploadpreviews img{height:70px}}

.directcontactcard{align-self:center;background:#f5fcfe;border:1px solid #c8e7f0;padding:clamp(28px,4vw,54px);border-radius:8px}.directcontactcard>.eyebrow{margin:22px 0 14px}.directcontactcard h3{font-size:clamp(28px,3vw,42px);margin-bottom:22px}.directcontactcard>p{margin-bottom:24px;color:#365475}.directcontactcard>svg{color:#0b3478}

article.category{cursor:default}article.category:hover{transform:none;box-shadow:none;background:#fff}

.siteheader.compactheader{position:relative;display:flex;align-items:center;gap:24px;height:calc(100vw / 7);min-height:100px;padding:0 3%;background:linear-gradient(105deg,#27bfdc,#bdeff8 48%,#64d1e8);backdrop-filter:none;border-bottom:1px solid #83cddd}.compactheader .compactbrand{flex:1;min-width:0;height:100%;display:flex;align-items:center;position:relative;overflow:hidden}.compactheader .brandlogo{position:absolute;left:0;top:50%;transform:translateY(-50%);width:100%;height:auto;max-height:none;object-fit:contain;object-position:center;border-radius:0}.compactheader .banner-nav{position:static;display:flex;flex:0 0 auto;justify-content:flex-end;align-items:center;gap:24px;padding:0;background:transparent;border:0;font-size:13px;white-space:nowrap}.compactheader .banner-nav a{padding:12px 0;border:0;color:#07184b}.compactheader .banner-nav a:hover{text-decoration:underline;text-underline-offset:6px}@media(max-width:1100px){.compactheader .banner-nav{gap:15px;font-size:12px}.siteheader.compactheader{gap:12px}}@media(max-width:760px){.siteheader.compactheader{display:flex;flex-direction:column;gap:0;height:auto;min-height:0;padding:0 4% 10px}.compactheader .compactbrand{flex:none;width:100%;height:calc(100vw / 5);min-height:64px}.compactheader .banner-nav{flex:none;width:100%;flex-direction:row;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px 18px;font-size:11px}.compactheader .banner-nav a{padding:5px 0;font-size:inherit}.compactheader .brandlogo{object-position:left center}}

.categorytop .categoryimage{width:144px;height:144px;object-fit:contain;object-position:left center;flex-shrink:0}.categorytop{align-items:flex-start}.categorytop>span{padding-top:8px}@media(max-width:760px){.categorytop .categoryimage{width:100px;height:100px}}@media(max-width:360px){.categorytop .categoryimage{width:80px;height:80px}}

/* Reading copy: 12 pt (16 CSS px), including narrow screens. */
body{font-size:16px}.herotext,.sectionhead p:not(.eyebrow),.category p,.studiotext .copy,.studiofacts .copy,.simplepage .copy,.contactintro>p:not(.eyebrow),.directcontactcard>p,.notice,.hourcard p,.addresscard>p,.footerupper>p{font-size:16px;line-height:1.7}.contactintro>a{font-size:16px}.category p{max-width:none}.brandsband p{font-size:17px}@media(max-width:760px){.herotext,.sectionhead p:not(.eyebrow),.category p,.studiotext .copy,.studiofacts .copy,.simplepage .copy,.contactintro>p:not(.eyebrow),.directcontactcard>p,.notice,.hourcard p,.addresscard>p,.footerupper>p,.contactintro>a,.brandsband p{font-size:16px}}

.paymentsection{margin-top:36px;padding-top:30px;border-top:1px solid var(--line)}.paymentsection h3{font-size:23px;margin-bottom:20px;letter-spacing:-.025em}.paymentoptions{display:flex;flex-wrap:wrap;gap:14px;list-style:none;margin:0;padding:0}.paymentoptions li{display:flex;align-items:center;gap:12px;padding:16px 22px;background:#ffffffa6;border:1px solid #c8e7f0;border-radius:6px;font-size:16px;color:#082b73}.paymentoptions svg{flex-shrink:0}@media(max-width:760px){.paymentoptions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.paymentoptions li{padding:14px 12px;gap:9px;font-size:14px}.paymentoptions svg{width:25px}}

.studio-contactlinks{display:flex;flex-direction:column;gap:18px;margin-top:26px;position:relative;z-index:1}.studio-contactlinks>a{display:flex;align-items:center;gap:12px;font-size:16px;line-height:1.5;overflow-wrap:anywhere}.studio-contactlinks svg{flex-shrink:0}.addresscard .studio-contactlinks small{margin:0 0 3px;font-size:12px;color:#d6edf8;opacity:1}.studio-contactlinks a:hover{text-decoration:underline;text-underline-offset:4px}.visit .hourcard dl{font-size:16px}.visit .hourcard dd{margin-left:0}.visit .hourcard dl>div{align-items:baseline}.visit .hourcard{align-self:stretch}.visit .addresscard .button{margin-top:28px}#kontakt{scroll-margin-top:24px}@media(max-width:760px){.studio-contactlinks>a{font-size:16px}.visit .hourcard dl>div{gap:12px;flex-wrap:wrap}.visit .hourcard dd{white-space:nowrap}}

.adminlogin form{display:grid;gap:18px;max-width:600px}.adminlogin label{display:grid;gap:6px}.adminlogin input{padding:12px;border:1px solid #a7bdc6;border-radius:5px;font:inherit}.adminlogin .button{border:0;cursor:pointer}.photo-dialog{border:0;padding:20px;max-width:90vw;max-height:90vh}.photo-dialog img{max-width:100%;max-height:75vh}.photo-dialog::backdrop{background:#001c33bb}