/*
Theme Name: humble-locksmith.com
Theme URI: http://humble-locksmith.com
*/

body{background:#fff}
blockquote:before,blockquote:after,q:before,q:after{content:""}
blockquote,q{quotes:"" ""}
hr{background-color:#ccc;border:0;height:1px;margin-bottom:1.5em}
ul,ol{margin:0 0 1.5em 3em}
ul{list-style:disc}
ol{list-style:decimal}
li > ul,li > ol{margin-bottom:0;margin-left:1.5em}
dt{font-weight:bold}
dd{margin:0 1.5em 1.5em}
img{height:auto;max-width:100%}
figure{margin:1em 0}
table{margin:0 0 1.5em;width:100%}
button,input[type="button"],input[type="reset"],input[type="submit"]{border:1px solid;border-color:#ccc #ccc #bbb;border-radius:3px;background:#e6e6e6;color:rgba(0, 0, 0, .8);font-size:12px;font-size:0.75rem;line-height:1;padding:.6em 1em .4em}
button:hover,input[type="button"]:hover,input[type="reset"]:hover,input[type="submit"]:hover{border-color:#ccc #bbb #aaa}
button:focus,input[type="button"]:focus,input[type="reset"]:focus,input[type="submit"]:focus,button:active,input[type="button"]:active,input[type="reset"]:active,input[type="submit"]:active{border-color:#aaa #bbb #bbb}
input[type="text"],input[type="email"],input[type="url"],input[type="password"],input[type="search"],input[type="number"],input[type="tel"],input[type="range"],input[type="date"],input[type="month"],input[type="week"],input[type="time"],input[type="datetime"],input[type="datetime-local"],input[type="color"],textarea{color:#666;border:1px solid #ccc;border-radius:3px;padding:3px}
select{border:1px solid #ccc}
input[type="text"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="password"]:focus,input[type="search"]:focus,input[type="number"]:focus,input[type="tel"]:focus,input[type="range"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="week"]:focus,input[type="time"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="color"]:focus,textarea:focus{color:#111}
textarea{width:100%}
a{color:royalblue}
a:visited{color:purple}
a:hover,a:focus,a:active{color:midnightblue}
a:focus{outline:thin dotted}
a:hover,a:active{outline:0}
.main-navigation{clear:both;display:block;float:left;width:100%}
.main-navigation ul{display:none;list-style:none;margin:0;padding-left:0}
.main-navigation li{float:left;position:relative}
.main-navigation a{display:block;text-decoration:none}
.main-navigation ul ul{box-shadow:0 3px 3px rgba(0, 0, 0, 0.2);float:left;position:absolute;top:1.5em;left:-999em;z-index:99999}
.main-navigation ul ul ul{left:-999em;top:0}
.main-navigation ul ul a{width:200px}
.main-navigation ul li:hover > ul,.main-navigation ul li.focus > ul{left:auto}
.main-navigation ul ul li:hover > ul,.main-navigation ul ul li.focus > ul{left:100%}
.menu-toggle,.main-navigation.toggled ul{display:block}

/* --- *-._.-*-._.-*-._.-* Social Nav *-._.-*-._.-*-._.-* --- */
.social-nav,.social-nav a,.social-nav li{display:inline-block}
.social-nav{padding:0;list-style:none;margin:10px auto}
.social-nav a{float:left;width:48px;height:48px;font-size:20px;color:#FFF;text-decoration:none;cursor:pointer;text-align:center;line-height:48px;background:#000;position:relative;transition:.5s}
.model-0{position:fixed;transition:.5s;left:0;top:50px}
.model-0 li{float:none;display:block;text-align:center;}
.model-0 li img {margin:10% auto;max-height:80%}
.model-0 a:hover{padding-left:20px;width:65px}
.model-0 .facebook{background:#3b5998}
.model-0 .google-plus{background:#DD4A3A}
.model-0 .blogger{background:#f87f14}
.model-0 .youtube{background:#CC181E}

@media screen and (min-width: 37.5em){.menu-toggle{display:none}
.main-navigation ul{display:block}
}
.site-main .comment-navigation,.site-main .posts-navigation,.site-main .post-navigation{margin:0 0 1.5em;overflow:hidden}
.comment-navigation .nav-previous,.posts-navigation .nav-previous,.post-navigation .nav-previous{float:left;width:50%}
.comment-navigation .nav-next,.posts-navigation .nav-next,.post-navigation .nav-next{float:right;text-align:right;width:50%}
.screen-reader-text{clip:rect(1px, 1px, 1px, 1px);position:absolute !important;height:1px;width:1px;overflow:hidden;word-wrap:normal !important}
.screen-reader-text:focus{background-color:#f1f1f1;border-radius:3px;box-shadow:0 0 2px 2px rgba(0, 0, 0, 0.6);clip:auto !important;color:#21759b;display:block;font-size:14px;font-size:0.875rem;font-weight:bold;height:auto;left:5px;line-height:normal;padding:15px 23px 14px;text-decoration:none;top:5px;width:auto;z-index:100000}
#content[tabindex="-1"]:focus{outline:0}
.alignleft{display:inline;float:left;margin-right:1.5em}
.alignright{display:inline;float:right;margin-left:1.5em}
.aligncenter{clear:both;display:block;margin-left:auto;margin-right:auto}
.clear:before,.clear:after,.entry-content:before,.entry-content:after,.comment-content:before,.comment-content:after,.site-header:before,.site-header:after,.site-content:before,.site-content:after,.site-footer:before,.site-footer:after{content:"";display:table;table-layout:fixed}
.clear:after,.entry-content:after,.comment-content:after,.site-header:after,.site-content:after,.site-footer:after{clear:both}
.widget{margin:0 0 1.5em}
.widget select{max-width:100%}
.sticky{display:block}
.hentry{margin:0 0 1.5em}
.byline,.updated:not(.published){display:none}
.single .byline,.group-blog .byline{display:inline}
.page-content,.entry-content,.entry-summary{margin:1.5em 0 0}
.page-links{clear:both;margin:0 0 1.5em}
.comment-content a{word-wrap:break-word}
.bypostauthor{display:block}
.infinite-scroll .posts-navigation,.infinite-scroll.neverending .site-footer{display:none}
.infinity-end.neverending .site-footer{display:block}
.page-content .wp-smiley,.entry-content .wp-smiley,.comment-content .wp-smiley{border:none;margin-bottom:0;margin-top:0;padding:0}
embed,iframe,object{max-width:100%}
.wp-caption{margin-bottom:1.5em;max-width:100%}
.wp-caption img[class*="wp-image-"]{display:block;margin-left:auto;margin-right:auto}
.wp-caption .wp-caption-text{margin:0.8075em 0}
.wp-caption-text{text-align:center}
.gallery{margin-bottom:1.5em}
.gallery-item{display:inline-block;text-align:center;vertical-align:top;width:100%}
.gallery-columns-2 .gallery-item{max-width:50%}
.gallery-columns-3 .gallery-item{max-width:33.33%}
.gallery-columns-4 .gallery-item{max-width:25%}
.gallery-columns-5 .gallery-item{max-width:20%}
.gallery-columns-6 .gallery-item{max-width:16.66%}
.gallery-columns-7 .gallery-item{max-width:14.28%}
.gallery-columns-8 .gallery-item{max-width:12.5%}
.gallery-columns-9 .gallery-item{max-width:11.11%}
.gallery-caption{display:block}


body{background:#b8e2f2;font-family:Arial,sans-serif;font-size:13px;color:#222;padding:0;margin:0;}
*{padding:0;margin:0}
a{color:#047;text-decoration:none}
a:hover{color:#c00}
.container{box-sizing:border-box;width:1000px;margin:0 auto;overflow:hidden;position:relative;display:block;align-items:center;}
.container img {max-width:100%;height:auto;margin:5px;}
.row {position:relative;display:block;}
.rowpadding {margin-right:-15px;margin-left:-15px;}
.rowwpadding {margin-right:15px;margin-left:15px;}
/* --- header --- */
#header {margin:0;padding:0;background:#abd25f;}
.headerbox {padding:0;}
#logo {float:left;width:30%;margin:0;overflow:hidden;}
#logo img {height:70px;width:auto;max-width:100%;padding:5px 0;}
#phone {box-sizing:border-box;float:right;padding:15px 0;line-height:30px;width:70%;text-align:right;font-size:16px;color:#249aa6;overflow:hidden;}
#phone a {color:#384e7a;font-size:23px;}
.phonebox {display:inline-block;padding:0 0 0 60px;float:right;background:url(images/phone.png) no-repeat left;}

/* --- menu --- */
#menu {position:relative;display:block;overflow:hidden;float:none;padding:0;margin:0 0 15px;box-sizing:border-box;border-top:4px solid #abd25f;background:#249aa6;}
#menu ul {padding:0;margin:0;}
#menu ul li {display:block;float:left;padding:10px;transition: all 2.7s ease 1.5s;}
#menu ul li a {position:relative;display:block;padding:0 10px;margin:0px;font-size:16px;color:#ddecfe;font-weight:bold;outline:none;}
#menu ul li:hover a, #menu ul li.current_page_item a, #menu ul li.current-menu-item a {color:#fff;}
#menu ul li.current_page_item, #menu ul li.current-menu-item {overflow:hidden;background:#abd25f;}
#menu input[type=checkbox], #menu label {display:none}

/* --- pagewrapper --- */
#pagewrapper {margin:15px 0;padding:0;background:#fff;border-radius:5px;}

/* --- --- */
.mainpage {position:relative;display:block;overflow:hidden;padding:0;}

/* --- content --- */
#content {box-sizing:border-box;width:100%;overflow:hidden;padding:10px 0;margin:0;border-radius:5px;color:#000;}
#banner {position:relative;padding:0;max-width:100%;display:block;}
#banner img {margin:0;padding:0;width:100%;height:auto;max-height:350px;border-radius:5px;}


#content h1 {position:relative;font-size:25px;margin:10px 0 15px;padding:20px 0;text-align:center;}
#content h1:after {display:block;content:"";position:relative;width:200px;border:2px solid #fcc431;margin:10px auto;}
#content h1 a, #content h1 a:hover {color:#f1594b;text-decoration:none}
#content h1.archive{font-weight:400;font-size:22px;color:#1c1c1c;padding:0;margin:5px 0 20px 0;border:none;text-align:left}
#content h2 {position:relative;color:#249aa6;font-size:20px;margin:0 0 10px;padding:10px 0;}
#content h2:after {content:"";position:absolute;bottom:0;left:0;width:200px;border:1px solid #a8d266;}

.navigation{background:#f9f9f9;font-size:11px;padding:5px 10px;margin:0 0 20px 0;border-top:#bbb 1px solid}
.navigation a{color:#555;font-weight:700;text-decoration:none}
.navigation a:hover{color:#333;text-decoration:none}
.content {box-sizing:border-box;margin-right:300px;padding:0 15px 0 0;}
.content h3{font-size:16px;font-weight:400;margin:0 0 15px 0}
.content img{margin:5px;border:2px solid #fff;border-radius:5px;box-shadow:0 0 3px #000;}
.content a img{padding:2px;border:#0085b5 2px solid}
.content a {color:#cae3ff;}
.content a:hover img{padding:2px;border:#ca0002 2px solid}
.content p{line-height:18px;margin:0 0 15px 0}
.content ol{line-height:18px;margin:0 0 15px 30px}
.content ul{line-height:18px;margin:0 0 15px 30px}
.content li{margin:0 0 5px 0}
.meta{background:#f3f3f3;font-size:11px;line-height:15px;color:#333;padding:5px 10px;margin:0 0 30px 0;border-top:#bbb 1px solid}
.signature{float:left;padding:0 15px 0 0;border-right:#bbb 1px solid;width:200px}
.tags{float:left;padding:0 0 0 15px;width:440px}

.services_section {box-sizing:border-box;background:#b8e2f2;color:#000;margin:15px 0;padding:25px;}
.services_section h3 {margin:0 0 20px;padding:10px 0;background:#fff;color:#000;font-size:25px;text-align:center;border-radius:5px;}
ul.serviceslist {box-sizing: border-box;margin:0 .5%;padding:0;width:32.33333%;float:left;list-style-type:square;}
ul.serviceslist  li {font-family:tahoma;font-size:16px;margin:0;padding:8px 0 8px 10px;}

/* --- --- */
.section-full {box-sizing:border-box;padding:35px 0;margin:0;}
.price-cell {box-sizing:border-box;float:left;width:33.33333%;padding:0 15px;}
.pc-price{width:100%}
.pc-price ul{margin:0;padding:0;list-style:none}
.pc-price .pricing span{display:inline-block;font-size:18px;line-height:normal}
.pc-price .pricing .value{font-size:48px;line-height:40px}
.pc-price .pricing .currency{margin-right:5px;vertical-align:top}
.pc-price .price-body li{line-height:35px;white-space:nowrap}
.pc-price-5{box-sizing:border-box;background-color:#b7cc63;color:#000;padding:10px;border-radius:5px;}
.pc-price-5 .pricing,.pc-price-5 h3{color:#262626;font-family:Dosis,sans-serif}
.pc-price-5 h3{text-align:center;font-size:36px;font-weight:500;margin-bottom:7px;}
.pc-price-5 .sep{background-color:#f7c830;height:3px;margin-top:18px}
.pc-price-5 .sep span{background-color:#249aa6;display:block;height:3px;margin:0 auto;width:68px;transition:all .3s ease-in-out 0s}
.pc-price-5 span{font-size:16px}
.pc-price-5 .pricing{margin:23px 0 0;position:relative}
.pc-price-5 .pricing .currency{font-size:22px;font-weight:400;margin-right:1px}
.pc-price-5 .pricing .value{font-size:48px;font-weight:500}
.pc-price-5 .price-body{margin-top:26px}
.pc-price-5 .pc-btn{margin-top:23px}
.pc-price-5.active .sep span,.pc-price-5:hover .sep span{background-color:#e6ae03}
.pc-price-5.active .pc-btn,.pc-price-5:hover .pc-btn{background-color:#e6ae03;border-color:#e6ae03;color:#fff}

/* --- sidebar --- */
#sidebar{box-sizing:border-box;background:#249aa6;float:right;width:300px;position:relative;font-size:12px;padding:10px;margin:0;border-radius:5px;}
.widget {box-sizing:border-box;float:none;width:100%;overflow:hidden;color:#000;padding:0;margin:0 0 10px;}
.widget h3.widget-title {background:#f7c830;color:#000;font-size:23px;text-align:center;margin:0 0 10px;padding:8px 0;border-radius:5px;}
.offer {overflow:hidden;margin:0;margin-bottom:15px;text-align:center;}
.offer img {width:100%;margin:0;padding:0;height:auto;border-radius:5px;}
.widget p {padding:5px 0;}
.widget ul{padding:0;margin:0;list-style-type:none;text-shadow: 0 1px 0 rgba(255,255,255,.5);}
.widget ul li{position:relative;display:block;height:30px;line-height:30px;padding:5px 10px;margin:5px 0 0;background:#fff;color:#444;border-left:3px solid #ed1b24;transition:all .3s ease-out;}
.widget ul li:hover{background:#ed1b24;color:#fff;}
#sidebar form {padding:0 2px 0 0;}
#sidebar input[type=text],#sidebar input[type=email] {width:100%;height:30px;line-height:30px;border:1px solid #3c62a2;border-radius:5px;padding:0;margin:0;}
#sidebar textarea {width:100%;height:100px;line-height:25px;border:1px solid #3c62a2;border-radius:5px;padding:0;margin:0;}
#sidebar input[type=submit] {margin-top:10px;cursor:pointer;text-indent:-99999px;border:none;width:100%;height:50px;background:#dbdbdd url(images/button.png) no-repeat center;background-size:cover;}
#sidebar label {color:#000;}
/* ---  --- */
.about_section {box-sizing:border-box;background:#f2f2f2 url(images/ecailles.png) repeat;background-size:cover;color:#fff;margin:15px 0;padding:35px;border-radius:5px;}
.about_section img {float:left;width:60px;height:60px;}
.about_section h3 {margin:0 0 20px;padding:0;color:#ff7900;text-shadow:0 0 1px #000;font-size:25px;text-align:center;}
.about_section h3:after {display:block;content:"";position:relative;width:200px;border:2px solid #000 ;margin:10px auto;}
.about_box {box-sizing:border-box;float:left;width:33.3333%;padding:15px;}
.about_box h4 {color:#000;font-size:18px;padding:10px 0;}
.about_box p {color:#0058bf;margin-bottom:10px;}
/* --- /\/\/\/ --- */
#author h3{margin:5px 0 5px 0}
#searchform{margin:15px 0 0 0}
#searchform input{background:#222;font-size:11px;margin:2px 0;padding:1px 4px 2px 4px;border:#888 1px solid;color:#eee}
#searchform input:hover{background:#333;border:#999 1px solid;color:#fff;cursor:pointer}
#searchform #s{background:#f6f6f6;font-size:11px;margin:2px 0;padding:2px 4px;border:#aaa 1px solid;color:#222}
#searchform #s:hover{border:#c00 1px solid;cursor:text}
input.searchfield{background:#f6f6f6;font-size:11px;display:block;margin:5px 0 8px 0;padding:2px 4px;border:#aaa 1px solid;color:#222}
input.searchfield:hover{background:#eee;color:#222}
input.submit{background:#222;font-size:11px;display:block;margin:0 0 10px 0;padding:1px 4px 2px 4px;border:#888 1px solid;color:#eee}
input.submit:hover{background:#333;cursor:pointer;border:#999 1px solid;color:#fff}
input.subcom{background:#eee;font-size:11px;margin:0 0 10px 0;padding:1px 4px 2px 4px;border:#888 1px solid;color:#222}
input.subcom:hover{background:#222;cursor:pointer;border:#888 1px solid;color:#eee}
input.comment{background:#f6f6f6;font-size:11px;padding:2px 4px;border:#aaa 1px solid;color:#222}
input.comment:hover{border:#c00 1px solid}
textarea{background:#f6f6f6;font-size:12px;width:400px;padding:2px 4px;border:#aaa 1px solid;color:#222}
textarea:hover{border:#c00 1px solid}
.postinput small{font-size:11px;margin:0 0 0 5px}
p.logged{font-size:12px}
blockquote{background:url(images/quote.gif) no-repeat top left;padding:0 0 0 60px;min-height:50px}
/* --- footer widget --- */
#footerwidget {width: 100%;background:#1d1a18;color:#ffffff;margin:0 auto;padding:15px 0;text-align:center;line-height:1.8em;border-top:1px solid #2f3546;}
#footerwidget a {color:#d8d3bd;}
#footerwidget h4, .address {width:100%;display:block;position:relative;}
/* --- footer --- */
#footer{background:#121212;font-size:11px;color:#FF6600;margin:0 auto;padding:15px 0;text-align:center;position:relative;}
#footer a{color:#e0bd9a;font-weight:700;text-decoration:none}
#footer a:hover{color:#FF6600;text-decoration:none}

/* --- --- */
.clear{clear:both}
.warning p{background:url(images/warning.gif) no-repeat left;height:160px;padding:20px 0 0 90px;font-size:20px;margin:0 0 0 10px}
#wp-calendar{padding:10px 0 0 0;font-size:12px}
#wp-calendar caption{text-align:left;padding:0 0 5px 0}
#wp-calendar tr th,#wp-calendar tr td{padding:0 6px 0 0;text-align:right}
#wp-calendar td a{font-weight:700}
#wp-calendar td a:hover{font-weight:700}
img.wp-smiley{padding:0;border:none}
input:focus,textarea:focus{background-color:#ffc}
abbr{border:none}
.aligncenter{display:block;margin-left:auto;margin-right:auto}
.alignleft{float:left}
.alignright{float:right}
.wp-caption{border:1px solid #ddd;text-align:center;background-color:#f3f3f3;padding-top:4px;margin:10px;border-radius:3px}
.wp-caption img{margin:0;padding:0;border:0 none}
.wp-caption-dd{font-size:11px;line-height:17px;padding:0 4px 5px;margin:0}
.group:after{content:".";display:block;height:0;clear:both;visibility:hidden}
* html .group,* html #nav ul li a{height:1%}
*:first-child+html .group{min-height:1px}
* html #nav ul li a{display:inline}

@media (max-width:1024px) {
	
	.container{width:100%;padding:0 2%;}
	#content{float:none;width:100%;padding:0 2%;}
	#sidebar{float:none;width:100%;padding:125px 2%;}
	
}


@media (max-width:900px) {
	
	#logo, #phone {width:100%;text-align:center;}
	.pc-price-5 h3 {font-size:4vw;}
	#sidebar{float:none;width:100%;padding:90px 2%;}
	
}

@media (max-width:625px) {
	
	#phone {padding:15px 10%;}
	.phonebox, .clockbox {background:#3c62a2;color:#fff;width:100%;text-align:center;margin:0 0 10px;padding:5px 0;border:none;border-radius:15px;}
	#phone a, #phone b.clocklink {color:#fffdc0;}
	.contact_txt, .contact_lnk {width:100%;}
	.services_section ul.serviceslist {width:99%;}
	#sidebar {max-width:100%;overflow:hidden;background-size:100%;padding:60px 2%;}
	.widget {width:100%;padding:20px;margin:0;}
	.rowpadding {padding:0;margin:0;}
	.price-cell {width:100%;float:left;padding:10px;}
	

}

@media (max-width:500px) {

	#header {height:auto !important;}
	#logo {width:100%;float:none;position:relative;margin-bottom:5px;text-align:center;}
	#logo img {width:auto;max-width:100%;}
	#phone {width:100%;float:none;position:relative;margin-bottom:5px;text-align:center;}
	#menu{width:100%;height:auto;min-height:40px;padding:0;}
	#sub-menu{display:none}
	#menu label {display:block}
	#menu ul li{border-bottom:solid 1px #455681;height:40px;line-height:40px;width:100%;padding:0;}
	#menu ul li a{display:block;height:40px;line-height:40px;width:100%;text-align:center;color:#242424;background:#FFF;}
	#menu ul li.current_page_item a, #menu ul li.current-menu-item a {color:#FFF;background:#242424;}
	#menu ul li:hover a{background:#192776;color:#FFF}
	.show-menu{display:block;color:#fff;text-align:center;padding:10px 0;margin-bottom:5px;background:#d52d37;}
	input[type=checkbox]:checked ~ #sub-menu{display:block;margin:0;padding:0;}
	.about_box {width:100%;float:none;}

}

.topbutton {position:fixed;right:15px;bottom:10px;background:rgba(0,0,0,0.5);color:#fff;padding:10px;border-radius:50px;z-index:113}
.topbutton:hover {background:#000;}
.topbutton:visited{color:#fff;}
.mophonel{display:none}
@media (max-width:480px){.topbutton {bottom:70px;}.mophonel{display:block;position:fixed;bottom:0;right:0;width:100%;height:60px;line-height:60px;background:#57c200;color:#fff;text-align:center;font-size:24px;z-index:112}
.mophonel:hover {color:#fff;}}

/* --- Animation --- */

.fadeIn {
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-fill-mode: both;
  }

  @keyframes fadeIn {
  0% {opacity: 0;}
  100% {opacity: 1;}
  } 
  
.fadeInUp {
  animation-name: fadeInUp;
  animation-duration: 1s;
  animation-fill-mode: both;
  }

  @keyframes fadeInUp {
  0% {
  opacity: 0;
  transform: translate3d(0, 100%, 0);
  }
  100% {
  opacity: 1;
  transform: none;
  }
  } 
    /* Global reset for better sizing */
    *, *::before, *::after {
        box-sizing: border-box;
    }

    /* Form container */
    form.CUS {
        max-width: 640px;          /* keeps it readable on large screens */
        width: 100%;
        margin: 20px auto;         /* center form */
        padding: 16px;
        font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        background: #f9fafb;
        border-radius: 10px;
        border: 1px solid #e1e4e8;
    }

    form.CUS fieldset {
        border: none;
        margin: 0;
        padding: 0;
    }

    form.CUS legend {
        font-size: 1.2rem;
        font-weight: 600;
        margin-bottom: 16px;
        color: #111827;
    }

    /* Each field block */
    form.CUS p {
        margin: 0 0 12px;
    }

    /* Labels (from your HTML text before inputs) */
    form.CUS p:first-child,
    form.CUS p:not(:first-child) {
        color: #374151;
        font-size: 0.95rem;
    }

    /* Inputs, selects, textarea */
    form.CUS input[type="text"],
    form.CUS input[type="tel"],
    form.CUS input[type="number"],
    form.CUS select,
    form.CUS textarea {
        width: 100%;
        padding: 10px 12px;
        margin-top: 4px;
        border-radius: 6px;
        border: 1px solid #d1d5db;
        font-size: 0.95rem;
        color: #111827;
        background-color: #ffffff;
        outline: none;
        transition: border-color 0.2s ease, box-shadow 0.2s ease;
    }

    form.CUS textarea {
        min-height: 120px;
        resize: vertical;
    }

    form.CUS input[type="text"]:focus,
    form.CUS input[type="tel"]:focus,
    form.CUS input[type="number"]:focus,
    form.CUS select:focus,
    form.CUS textarea:focus {
        border-color: #2563eb;
        box-shadow: 0 0 0 2px rgba(37,99,235,0.15);
    }

    /* Submit button */
    form.CUS input[type="submit"] {
        display: inline-block;
        width: 100%;
        padding: 12px;
        border-radius: 6px;
        border: none;
        background: #2563eb;
        color: #ffffff;
        font-size: 1rem;
        font-weight: 600;
        cursor: pointer;
        text-align: center;
        transition: background 0.2s ease, transform 0.1s ease, box-shadow 0.2s ease;
    }

    form.CUS input[type="submit"]:hover {
        background: #1d4ed8;
        box-shadow: 0 4px 10px rgba(37,99,235,0.25);
    }

    form.CUS input[type="submit"]:active {
        transform: translateY(1px);
        box-shadow: none;
    }

    /* Honeypot field (hide from users) */
    form.CUS input.subject {
        display: none;
    }

    /* Small screens default (mobile-first) */
    @media (max-width: 599px) {
        form.CUS {
            padding: 12px;
            margin: 12px auto;
        }

        form.CUS legend {
            font-size: 1.1rem;
        }
    }

    /* Medium and larger screens: tighten layout a bit */
    @media (min-width: 600px) {
        form.CUS {
            padding: 20px 24px;
        }

        form.CUS input[type="submit"] {
            width: auto;           /* button hugs content instead of full width */
            min-width: 180px;
        }
    }

    /* Optional: make "Service Date" controls sit nicer on wider screens */
    @media (min-width: 768px) {
        /* Target the line with Service Date + Day + Year */
        form.CUS p:nth-of-type(7) {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 8px;
        }

        form.CUS p:nth-of-type(7) select,
        form.CUS p:nth-of-type(7) input[type="number"] {
            width: auto;
            flex: 1 1 0;
            min-width: 0;
        }
    }

