*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%;width:100%}
body{font-family:'Nunito',sans-serif;font-size:16px;line-height:1.6;color:#2a2a2a;background-color:#fff;display:flex;flex-direction:column}
h1,h2,h3,h4,h5,h6{font-family:'Exo 2',sans-serif;font-weight:700;line-height:1.3}
a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;display:block}
main{flex:1 0 auto}
.contentholder{max-width:1600px;margin:0 auto;padding:0 20px;width:100%}
header{background:linear-gradient(135deg,#F1F1F1 0%,#e8e8e8 100%);box-shadow:0 4px 12px #00000014}
.headertop{padding:35px 0 25px;background:linear-gradient(180deg,#fff 0%,#F1F1F1 100%);border-bottom:2px solid #bb182326}
.headertop .contentholder{display:flex;justify-content:center;align-items:center}
.brandarea{text-align:center}
.companyname{font-size:52px;color:#BB1823;margin-bottom:8px;letter-spacing:-.5px;text-shadow:2px 2px 4px #8800191a}
.tagln{font-size:18px;color:#5a5a5a;font-weight:400;max-width:700px;margin:0 auto}
.headerbottom{padding:20px 0;background-color:#F1F1F1}
.bottomrow{display:flex;justify-content:space-between;align-items:center;gap:30px}
.logoholder{flex-shrink:0}
.logolink{display:block}
.logoimg{height:90px;width:90px;object-fit:contain;background-color:#fff9;padding:8px;border-radius:4px;box-shadow:0 2px 8px #0000001a}
.mainnav{display:flex;gap:35px;align-items:center;flex-wrap:wrap}
.mainnav .navlink{font-size:17px;font-weight:700;color:#2a2a2a;padding:10px 18px;border-radius:3px;transition:background-color .3s ease,color .3s ease;white-space:nowrap}
.mainnav .navlink:hover{background-color:#BB1823;color:#fff}
footer{flex-shrink:0;margin-top:auto}
.footerholder{background:linear-gradient(135deg,#880019 0%,#BB1823 50%,#880019 100%);color:#fff;padding:40px 0}
.footergrad-1{position:relative}
.footercontent{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:25px}
.footernav{display:flex;gap:30px;flex-wrap:wrap}
.footernav .footlink{font-size:15px;color:#F1F1F1;transition:color .3s ease}
.footernav .footlink:hover{color:#fff}
.copyright .copytext{font-size:14px;color:#F1F1F1}
.cookie_popup{position:fixed;top:20px;right:20px;background-color:#fff;border:2px solid #BB1823;border-radius:4px;box-shadow:0 8px 24px #0003;padding:25px;max-width:420px;width:90%;z-index:10000;animation-duration:.5s}
.cookie_popup.magictime.slideUpReturn{animation-name:slideUpReturn}
.cookie_popup.magictime.slideDown{animation-name:slideDown}
.cookie_content .cookie_title{font-size:22px;color:#BB1823;margin-bottom:12px}
.cookie_content .cookie_desc{font-size:15px;color:#4a4a4a;margin-bottom:20px;line-height:1.5}
.cookie_actions{display:flex;gap:15px;justify-content:space-between}
.cookie_btn{flex:1;padding:12px 20px;border:none;border-radius:3px;font-size:16px;font-weight:700;cursor:pointer;transition:background-color .3s ease,transform .2s ease;font-family:'Exo 2',sans-serif}
.cookie_btn:hover{transform:translateY(-2px)}
.accept_btn{background-color:#BB1823;color:#fff}
.accept_btn:hover{background-color:#880019}
.decline_btn{background-color:#F1F1F1;color:#2a2a2a}
.decline_btn:hover{background-color:#e0e0e0}
@media (max-width: 1024px) {
.companyname{font-size:42px}
.tagln{font-size:16px}
.mainnav{gap:20px}
.mainnav .navlink{font-size:16px;padding:8px 15px}
}
@media (max-width: 768px) {
.companyname{font-size:36px}
.tagln{font-size:15px;padding:0 15px}
.headertop{padding:25px 0 20px}
.headerbottom{padding:15px 0}
.bottomrow{flex-direction:column;gap:20px;text-align:center}
.logoimg{height:75px;width:75px}
.mainnav{flex-direction:column;gap:12px;width:100%}
.mainnav .navlink{display:block;width:100%;text-align:center}
.footercontent{flex-direction:column;text-align:center;gap:20px}
.footernav{flex-direction:column;gap:15px;width:100%}
.cookie_popup{top:10px;right:10px;left:10px;max-width:none;width:auto}
.cookie_actions{flex-direction:column}
}
@media (max-width: 480px) {
.companyname{font-size:30px}
.tagln{font-size:14px}
.logoimg{height:65px;width:65px}
.mainnav .navlink{font-size:15px}
.cookie_content .cookie_title{font-size:19px}
.cookie_content .cookie_desc{font-size:14px}
}
.legal-area{max-width:1600px;margin:0 auto;padding:80px 20px;background:#fff}
.legal-area h1{font-size:42px;font-weight:700;color:#1a1a1a;margin:0 0 48px;line-height:1.2;letter-spacing:-.5px}
.legal-area h2{font-size:32px;font-weight:600;color:#2a2a2a;margin:64px 0 24px;line-height:1.3;border-bottom:2px solid #F1F1F1;padding-bottom:12px}
.legal-area h3{font-size:24px;font-weight:600;color:#3a3a3a;margin:48px 0 20px;line-height:1.4}
.legal-area h4{font-size:20px;font-weight:600;color:#4a4a4a;margin:36px 0 16px;line-height:1.4}
.legal-area h5{font-size:18px;font-weight:600;color:#5a5a5a;margin:28px 0 14px;line-height:1.5}
.legal-area h6{font-size:16px;font-weight:600;color:#6a6a6a;margin:24px 0 12px;line-height:1.5;text-transform:uppercase;letter-spacing:.5px}
.legal-area p{font-size:16px;line-height:1.8;color:#3a3a3a;margin:0 0 24px;max-width:900px}
.legal-area strong,.legal-area b{font-weight:600;color:#1a1a1a}
.legal-area a{color:#BB1823;text-decoration:none;border-bottom:1px solid #bb18234d;transition:all .3s ease}
.legal-area a:hover{color:#880019;border-bottom-color:#880019}
.legal-area ul,.legal-area ol{margin:0 0 32px;padding-left:0;list-style-position:outside;max-width:900px}
.legal-area ul{list-style-type:none}
.legal-area ol{list-style-type:decimal;padding-left:28px}
.legal-area ul li{position:relative;padding-left:32px;margin-bottom:16px;font-size:16px;line-height:1.8;color:#3a3a3a}
.legal-area ul li:before{content:'';position:absolute;left:0;top:12px;width:8px;height:8px;background:#BB1823;border-radius:2px}
.legal-area ol li{margin-bottom:16px;font-size:16px;line-height:1.8;color:#3a3a3a;padding-left:12px}
.legal-area ul ul,.legal-area ol ul,.legal-area ul ol,.legal-area ol ol{margin:16px 0 0}
.legal-area ul ul li:before{width:6px;height:6px;background:#880019}
.legal-area table{width:100%;max-width:1200px;border-collapse:collapse;margin:40px 0;font-size:15px;box-shadow:0 2px 8px #00000014;border-radius:4px;overflow:hidden}
.legal-area thead{background:#BB1823}
.legal-area thead tr{color:#fff}
.legal-area th{padding:18px 20px;text-align:left;font-weight:600;font-size:15px;letter-spacing:.3px}
.legal-area tbody tr{border-bottom:1px solid #F1F1F1;transition:background .2s ease}
.legal-area tbody tr:hover{background:#bb182308}
.legal-area tbody tr:last-child{border-bottom:none}
.legal-area td{padding:16px 20px;color:#3a3a3a;line-height:1.6}
.legal-area div{margin:0}
@media (max-width: 1024px) {
.legal-area{padding:60px 20px}
.legal-area h1{font-size:36px;margin-bottom:36px}
.legal-area h2{font-size:28px;margin-top:48px}
.legal-area h3{font-size:22px}
}
@media (max-width: 768px) {
.legal-area{padding:40px 16px}
.legal-area h1{font-size:30px;margin-bottom:32px}
.legal-area h2{font-size:24px;margin-top:40px;margin-bottom:20px}
.legal-area h3{font-size:20px;margin-top:32px}
.legal-area h4{font-size:18px}
.legal-area p{font-size:15px;line-height:1.7;margin-bottom:20px}
.legal-area ul li,.legal-area ol li{font-size:15px;line-height:1.7;margin-bottom:12px}
.legal-area table{font-size:14px;margin:32px 0}
.legal-area th,.legal-area td{padding:12px 14px}
.legal-area th{font-size:14px}
}
@media (max-width: 480px) {
.legal-area{padding:32px 12px}
.legal-area h1{font-size:26px;margin-bottom:28px}
.legal-area h2{font-size:22px;margin-top:36px}
.legal-area h3{font-size:18px}
.legal-area table{display:block;overflow-x:auto}
.legal-area th,.legal-area td{padding:10px 12px;font-size:13px}
}
.titlewrap{max-width:1600px;margin:0 auto;padding:80px 20px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative}
.titlewrap::before{content:'';position:absolute;top:40px;right:10%;width:180px;height:180px;background:linear-gradient(135deg,#bb182314,#8800191f);border-radius:50%;z-index:1}
.titlewrap::after{content:'';position:absolute;bottom:60px;left:5%;width:120px;height:120px;border:3px solid #bb182326;transform:rotate(45deg);z-index:1}
.leftcontent{position:relative;z-index:2}
.leftcontent .maintitle{font-size:48px;font-weight:700;line-height:1.2;color:#1a1a1a;margin:0 0 24px;position:relative}
.leftcontent .maintitle::before{content:'';position:absolute;left:-20px;top:10px;width:4px;height:60%;background:linear-gradient(180deg,#BB1823,#880019);border-radius:2px}
.leftcontent .desctext{font-size:18px;line-height:1.7;color:#4a4a4a;margin:0 0 36px}
.buttonholder{display:flex;gap:16px;flex-wrap:wrap}
.primarybtn{display:inline-block;padding:16px 32px;background:linear-gradient(135deg,#BB1823,#880019);color:#fff;text-decoration:none;border-radius:4px;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #bb182340;position:relative;z-index:10}
.primarybtn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #bb182359}
.secondarybtn{display:inline-block;padding:16px 32px;background:#F1F1F1;color:#BB1823;text-decoration:none;border-radius:4px;font-size:16px;font-weight:600;border:2px solid #BB1823;transition:all .3s ease;position:relative;z-index:10}
.secondarybtn:hover{background:#BB1823;color:#fff;transform:translateY(-2px)}
.imagecontainer{position:relative;z-index:2;border-radius:6px;overflow:hidden;box-shadow:0 8px 24px #0000001f}
.imagecontainer img{width:100%;height:auto;display:block;filter:blur(0.3px);transition:filter .4s ease}
.imagecontainer:hover img{filter:blur(0)}
.showcasewrapper{max-width:1600px;margin:0 auto;padding:100px 20px;background:linear-gradient(180deg,#fff 0%,#F1F1F1 100%)}
.showcasewrapper .sectionhead{text-align:center;margin:0 0 60px}
.showcasewrapper .headingtitle{font-size:42px;font-weight:700;color:#1a1a1a;margin:0 0 16px;position:relative;display:inline-block}
.showcasewrapper .headingtitle::after{content:'';position:absolute;bottom:-8px;left:50%;transform:translateX(-50%);width:80px;height:4px;background:#BB1823;border-radius:2px}
.showcasewrapper .subtitletext{font-size:18px;color:#4a4a4a;line-height:1.6;max-width:700px;margin:24px auto 0}
.projectgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:0 0 60px}
.projectcard{background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 4px 16px #00000014;transition:all .3s ease;position:relative}
.projectcard:hover{transform:translateY(-8px);box-shadow:0 12px 28px #bb18232e}
.projectcard .cardimage{width:100%;height:240px;overflow:hidden;position:relative}
.projectcard .cardimage img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}
.projectcard:hover .cardimage img{transform:scale(1.05)}
.projectcard .cardcontent{padding:28px}
.projectcard .cardtitle{font-size:24px;font-weight:700;color:#1a1a1a;margin:0 0 12px}
.projectcard .carddesc{font-size:15px;line-height:1.7;color:#666;margin:0 0 20px}
.projectcard .taglist{display:flex;flex-wrap:wrap;gap:8px}
.projectcard .tagitem{display:inline-block;padding:6px 14px;background:#bb182314;color:#880019;font-size:13px;font-weight:600;border-radius:3px}
.statsholder{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;padding:60px 40px;background:linear-gradient(135deg,#bb1823f2,#880019f2);border-radius:6px;position:relative;overflow:hidden}
.statsholder::before{content:'';position:absolute;top:-50%;right:-10%;width:400px;height:400px;background:#ffffff0d;border-radius:50%}
.statsholder::after{content:'';position:absolute;bottom:-30%;left:-5%;width:300px;height:300px;background:#ffffff08;border-radius:50%}
.statitem{text-align:center;position:relative;z-index:2}
.statitem .statnumber{font-size:48px;font-weight:700;color:#fff;margin:0 0 8px;display:block}
.statitem .statlabel{font-size:15px;color:#ffffffe6;font-weight:500}
@media (max-width: 1024px) {
.titlewrap{grid-template-columns:1fr;gap:40px;padding:60px 20px}
.leftcontent .maintitle{font-size:38px}
.projectgrid{grid-template-columns:repeat(2,1fr);gap:30px}
.statsholder{grid-template-columns:repeat(2,1fr);gap:24px;padding:40px 24px}
}
@media (max-width: 768px) {
.titlewrap{padding:40px 16px}
.leftcontent .maintitle{font-size:32px}
.leftcontent .desctext{font-size:16px}
.buttonholder{flex-direction:column}
.primarybtn,.secondarybtn{width:100%;text-align:center}
.showcasewrapper{padding:60px 16px}
.showcasewrapper .headingtitle{font-size:32px}
.projectgrid{grid-template-columns:1fr;gap:24px}
.statsholder{grid-template-columns:1fr;gap:20px;padding:32px 20px}
.statitem .statnumber{font-size:36px}
}
.maintitle{max-width:1600px;margin:0 auto;padding:80px 20px;background:linear-gradient(135deg,#bb182314 0%,#f1f1f1f2 100%);position:relative}
.maintitle::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#BB1823 0%,#880019 100%)}
.titlewrap{display:flex;flex-direction:row;align-items:center;gap:60px;max-width:1400px;margin:0 auto}
.titletext{flex:1;min-width:0}
.titletext h1{font-size:3.2rem;line-height:1.2;color:#1a1a1a;margin:0 0 24px;font-weight:700}
.titletext h1::after{content:'';display:block;width:120px;height:5px;background:linear-gradient(90deg,#BB1823 0%,#880019 100%);margin-top:20px;border-radius:3px}
.titletext p{font-size:1.15rem;line-height:1.75;color:#444;margin:0}
.titlevisual{flex:0 0 480px;position:relative}
.titlevisual::before{content:'';position:absolute;top:-15px;left:-15px;right:15px;bottom:15px;border:2px solid #bb18234d;border-radius:4px;z-index:1}
.titlevisual img{width:100%;height:420px;object-fit:cover;border-radius:4px;display:block;position:relative;z-index:2;box-shadow:0 12px 28px #00000026}
.titlevisual::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:repeating-linear-gradient(0deg,transparent,transparent 2px,#00000005 2px,#00000005 4px);pointer-events:none;z-index:3;border-radius:4px}
.audienceblock{max-width:1600px;margin:0 auto;padding:100px 20px;background:#fff}
.audienceinner{max-width:1400px;margin:0 auto}
.audienceinner h2{font-size:2.5rem;color:#1a1a1a;margin:0 0 60px;text-align:center;font-weight:700;position:relative}
.audienceinner h2::before{content:'';position:absolute;bottom:-20px;left:50%;transform:translateX(-50%);width:80px;height:4px;background:#BB1823;border-radius:2px}
.audiencegrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:40px}
.audiencecard{background:linear-gradient(135deg,#F1F1F1 0%,#fff 100%);padding:40px 32px;border-radius:6px;border-left:5px solid #BB1823;box-shadow:0 4px 16px #00000014;transition:all .3s ease;position:relative}
.audiencecard::before{content:'';position:absolute;top:0;right:0;width:60px;height:60px;background:linear-gradient(135deg,#bb18231a 0%,transparent 100%);border-radius:0 6px 0 0}
.audiencecard:hover{transform:translateY(-6px);box-shadow:0 12px 32px #bb18232e;border-left-color:#880019}
.audiencecard h3{font-size:1.5rem;color:#BB1823;margin:0 0 16px;font-weight:600}
.audiencecard p{font-size:1.05rem;line-height:1.7;color:#555;margin:0}
.inspiresection{max-width:1600px;margin:0 auto;padding:100px 20px;background:linear-gradient(180deg,#fff 0%,#f1f1f180 100%)}
.inspirecontainer{max-width:1400px;margin:0 auto}
.inspirecontainer h2{font-size:2.5rem;color:#1a1a1a;margin:0 0 70px;text-align:center;font-weight:700}
.storylayout{display:flex;flex-direction:row;gap:50px;align-items:flex-start;margin-bottom:80px;padding:50px 40px;background:#fff;border-radius:6px;box-shadow:0 6px 24px #0000001a;position:relative;overflow:hidden}
.storylayout::before{content:'';position:absolute;top:0;left:0;width:6px;height:100%;background:linear-gradient(180deg,#BB1823 0%,#880019 100%)}
.storylayout:nth-child(even){flex-direction:row-reverse}
.storylayout:nth-child(even)::before{left:auto;right:0}
.storyimage{flex:0 0 280px;position:relative}
.storyimage img{width:100%;height:320px;object-fit:cover;border-radius:4px;box-shadow:0 8px 20px #0000001f}
.storyimage::after{content:'';position:absolute;top:12px;left:12px;right:-12px;bottom:-12px;border:2px solid #88001933;border-radius:4px;z-index:-1}
.storycontent{flex:1;min-width:0}
.storycontent h3{font-size:1.8rem;color:#BB1823;margin:0 0 12px;font-weight:600}
.storyrole{font-size:.95rem;color:#888;margin:0 0 24px;font-style:italic}
.storycontent p{font-size:1.05rem;line-height:1.8;color:#444;margin:0 0 20px}
.storyresult{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;background:linear-gradient(135deg,#bb18231a 0%,#8800190d 100%);border-radius:4px;font-size:.95rem;color:#880019;font-weight:600;border:1px solid #bb182333}
.storyresult::before{content:'→';font-size:1.2rem;font-weight:700}
@media (max-width: 1024px) {
.titlewrap{flex-direction:column;gap:40px}
.titlevisual{flex:0 0 auto;width:100%;max-width:500px}
.titletext h1{font-size:2.5rem}
.audiencegrid{grid-template-columns:1fr}
.storylayout{flex-direction:column;gap:30px}
.storylayout:nth-child(even){flex-direction:column}
.storyimage{flex:0 0 auto;width:100%}
}
@media (max-width: 768px) {
.maintitle{padding:60px 20px}
.titletext h1{font-size:2rem}
.titletext p{font-size:1.05rem}
.titlevisual img{height:300px}
.audienceblock{padding:80px 20px}
.audienceinner h2{font-size:2rem;margin-bottom:40px}
.audiencecard{padding:30px 24px}
.inspiresection{padding:80px 20px}
.inspirecontainer h2{font-size:2rem;margin-bottom:50px}
.storylayout{padding:40px 24px;margin-bottom:50px}
.storyimage img{height:280px}
.storycontent h3{font-size:1.5rem}
}
.contactwrap{width:100%;max-width:1600px;margin:0 auto}
.herotop{position:relative;width:100%;min-height:420px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#BB1823 0%,#880019 100%);overflow:hidden;padding:80px 20px}
.herotop::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 30%,#f1f1f126 0%,transparent 50%),radial-gradient(circle at 80% 70%,#bb182366 0%,transparent 60%);opacity:.6}
.herotop::after{content:'';position:absolute;top:30px;left:30px;right:30px;bottom:30px;border:2px solid #f1f1f14d;border-radius:4px;pointer-events:none}
.heroinner{position:relative;z-index:2;text-align:center;max-width:900px}
.heroinner h1{font-size:3.2rem;font-weight:700;color:#F1F1F1;margin:0 0 20px;line-height:1.2;letter-spacing:-.5px}
.heroinner .tagline{font-size:1.35rem;color:#f1f1f1eb;line-height:1.6;font-weight:300;max-width:700px;margin:0 auto}
.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding:90px 40px;max-width:1400px;margin:0 auto;background:#fff}
.infosection h2{font-size:2.1rem;color:#880019;margin:0 0 16px;font-weight:600;line-height:1.3}
.infosection .introtxt{font-size:1.05rem;line-height:1.7;color:#333;margin:0 0 40px}
.contactblock{background:#F1F1F1;padding:32px;border-radius:3px;margin-bottom:28px;border-left:4px solid #BB1823}
.contactblock h3{font-size:1.3rem;color:#BB1823;margin:0 0 18px;font-weight:600;display:flex;align-items:center;gap:12px}
.contactblock h3::before{content:'';width:28px;height:28px;background:linear-gradient(135deg,#BB1823,#880019);border-radius:50%;flex-shrink:0}
.contactblock p{font-size:1rem;line-height:1.6;color:#444;margin:8px 0}
.contactblock a{color:#880019;text-decoration:none;font-weight:500;transition:color .25s ease}
.contactblock a:hover{color:#BB1823}
.formsection h2{font-size:2.1rem;color:#880019;margin:0 0 16px;font-weight:600;line-height:1.3}
.formsection .formintro{font-size:1.05rem;line-height:1.7;color:#333;margin:0 0 36px}
.mainform{background:#F1F1F1;padding:40px;border-radius:4px;box-shadow:0 2px 12px #88001914}
.fieldgroup{margin-bottom:26px}
.fieldgroup label{display:block;font-size:.95rem;font-weight:600;color:#333;margin-bottom:8px;letter-spacing:.3px}
.fieldgroup input[type="text"],.fieldgroup input[type="email"],.fieldgroup input[type="tel"],.fieldgroup select{width:100%;padding:14px 16px;font-size:1rem;border:2px solid #d4d4d4;border-radius:3px;background:#fff;color:#333;transition:all .3s ease;box-sizing:border-box}
.fieldgroup input:focus,.fieldgroup select:focus{outline:none;border-color:#BB1823;box-shadow:0 0 0 3px #bb18231a}
.fieldgroup select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23880019' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:40px}
.privacycheck{margin:28px 0 32px}
.privacycheck input[type="checkbox"]{margin-right:10px;width:18px;height:18px;cursor:pointer;accent-color:#BB1823}
.privacycheck label{font-size:.92rem;color:#555;line-height:1.6;display:inline;cursor:pointer}
.privacycheck a{color:#BB1823;text-decoration:underline;font-weight:500}
.privacycheck a:hover{color:#880019}
.submitbtn{width:100%;padding:16px 24px;font-size:1.1rem;font-weight:600;color:#F1F1F1;background:linear-gradient(135deg,#BB1823,#880019);border:none;border-radius:3px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 14px #bb182340;letter-spacing:.5px}
.submitbtn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #bb182359;background:linear-gradient(135deg,#d01f2c,#BB1823)}
.submitbtn:active{transform:translateY(0)}
.hoursblock{background:linear-gradient(135deg,#bb18230f,#8800190a);padding:48px 40px;text-align:center;border-top:3px solid #BB1823}
.hoursblock h2{font-size:2rem;color:#880019;margin:0 0 14px;font-weight:600}
.hoursblock .hoursdetail{font-size:1.1rem;color:#444;line-height:1.8;max-width:700px;margin:0 auto 32px}
.schedgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:24px;max-width:1000px;margin:0 auto}
.scheditem{background:#fff;padding:24px;border-radius:3px;box-shadow:0 2px 8px #8800190f;border-top:3px solid #BB1823}
.scheditem h4{font-size:1.15rem;color:#BB1823;margin:0 0 10px;font-weight:600}
.scheditem p{font-size:1rem;color:#555;margin:0;line-height:1.5}
@media (max-width: 1024px) {
.contactgrid{grid-template-columns:1fr;gap:50px;padding:70px 30px}
.heroinner h1{font-size:2.6rem}
.heroinner .tagline{font-size:1.2rem}
.schedgrid{grid-template-columns:1fr 1fr}
}
@media (max-width: 768px) {
.herotop{min-height:340px;padding:60px 20px}
.herotop::after{top:20px;left:20px;right:20px;bottom:20px}
.heroinner h1{font-size:2.2rem}
.heroinner .tagline{font-size:1.1rem}
.contactgrid{padding:50px 20px;gap:40px}
.infosection h2,.formsection h2{font-size:1.8rem}
.contactblock{padding:24px}
.mainform{padding:30px 24px}
.hoursblock{padding:40px 20px}
.schedgrid{grid-template-columns:1fr}
.submitbtn{font-size:1rem;padding:14px 20px}
}
@media (max-width: 480px) {
.heroinner h1{font-size:1.9rem}
.heroinner .tagline{font-size:1rem}
.contactblock h3{font-size:1.15rem}
.fieldgroup input[type="text"],.fieldgroup input[type="email"],.fieldgroup input[type="tel"],.fieldgroup select{padding:12px 14px;font-size:.95rem}
}
.abouttitle{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;max-width:1600px;margin:0 auto 100px;padding:80px 20px;position:relative}
.abouttitle .txtside{padding-right:40px}
.abouttitle .txtside .headnum{font-size:62px;font-weight:700;line-height:1.1;color:#1a1a1a;margin:0 0 28px}
.abouttitle .txtside .headnum .accent{color:#BB1823;font-size:78px}
.abouttitle .txtside .explain{font-size:19px;line-height:1.7;color:#333;margin:0}
.abouttitle .imgside{position:relative;overflow:visible}
.abouttitle .imgside .mainpic{width:120%;height:520px;object-fit:cover;border-radius:4px;box-shadow:0 8px 24px #0000001f;position:relative;margin-left:-60px}
.abouttitle .imgside::before{content:'';position:absolute;top:-40px;right:80px;width:200px;height:200px;background:radial-gradient(circle,#bb182326 0%,transparent 70%);border-radius:50%;pointer-events:none;z-index:1}
.abouttitle .imgside::after{content:'';position:absolute;bottom:-30px;left:20px;width:160px;height:160px;background:radial-gradient(circle,#8800191f 0%,transparent 70%);border-radius:50%;pointer-events:none;z-index:1}
.storysection{background:linear-gradient(135deg,#F1F1F1 0%,#fff 100%);padding:90px 20px;position:relative}
.storysection .contentbox{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1.2fr 0.8fr;gap:80px;align-items:start}
.storysection .maintext h2{font-size:44px;font-weight:700;color:#1a1a1a;margin:0 0 36px;line-height:1.2}
.storysection .maintext .paragraphblock{margin-bottom:32px}
.storysection .maintext .paragraphblock p{font-size:18px;line-height:1.8;color:#2a2a2a;margin:0 0 24px}
.storysection .maintext .paragraphblock p:last-child{margin-bottom:0}
.storysection .statgrid{display:grid;grid-template-columns:1fr;gap:24px}
.storysection .statgrid .statcard{background:#fff;padding:32px 28px;border-radius:4px;border-left:4px solid #BB1823;box-shadow:0 4px 16px #00000014;transition:all .3s ease}
.storysection .statgrid .statcard:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}
.storysection .statgrid .statcard .statnum{font-size:48px;font-weight:700;color:#BB1823;margin:0 0 8px;line-height:1}
.storysection .statgrid .statcard .statlabel{font-size:16px;font-weight:600;color:#1a1a1a;margin:0 0 12px;text-transform:uppercase;letter-spacing:.5px}
.storysection .statgrid .statcard .statdesc{font-size:15px;line-height:1.6;color:#555;margin:0}
.approach{max-width:1600px;margin:0 auto;padding:100px 20px}
.approach .approachtitle{text-align:center;margin-bottom:70px}
.approach .approachtitle h2{font-size:46px;font-weight:700;color:#1a1a1a;margin:0 0 20px;line-height:1.2}
.approach .approachtitle .subtitle{font-size:19px;color:#555;margin:0;line-height:1.6}
.approach .visualgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-bottom:60px}
.approach .visualgrid .picbox{position:relative;overflow:hidden;border-radius:4px;box-shadow:0 6px 20px #0000001a;transition:all .4s ease}
.approach .visualgrid .picbox:hover{transform:scale(1.03);box-shadow:0 12px 32px #00000026}
.approach .visualgrid .picbox img{width:100%;height:280px;object-fit:cover;display:block}
.approach .visualgrid .picbox .overlay{position:absolute;bottom:0;left:0;right:0;background:linear-gradient(to top,#bb1823e6 0%,transparent 100%);padding:24px 20px;transform:translateY(100%);transition:transform .4s ease}
.approach .visualgrid .picbox:hover .overlay{transform:translateY(0)}
.approach .visualgrid .picbox .overlay .overlaytext{font-size:16px;color:#fff;margin:0;line-height:1.5;font-weight:500}
.approach .teamshowcase{display:flex;align-items:center;gap:60px;background:linear-gradient(120deg,#BB1823 0%,#880019 100%);padding:50px 60px;border-radius:6px;box-shadow:0 8px 24px #bb18234d}
.approach .teamshowcase .portraitbox{flex-shrink:0}
.approach .teamshowcase .portraitbox img{width:180px;height:180px;object-fit:cover;border-radius:50%;border:5px solid #ffffffe6;box-shadow:0 6px 20px #0003}
.approach .teamshowcase .testimonialtext{flex:1}
.approach .teamshowcase .testimonialtext .quote{font-size:20px;line-height:1.7;color:#fff;margin:0 0 20px;font-style:italic}
.approach .teamshowcase .testimonialtext .authorinfo{display:flex;align-items:center;gap:16px}
.approach .teamshowcase .testimonialtext .authorinfo .authname{font-size:18px;font-weight:700;color:#fff;margin:0}
.approach .teamshowcase .testimonialtext .authorinfo .authrole{font-size:15px;color:#ffffffd9;margin:0}
.approach .ctablock{margin-top:60px;text-align:center}
.approach .ctablock .ctabtn{display:inline-block;padding:18px 48px;background:#BB1823;color:#fff;font-size:18px;font-weight:600;text-decoration:none;border-radius:4px;box-shadow:0 4px 16px #bb18234d;transition:all .3s ease;position:relative;z-index:10}
.approach .ctablock .ctabtn:hover{background:#880019;box-shadow:0 6px 24px #bb182366;transform:translateY(-2px)}
.approach .ctablock .secondarybtn{display:inline-block;padding:18px 48px;background:transparent;color:#BB1823;font-size:18px;font-weight:600;text-decoration:none;border-radius:4px;border:2px solid #BB1823;margin-left:20px;transition:all .3s ease;position:relative;z-index:10}
.approach .ctablock .secondarybtn:hover{background:#BB1823;color:#fff;transform:translateY(-2px)}
@media (max-width: 1024px) {
.abouttitle{grid-template-columns:1fr;gap:40px;margin-bottom:60px;padding:60px 20px}
.abouttitle .txtside{padding-right:0;text-align:center}
.abouttitle .txtside .headnum{font-size:48px}
.abouttitle .txtside .headnum .accent{font-size:60px}
.abouttitle .imgside .mainpic{width:100%;height:400px;margin-left:0}
.storysection .contentbox{grid-template-columns:1fr;gap:50px}
.approach .visualgrid{grid-template-columns:repeat(2,1fr);gap:30px}
.approach .teamshowcase{flex-direction:column;text-align:center;padding:40px 30px}
}
@media (max-width: 768px) {
.abouttitle .txtside .headnum{font-size:38px}
.abouttitle .txtside .headnum .accent{font-size:48px}
.abouttitle .txtside .explain{font-size:17px}
.abouttitle .imgside .mainpic{height:320px}
.storysection{padding:60px 20px}
.storysection .maintext h2{font-size:34px}
.storysection .maintext .paragraphblock p{font-size:16px}
.storysection .statgrid .statcard{padding:24px 20px}
.storysection .statgrid .statcard .statnum{font-size:38px}
.approach{padding:60px 20px}
.approach .approachtitle h2{font-size:36px}
.approach .visualgrid{grid-template-columns:1fr;gap:24px}
.approach .visualgrid .picbox img{height:240px}
.approach .ctablock .ctabtn,.approach .ctablock .secondarybtn{display:block;margin:0 0 16px;width:100%}
}
.successwrapper{min-height:85vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#F1F1F1 0%,#fff 100%);padding:40px 20px;position:relative;overflow:hidden}
.successwrapper::before{content:'';position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:#bb182314;border-radius:50%;z-index:1}
.successwrapper::after{content:'';position:absolute;bottom:-30%;left:-15%;width:500px;height:500px;background:#8800190f;border-radius:50%;z-index:1}
.successcontainer{max-width:680px;width:100%;margin:0 auto;position:relative;z-index:10}
.successcard{background:#fff;border-radius:4px;padding:60px 45px;box-shadow:0 8px 24px #00000014;text-align:center;position:relative}
.successicon{width:90px;height:90px;margin:0 auto 30px;position:relative}
.successicon svg{width:100%;height:100%;display:block}
.checkmarkpath{stroke:#BB1823;stroke-width:3;fill:none;stroke-dasharray:100;stroke-dashoffset:100;animation:drawcheck .8s ease-in-out forwards}
@keyframes drawcheck {
to{stroke-dashoffset:0}
}
.successcard h1{font-size:2.2rem;color:#1a1a1a;margin:0 0 18px;font-weight:700;line-height:1.3}
.successmsg{font-size:1.1rem;color:#4a4a4a;line-height:1.7;margin:0 0 35px}
.successinfo{background:#F1F1F1;border-left:3px solid #BB1823;padding:20px 25px;margin:0 0 35px;text-align:left;border-radius:2px}
.successinfo p{font-size:.95rem;color:#2a2a2a;line-height:1.6;margin:0}
.successinfo p + p{margin-top:12px}
.successinfo strong{color:#BB1823;font-weight:600}
.actionbtns{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}
.btnprimary{display:inline-block;padding:14px 32px;background:#BB1823;color:#fff;text-decoration:none;border-radius:3px;font-size:1rem;font-weight:600;transition:all .3s ease;border:2px solid #BB1823}
.btnprimary:hover{background:#880019;border-color:#880019;transform:translateY(-2px);box-shadow:0 4px 12px #bb182340}
.btnsecondary{display:inline-block;padding:14px 32px;background:transparent;color:#BB1823;text-decoration:none;border-radius:3px;font-size:1rem;font-weight:600;transition:all .3s ease;border:2px solid #BB1823}
.btnsecondary:hover{background:#BB1823;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #bb182340}
.decorshape{position:absolute;width:60px;height:60px;border:2px solid #bb182326;border-radius:50%;top:20px;right:20px}
.decorshape::before{content:'';position:absolute;width:30px;height:30px;background:#8800191a;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}
@media (max-width: 768px) {
.successwrapper{padding:30px 15px}
.successcard{padding:45px 30px}
.successcard h1{font-size:1.8rem}
.successmsg{font-size:1rem}
.actionbtns{flex-direction:column;align-items:stretch}
.btnprimary,.btnsecondary{width:100%;text-align:center}
.decorshape{width:45px;height:45px;top:15px;right:15px}
.decorshape::before{width:22px;height:22px}
}
@media (max-width: 480px) {
.successcard{padding:35px 20px}
.successicon{width:70px;height:70px}
.successcard h1{font-size:1.5rem}
.successinfo{padding:16px 20px}
.successinfo p{font-size:.9rem}
}