*{margin:0;padding:0;box-sizing:border-box}
ul,ol{list-style:none}
h1,h2,h3,h4,h5,h6{font-weight:400}
figure,blockquote{margin:0}
body{font-family:'Fira Code',monospace;background:#FBF8E5;color:#2a2a2a;font-size:16px;line-height:1.6}
.topheader{background:linear-gradient(135deg,#CA77CB 0%,#01867A 100%);padding:18px 0}
.topheader .headerholder{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;gap:32px}
.logoarea{display:flex;align-items:center;gap:16px}
.logoarea img{height:110px;width:110px;background:#FBF8E5;padding:8px;border-radius:6px;box-shadow:0 3px 8px #00000026}
.taglinetext{color:#FBF8E5;font-size:15px;font-weight:300;max-width:420px;text-align:right;line-height:1.5}
.bottomheader{background:#fff;border-bottom:2px solid #e8e8e8;box-shadow:0 4px 6px #0000000d}
.bottomheader .headerholder{max-width:1280px;margin:0 auto;padding:0 24px;display:flex;justify-content:space-between;align-items:center;gap:32px;min-height:68px}
.mainnav ul{display:flex;gap:8px;align-items:center}
.mainnav ul li a{display:block;padding:12px 20px;color:#2a2a2a;text-decoration:none;font-size:15px;font-weight:400;border-radius:6px;transition:background 0.2s,color .2s}
.mainnav ul li a:hover{background:#f5f5f5;color:#01867A}
.ctabutton a{display:inline-block;padding:13px 28px;background:linear-gradient(135deg,#CA77CB 0%,#01867A 100%);color:#FBF8E5;text-decoration:none;font-weight:600;font-size:15px;border-radius:8px;box-shadow:0 3px 7px #ca77cb4d;transition:box-shadow 0.2s,transform .1s}
.ctabutton a:hover{box-shadow:0 5px 12px #ca77cb66}
.footerarea{background:#2a2a2a;padding:48px 24px 32px;text-align:center;border-top:3px solid #CA77CB}
.footerarea .footerholder{max-width:1280px;margin:0 auto}
.footerlinks{margin-bottom:28px}
.footerlinks ul{display:flex;justify-content:center;gap:32px;flex-wrap:wrap}
.footerlinks ul li{border-bottom:1px solid transparent}
.footerlinks ul li a{color:#FBF8E5;text-decoration:none;font-size:14px;font-weight:300;transition:color .2s}
.footerlinks ul li a:hover{color:#CA77CB}
.copyrighttext{color:#a8a8a8;font-size:13px;font-weight:300;padding-top:24px;border-top:1px solid #444}
.cookiepopup{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) translateY(-100vh);background:#fff;padding:36px 48px;border-radius:8px;box-shadow:0 8px 24px #00000040;max-width:820px;width:90%;z-index:9999;transition:transform .4s ease-out}
.cookiepopup.is-visible{transform:translate(-50%,-50%) translateY(0)}
.cookiepopup .popupheading{font-size:22px;font-weight:600;color:#2a2a2a;margin-bottom:16px}
.cookiepopup .popupdesc{font-size:14px;color:#555;margin-bottom:24px;line-height:1.7}
.consentcontrols{margin-bottom:28px}
.consentitem{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #e8e8e8}
.consentitem:last-child{border-bottom:none}
.consentlabel{font-size:14px;font-weight:400;color:#2a2a2a}
.consentlabel .requiredmark{font-size:11px;color:#888;font-weight:300}
.consenttoggle input[type="checkbox"]{width:20px;height:20px;cursor:pointer}
.consenttoggle input[type="checkbox"]:disabled{cursor:not-allowed}
.popupactions{display:flex;gap:16px;justify-content:flex-end}
.popupactions button{padding:13px 32px;font-family:'Fira Code',monospace;font-size:14px;font-weight:600;border:none;cursor:pointer;border-radius:0;transition:background 0.2s,color .2s}
.rejectbtn{background:#e8e8e8;color:#2a2a2a}
.rejectbtn:hover{background:#d0d0d0}
.acceptbtn{background:#01867A;color:#FBF8E5}
.acceptbtn:hover{background:#016a61}
.cookieoverlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:9998;display:none}
.cookieoverlay.is-visible{display:block}
@media (max-width: 768px) {
.topheader .headerholder{flex-direction:column;text-align:center;gap:16px}
.taglinetext{text-align:center}
.bottomheader .headerholder{flex-direction:column;padding:16px 24px;gap:20px}
.mainnav ul{flex-direction:column;width:100%;gap:4px}
.mainnav ul li{width:100%}
.mainnav ul li a{width:100%;text-align:center}
.ctabutton{width:100%}
.ctabutton a{width:100%;display:block;text-align:center}
.cookiepopup{padding:24px 28px;width:95%}
.popupactions{flex-direction:column}
.popupactions button{width:100%}
.footerlinks ul{flex-direction:column;gap:16px}
}
.info-doc{max-width:1280px;margin:0 auto;padding:60px 20px;background:#fff}
.info-doc h1{font-size:42px;line-height:1.2;color:#1a1a1a;margin:0 0 32px;font-weight:700;padding-bottom:20px;border-bottom:3px solid #CA77CB}
.info-doc h2{font-size:32px;line-height:1.3;color:#2a2a2a;margin:48px 0 24px;font-weight:600}
.info-doc h3{font-size:24px;line-height:1.4;color:#3a3a3a;margin:36px 0 20px;font-weight:600}
.info-doc h4{font-size:20px;line-height:1.4;color:#4a4a4a;margin:28px 0 16px;font-weight:600}
.info-doc h5{font-size:18px;line-height:1.5;color:#5a5a5a;margin:24px 0 14px;font-weight:600}
.info-doc h6{font-size:16px;line-height:1.5;color:#6a6a6a;margin:20px 0 12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.info-doc p{font-size:16px;line-height:1.75;color:#333;margin:0 0 20px}
.info-doc ul,.info-doc ol{margin:0 0 24px;padding-left:32px}
.info-doc ul li,.info-doc ol li{font-size:16px;line-height:1.75;color:#333;margin-bottom:12px}
.info-doc ul li{list-style-type:disc}
.info-doc ul ul li{list-style-type:circle}
.info-doc ul ul ul li{list-style-type:square}
.info-doc ol{list-style-type:decimal}
.info-doc ol ol{list-style-type:lower-alpha}
.info-doc ol ol ol{list-style-type:lower-roman}
.info-doc strong,.info-doc b{font-weight:600;color:#1a1a1a}
.info-doc hr{border:none;border-top:2px solid #e0e0e0;margin:40px 0}
.info-doc div{margin:0 0 20px}
.info-doc h2 + p,.info-doc h3 + p,.info-doc h4 + p{margin-top:0}
.info-doc ul ul,.info-doc ol ol,.info-doc ul ol,.info-doc ol ul{margin-top:12px;margin-bottom:12px}
@media (max-width: 768px) {
.info-doc{padding:40px 16px}
.info-doc h1{font-size:32px;margin-bottom:24px;padding-bottom:16px}
.info-doc h2{font-size:26px;margin:36px 0 20px}
.info-doc h3{font-size:22px;margin:28px 0 16px}
.info-doc h4{font-size:19px;margin:24px 0 14px}
.info-doc h5{font-size:17px;margin:20px 0 12px}
.info-doc h6{font-size:15px;margin:18px 0 10px}
.info-doc p,.info-doc ul li,.info-doc ol li{font-size:15px;line-height:1.7}
.info-doc ul,.info-doc ol{padding-left:24px}
.info-doc hr{margin:32px 0}
}
@media (max-width: 480px) {
.info-doc{padding:32px 12px}
.info-doc h1{font-size:28px}
.info-doc h2{font-size:24px}
.info-doc h3{font-size:20px}
}
.reviewherosection{position:relative;min-height:85vh;display:flex;align-items:flex-end;overflow:hidden;background:linear-gradient(135deg,#01867A 0%,#CA77CB 100%)}
.reviewherosection::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-image:url(./site_visuals/2025_01_10_services.jpg);background-size:cover;background-position:center;opacity:.22;z-index:1}
.reviewherosection::after{content:'';position:absolute;bottom:0;left:0;width:100%;height:65%;background:linear-gradient(to top,#01867aeb,transparent);z-index:2}
.heroinnercontainer{position:relative;z-index:3;max-width:1280px;width:90%;margin:0 auto;padding:0 0 8vh}
.heroinnercontainer h1{font-size:3.2rem;color:#FBF8E5;font-weight:700;margin:0 0 1.8rem;line-height:1.15;text-shadow:2px 4px 8px #00000059}
.heroinnercontainer .herodesc{font-size:1.15rem;color:#FBF8E5;line-height:1.65;max-width:680px;margin:0;text-shadow:1px 2px 6px #0000004d}
.reviewmaincontent{background:#FBF8E5;padding:7vh 0 9vh;position:relative}
.reviewmaincontent::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#CA77CB 0%,#01867A 50%,#CA77CB 100%)}
.contentwrapper{max-width:1280px;width:90%;margin:0 auto}
.reviewsectionintro{text-align:center;margin-bottom:6vh}
.reviewsectionintro h2{font-size:2.4rem;color:#01867A;margin:0 0 1.2rem;font-weight:700}
.reviewsectionintro .intropara{font-size:1.05rem;color:#333;line-height:1.7;max-width:750px;margin:0 auto}
.reviewgridholder{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:3rem;margin-top:5vh}
.reviewcard{background:#fff;border-radius:8px;padding:2.2rem;box-shadow:3px 5px 12px #01867a1f;position:relative;transition:all .3s ease;border:2px solid transparent}
.reviewcard:hover{transform:translateY(-6px);box-shadow:5px 8px 18px #ca77cb38;border-color:#CA77CB}
.reviewcard::before{content:'';position:absolute;top:-1px;left:2rem;width:50px;height:4px;background:linear-gradient(90deg,#CA77CB,#01867A);border-radius:4px}
.reviewcardupper{display:flex;align-items:center;margin-bottom:1.6rem}
.revieweravatar{width:58px;height:58px;border-radius:50%;background:linear-gradient(135deg,#CA77CB,#01867A);display:flex;align-items:center;justify-content:center;font-size:1.5rem;font-weight:700;color:#FBF8E5;margin-right:1.2rem;box-shadow:2px 3px 8px #01867a33}
.reviewerdetails h3{font-size:1.2rem;color:#01867A;margin:0 0 .3rem;font-weight:600}
.reviewerposition{font-size:.9rem;color:#666;margin:0}
.starscontainer{display:flex;gap:.3rem;margin-bottom:1.4rem}
.starscontainer .staricon{width:18px;height:18px;background:linear-gradient(135deg,#CA77CB,#01867A);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.reviewtext{font-size:1rem;color:#333;line-height:1.75;margin:0 0 1.4rem}
.reviewmeta{font-size:.85rem;color:#888;font-style:italic;margin:0;padding-top:1rem;border-top:1px solid #e8e8e8}
.reviewcard.featured{background:linear-gradient(135deg,#ca77cb14,#01867a14);grid-column:span 1}
.reviewcard.featured .reviewtext{font-size:1.05rem}
@media (max-width: 1024px) {
.heroinnercontainer h1{font-size:2.6rem}
.reviewgridholder{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2.5rem}
}
@media (max-width: 768px) {
.reviewherosection{min-height:70vh}
.heroinnercontainer{padding:0 0 6vh}
.heroinnercontainer h1{font-size:2.2rem;margin-bottom:1.4rem}
.heroinnercontainer .herodesc{font-size:1.05rem}
.reviewsectionintro h2{font-size:2rem}
.reviewgridholder{grid-template-columns:1fr;gap:2rem}
.reviewcard{padding:1.8rem}
}
@media (max-width: 480px) {
.heroinnercontainer h1{font-size:1.9rem}
.reviewsectionintro h2{font-size:1.8rem}
.reviewcard{padding:1.5rem}
.revieweravatar{width:52px;height:52px;font-size:1.3rem}
}
.titlehero{position:relative;min-height:520px;display:flex;align-items:center;background:linear-gradient(135deg,#ca77cb1f,#01867a14);overflow:hidden;margin-bottom:80px}
.titlehero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background-image:url(./site_visuals/2026_01_06_wide.jpg);background-size:cover;background-position:center;opacity:.18;z-index:1}
.titlehero::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:80px;background:linear-gradient(to bottom,transparent,#FBF8E5);z-index:2}
.herocontent{position:relative;z-index:3;max-width:1280px;margin:0 auto;padding:60px 40px;width:100%}
.herocontent .maintitle{font-size:3.2rem;line-height:1.2;margin-bottom:28px;color:#2a2a2a;font-weight:700}
.herocontent .maintitle .highlight{color:#CA77CB;position:relative;display:inline-block}
.herocontent .maintitle .highlight::after{content:'';position:absolute;bottom:-4px;left:0;width:100%;height:3px;background:linear-gradient(90deg,#CA77CB,#01867A);border-radius:2px}
.herocontent .subtitle{font-size:1.3rem;line-height:1.6;color:#444;max-width:720px}
.herocontent .ctagroup{margin-top:36px;display:flex;gap:18px;flex-wrap:wrap}
.herocontent .primarybtn{padding:14px 32px;background:linear-gradient(135deg,#CA77CB,#01867A);color:#fff;text-decoration:none;border-radius:6px;font-weight:600;font-size:1.05rem;transition:all .3s ease;box-shadow:0 4px 12px #ca77cb40;z-index:10;position:relative}
.herocontent .primarybtn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #ca77cb59}
.herocontent .secondarybtn{padding:14px 32px;background:transparent;color:#01867A;text-decoration:none;border:2px solid #01867A;border-radius:6px;font-weight:600;font-size:1.05rem;transition:all .3s ease;z-index:10;position:relative}
.herocontent .secondarybtn:hover{background:#01867A;color:#fff}
.transparencysection{max-width:1280px;margin:0 auto 90px;padding:0 40px}
.transparencysection .sectionheader{text-align:center;margin-bottom:60px}
.transparencysection .sectionheader h2{font-size:2.4rem;color:#2a2a2a;margin-bottom:16px;font-weight:700;position:relative;display:inline-block}
.transparencysection .sectionheader h2::before{content:'';position:absolute;top:-12px;left:50%;transform:translateX(-50%);width:60px;height:4px;background:linear-gradient(90deg,#CA77CB,#01867A);border-radius:2px}
.transparencysection .sectionheader p{font-size:1.15rem;color:#555;max-width:680px;margin:0 auto;line-height:1.7}
.gridcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:32px}
.gridcards .card{background:#fff;border:1px solid #e8e8e8;border-radius:8px;padding:36px 28px;transition:all .3s ease;position:relative;box-shadow:0 2px 8px #0000000f}
.gridcards .card::before{content:'';position:absolute;top:0;left:0;width:4px;height:0;background:linear-gradient(180deg,#CA77CB,#01867A);border-radius:8px 0 0 8px;transition:height .3s ease}
.gridcards .card:hover::before{height:100%}
.gridcards .card:hover{transform:translateY(-4px);box-shadow:0 6px 20px #0000001a}
.gridcards .card .iconbox{width:56px;height:56px;background:linear-gradient(135deg,#ca77cb26,#01867a26);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.gridcards .card .iconbox i{font-size:1.8rem;color:#01867A}
.gridcards .card h3{font-size:1.5rem;color:#2a2a2a;margin-bottom:14px;font-weight:600}
.gridcards .card p{font-size:1.05rem;color:#666;line-height:1.7;margin-bottom:0}
.qualitysection{background:linear-gradient(135deg,#FBF8E5,#fff);padding:80px 40px;margin-bottom:90px;position:relative;overflow:hidden}
.qualitysection::before{content:'';position:absolute;top:-100px;right:-100px;width:300px;height:300px;background:radial-gradient(circle,#ca77cb1a,transparent);border-radius:50%;z-index:1}
.qualitysection::after{content:'';position:absolute;bottom:-80px;left:-80px;width:250px;height:250px;background:radial-gradient(circle,#01867a14,transparent);border-radius:50%;z-index:1}
.qualitycontainer{max-width:1280px;margin:0 auto;position:relative;z-index:2}
.qualitycontainer .layoutgrid{display:grid;grid-template-columns:1fr 1.3fr;gap:60px;align-items:center}
.qualitycontainer .imageholder{position:relative}
.qualitycontainer .imageholder img{width:100%;height:auto;border-radius:12px;box-shadow:0 8px 24px #0000001f}
.qualitycontainer .imageholder::after{content:'';position:absolute;top:20px;left:20px;right:-20px;bottom:-20px;border:3px solid #CA77CB;border-radius:12px;z-index:-1;opacity:.3}
.qualitycontainer .textcontent h2{font-size:2.2rem;color:#2a2a2a;margin-bottom:24px;font-weight:700;position:relative;padding-left:20px}
.qualitycontainer .textcontent h2::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:5px;background:linear-gradient(180deg,#CA77CB,#01867A);border-radius:3px}
.qualitycontainer .textcontent p{font-size:1.1rem;color:#555;line-height:1.8;margin-bottom:18px}
.qualitycontainer .textcontent .featurelist{list-style:none;padding:0;margin:28px 0}
.qualitycontainer .textcontent .featurelist li{padding:12px 0 12px 36px;position:relative;font-size:1.05rem;color:#444;line-height:1.6}
.qualitycontainer .textcontent .featurelist li::before{content:'✓';position:absolute;left:0;top:12px;width:24px;height:24px;background:linear-gradient(135deg,#CA77CB,#01867A);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem}
.qualitycontainer .textcontent .actionbtn{display:inline-block;margin-top:20px;padding:13px 30px;background:#01867A;color:#fff;text-decoration:none;border-radius:6px;font-weight:600;font-size:1.05rem;transition:all .3s ease;box-shadow:0 4px 12px #01867a40}
.qualitycontainer .textcontent .actionbtn:hover{background:#015f56;transform:translateY(-2px);box-shadow:0 6px 18px #01867a59}
.expertisesection{max-width:1280px;margin:0 auto 80px;padding:0 40px}
.expertisesection .topsection{text-align:center;margin-bottom:50px}
.expertisesection .topsection h2{font-size:2.3rem;color:#2a2a2a;margin-bottom:18px;font-weight:700}
.expertisesection .topsection h2::after{content:'';display:block;width:80px;height:4px;background:linear-gradient(90deg,#CA77CB,#01867A);margin:16px auto 0;border-radius:2px}
.expertisesection .topsection p{font-size:1.15rem;color:#555;max-width:700px;margin:0 auto;line-height:1.7}
.expertisesection .showcasegrid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;margin-bottom:50px}
.expertisesection .showcasecard{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 4px 16px #00000014;transition:all .3s ease}
.expertisesection .showcasecard:hover{transform:scale(1.02);box-shadow:0 8px 24px #0000001f}
.expertisesection .showcasecard .imgwrapper{width:100%;height:240px;overflow:hidden;position:relative}
.expertisesection .showcasecard .imgwrapper::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,transparent,#0000004d);opacity:0;transition:opacity .3s ease}
.expertisesection .showcasecard:hover .imgwrapper::after{opacity:1}
.expertisesection .showcasecard .imgwrapper img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
.expertisesection .showcasecard:hover .imgwrapper img{transform:scale(1.05)}
.expertisesection .showcasecard .cardtext{padding:28px 24px}
.expertisesection .showcasecard .cardtext h3{font-size:1.4rem;color:#2a2a2a;margin-bottom:12px;font-weight:600}
.expertisesection .showcasecard .cardtext p{font-size:1.05rem;color:#666;line-height:1.7;margin-bottom:0}
.expertisesection .statsholder{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:50px 0;border-top:2px solid #e8e8e8;border-bottom:2px solid #e8e8e8}
.expertisesection .statbox{text-align:center;padding:20px;border-radius:8px;background:linear-gradient(135deg,#ca77cb0d,#01867a0d);transition:all .3s ease}
.expertisesection .statbox:hover{background:linear-gradient(135deg,#ca77cb1f,#01867a1f);transform:translateY(-3px)}
.expertisesection .statbox .number{font-size:2.8rem;font-weight:700;color:#CA77CB;margin-bottom:8px;line-height:1}
.expertisesection .statbox .label{font-size:1.05rem;color:#555;font-weight:500}
.expertisesection .bottomcta{text-align:center;margin-top:40px}
.expertisesection .bottomcta .explorelink{display:inline-block;padding:14px 36px;background:transparent;color:#CA77CB;text-decoration:none;border:2px solid #CA77CB;border-radius:6px;font-weight:600;font-size:1.05rem;transition:all .3s ease}
.expertisesection .bottomcta .explorelink:hover{background:#CA77CB;color:#fff}
@media (max-width: 1024px) {
.herocontent .maintitle{font-size:2.6rem}
.qualitycontainer .layoutgrid{grid-template-columns:1fr;gap:40px}
.expertisesection .showcasegrid{grid-template-columns:1fr}
.expertisesection .statsholder{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 768px) {
.titlehero{min-height:420px;margin-bottom:60px}
.herocontent{padding:40px 24px}
.herocontent .maintitle{font-size:2.2rem}
.herocontent .subtitle{font-size:1.15rem}
.herocontent .ctagroup{flex-direction:column}
.herocontent .primarybtn,.herocontent .secondarybtn{width:100%;text-align:center}
.transparencysection{padding:0 24px;margin-bottom:60px}
.transparencysection .sectionheader h2{font-size:2rem}
.gridcards{grid-template-columns:1fr}
.qualitysection{padding:60px 24px;margin-bottom:60px}
.qualitycontainer .textcontent h2{font-size:1.9rem}
.expertisesection{padding:0 24px;margin-bottom:60px}
.expertisesection .topsection h2{font-size:2rem}
.expertisesection .statsholder{grid-template-columns:1fr}
.expertisesection .statbox .number{font-size:2.4rem}
}
.contactpagewrap{max-width:1280px;margin:0 auto;padding:0 20px}
.titleanglezone{position:relative;min-height:420px;background:linear-gradient(135deg,#CA77CB 0%,#01867A 100%);margin:60px 0 80px;overflow:hidden;border-radius:8px;box-shadow:0 4px 12px #ca77cb33}
.titleanglezone::before{content:'';position:absolute;top:-30%;right:-10%;width:500px;height:500px;background:radial-gradient(circle,#fbf8e526 0%,transparent 70%);border-radius:50%}
.titleanglezone::after{content:'';position:absolute;bottom:-20%;left:-5%;width:350px;height:350px;background:radial-gradient(circle,#01867a4d 0%,transparent 60%);border-radius:50%}
.titlecontent{position:relative;z-index:2;padding:80px 60px;max-width:650px}
.titlecontent h1{font-size:3.2rem;color:#FBF8E5;font-weight:700;line-height:1.2;margin:0;text-shadow:0 2px 8px #00000026}
.contactgridlayout{display:grid;grid-template-columns:1fr 1.4fr;gap:60px;margin-bottom:100px;align-items:start}
.infosidebar{background:#fff;padding:50px 40px;border-radius:10px;box-shadow:0 3px 10px #00000014}
.infosidebar h2{font-size:1.8rem;color:#01867A;margin:0 0 35px;font-weight:600}
.contactitem{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #e8e8e8}
.contactitem:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.contactitem h3{font-size:1.1rem;color:#CA77CB;margin:0 0 10px;font-weight:600;display:flex;align-items:center;gap:8px}
.contactitem h3::before{content:'';display:inline-block;width:6px;height:6px;background:#CA77CB;border-radius:50%}
.contactitem p{margin:0;color:#333;font-size:1rem;line-height:1.6}
.contactitem a{color:#01867A;text-decoration:none;transition:color .2s}
.contactitem a:hover{color:#CA77CB}
.formarea{background:#fff;padding:50px 45px;border-radius:10px;box-shadow:0 3px 10px #00000014}
.formarea h2{font-size:2rem;color:#01867A;margin:0 0 15px;font-weight:600}
.formdesc{color:#555;font-size:1.05rem;line-height:1.6;margin:0 0 40px}
.inputgroup{margin-bottom:28px}
.inputgroup label{display:block;font-size:1rem;color:#333;font-weight:500;margin-bottom:8px}
.inputgroup input[type="email"],.inputgroup select{width:100%;padding:14px 16px;font-size:1rem;border:2px solid #e0e0e0;border-radius:6px;background:#fff;transition:border-color 0.2s,box-shadow .2s;box-sizing:border-box}
.inputgroup input[type="email"]:focus,.inputgroup select:focus{outline:none;border-color:#CA77CB;box-shadow:0 0 0 3px #ca77cb1a}
.inputgroup select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg width='12' height='8' viewBox='0 0 12 8' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L6 6L11 1' stroke='%2301867A' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;padding-right:45px}
.privacybox{margin:35px 0 30px;padding:18px;background:#FBF8E5;border-radius:6px;border:1px solid #e8dfc0}
.privacybox input[type="checkbox"]{margin-right:10px;width:18px;height:18px;cursor:pointer;vertical-align:middle}
.privacybox label{display:inline;font-size:.95rem;color:#333;line-height:1.5;cursor:pointer;vertical-align:middle}
.privacybox a{color:#01867A;text-decoration:underline;transition:color .2s}
.privacybox a:hover{color:#CA77CB}
.submitbtn{background:linear-gradient(135deg,#CA77CB 0%,#01867A 100%);color:#fff;font-size:1.1rem;font-weight:600;padding:16px 50px;border:none;border-radius:8px;cursor:pointer;transition:transform 0.2s,box-shadow .2s;box-shadow:0 4px 12px #ca77cb4d;position:relative;z-index:10}
.submitbtn:hover{transform:translateY(-2px);box-shadow:0 6px 18px #ca77cb66}
.submitbtn:active{transform:translateY(0)}
.hoursblock{background:linear-gradient(135deg,#ca77cb14 0%,#01867a14 100%);padding:45px;border-radius:10px;margin-bottom:80px;text-align:center}
.hoursblock h2{font-size:1.9rem;color:#01867A;margin:0 0 25px;font-weight:600}
.hoursblock p{font-size:1.15rem;color:#333;margin:0;line-height:1.7}
.hoursblock p strong{color:#CA77CB;font-weight:600}
@media (max-width: 968px) {
.contactgridlayout{grid-template-columns:1fr;gap:40px}
.titlecontent{padding:60px 40px}
.titlecontent h1{font-size:2.5rem}
}
@media (max-width: 640px) {
.titleanglezone{min-height:320px;margin:40px 0 60px}
.titlecontent{padding:50px 30px}
.titlecontent h1{font-size:2rem}
.infosidebar,.formarea{padding:35px 25px}
.formarea h2{font-size:1.7rem}
.infosidebar h2{font-size:1.5rem}
.hoursblock{padding:35px 25px}
.submitbtn{width:100%;padding:16px 30px}
}
.titlezone{background:linear-gradient(135deg,#FBF8E5 0%,#f5f0dc 100%);padding:80px 20px;position:relative;overflow:hidden}
.titlezone::before{content:'';position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,#ca77cb14 0%,transparent 70%);border-radius:50%}
.titlezone::after{content:'';position:absolute;bottom:-30%;left:-5%;width:400px;height:400px;background:radial-gradient(circle,#01867a0f 0%,transparent 70%);border-radius:50%}
.titlecontent{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.2fr 0.8fr;gap:60px;align-items:center;position:relative;z-index:2}
.titletext h1{font-size:48px;line-height:1.2;margin:0 0 24px;color:#1a1a1a;position:relative}
.titletext h1::before{content:'';position:absolute;left:-8px;top:8px;width:4px;height:70%;background:linear-gradient(180deg,#CA77CB 0%,#01867A 100%);border-radius:2px}
.titletext p{font-size:18px;line-height:1.7;color:#444;margin:0 0 16px}
.titletext .highlight{color:#01867A;font-weight:600}
.titleimage{position:relative}
.titleimage img{width:100%;height:380px;object-fit:cover;border-radius:8px;box-shadow:0 8px 24px #0000001f;transform:rotate(-2deg);transition:transform .3s ease}
.titleimage img:hover{transform:rotate(0deg) scale(1.02)}
.titleimage::before{content:'';position:absolute;top:-12px;left:-12px;right:12px;bottom:12px;border:2px solid #CA77CB;border-radius:8px;z-index:-1}
.programstructure{background:#fff;padding:90px 20px;position:relative}
.programstructure::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent 0%,#CA77CB 20%,#01867A 80%,transparent 100%)}
.structurewrap{max-width:1280px;margin:0 auto}
.structurewrap h2{font-size:38px;text-align:center;margin:0 0 60px;color:#1a1a1a;position:relative;display:inline-block;left:50%;transform:translateX(-50%)}
.structurewrap h2::after{content:'';position:absolute;bottom:-12px;left:50%;transform:translateX(-50%);width:80px;height:3px;background:linear-gradient(90deg,#CA77CB 0%,#01867A 100%)}
.phasegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.phasecard{background:#FBF8E5;border-radius:6px;padding:32px 28px;position:relative;transition:all .3s ease;border:2px solid transparent}
.phasecard:hover{border-color:#CA77CB;transform:translateY(-4px);box-shadow:0 6px 20px #ca77cb26}
.phasenumber{position:absolute;top:-18px;left:24px;width:42px;height:42px;background:linear-gradient(135deg,#CA77CB 0%,#01867A 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#fff;box-shadow:0 4px 12px #00000026}
.phasecard h3{font-size:22px;margin:12px 0 16px;color:#1a1a1a}
.phasecard p{font-size:15px;line-height:1.6;color:#555;margin:0 0 20px}
.topicslist{list-style:none;margin:0;padding:0}
.topicslist li{font-size:14px;color:#666;margin:0 0 10px;padding-left:24px;position:relative}
.topicslist li::before{content:'';position:absolute;left:0;top:6px;width:12px;height:2px;background:#01867A}
.enrollmentsection{background:linear-gradient(160deg,#FBF8E5 0%,#fff 100%);padding:100px 20px;position:relative}
.enrollwrap{max-width:1280px;margin:0 auto;display:flex;align-items:stretch;gap:0}
.enrollvisual{flex:0 0 45%;position:relative}
.enrollvisual img{width:100%;height:100%;object-fit:cover;border-radius:8px 0 0 8px;box-shadow:-4px 0 16px #00000014}
.enrollcontent{flex:1;background:#fff;padding:56px 48px;border-radius:0 8px 8px 0;box-shadow:4px 0 16px #00000014;display:flex;flex-direction:column;justify-content:center}
.enrollcontent h2{font-size:36px;margin:0 0 20px;color:#1a1a1a}
.enrollcontent p{font-size:17px;line-height:1.7;color:#444;margin:0 0 32px}
.benefitsrow{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin:0 0 36px}
.benefititem{display:flex;align-items:flex-start;gap:12px}
.benefiticon{width:28px;height:28px;flex-shrink:0;margin-top:2px}
.benefiticon svg{width:100%;height:100%}
.benefititem span{font-size:15px;color:#555;line-height:1.5}
.ctabuttons{display:flex;gap:16px;flex-wrap:wrap}
.btnprimary{display:inline-flex;align-items:center;gap:8px;padding:16px 32px;background:linear-gradient(135deg,#CA77CB 0%,#01867A 100%);color:#fff;text-decoration:none;border-radius:6px;font-size:16px;font-weight:600;transition:all .3s ease;box-shadow:0 4px 12px #ca77cb40;border:none;cursor:pointer}
.btnprimary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ca77cb59}
.btnsecondary{display:inline-flex;align-items:center;gap:8px;padding:16px 32px;background:transparent;color:#01867A;text-decoration:none;border-radius:6px;font-size:16px;font-weight:600;border:2px solid #01867A;transition:all .3s ease;cursor:pointer}
.btnsecondary:hover{background:#01867A;color:#fff;transform:translateY(-2px)}
@media (max-width: 1024px) {
.titlecontent{grid-template-columns:1fr;gap:40px}
.titletext h1{font-size:40px}
.phasegrid{grid-template-columns:repeat(2,1fr);gap:32px}
.enrollwrap{flex-direction:column}
.enrollvisual{flex:0 0 auto;height:320px}
.enrollvisual img{border-radius:8px 8px 0 0}
.enrollcontent{border-radius:0 0 8px 8px;padding:40px 32px}
.benefitsrow{grid-template-columns:1fr}
}
@media (max-width: 768px) {
.titlezone{padding:60px 20px}
.titletext h1{font-size:32px;margin-bottom:20px}
.titletext p{font-size:16px}
.titleimage img{height:280px}
.programstructure{padding:60px 20px}
.structurewrap h2{font-size:30px;margin-bottom:40px}
.phasegrid{grid-template-columns:1fr;gap:28px}
.phasecard{padding:28px 24px}
.enrollmentsection{padding:60px 20px}
.enrollcontent h2{font-size:28px}
.enrollcontent p{font-size:16px}
.ctabuttons{flex-direction:column}
.btnprimary,.btnsecondary{width:100%;justify-content:center}
}
.titleblock{max-width:1280px;margin:0 auto;padding:80px 20px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;position:relative}
.titleblock::before{content:'';position:absolute;top:40px;left:40px;width:30px;height:30px;background-image:radial-gradient(circle,#CA77CB 2px,transparent 2px);background-size:8px 8px}
.titleblock::after{content:'';position:absolute;bottom:40px;right:40px;width:30px;height:30px;background-image:radial-gradient(circle,#01867A 2px,transparent 2px);background-size:8px 8px}
.titleblock .textcontent h1{font-size:48px;line-height:1.2;color:#1a1a1a;margin:0 0 24px;font-weight:700}
.titleblock .textcontent .quote{font-size:20px;line-height:1.6;color:#4a4a4a;border-left:4px solid #CA77CB;padding-left:20px;margin:0}
.titleblock .imageholder{position:relative}
.titleblock .imageholder img{width:100%;height:420px;object-fit:cover;border-radius:8px;filter:contrast(1.05) grayscale(0.1)}
.resourcegrid{background:linear-gradient(135deg,#FBF8E5 0%,#f5f0d8 100%);padding:100px 20px}
.resourcegrid .gridwrapper{max-width:1280px;margin:0 auto}
.resourcegrid h2{font-size:36px;color:#1a1a1a;margin:0 0 50px;text-align:center;position:relative}
.resourcegrid h2::after{content:'';position:absolute;bottom:-15px;left:50%;transform:translateX(-50%);width:80px;height:3px;background:linear-gradient(90deg,#CA77CB,#01867A)}
.resourcegrid .cardlayout{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.resourcegrid .materialcard{background:#fff;border-radius:6px;padding:32px;box-shadow:0 3px 10px #00000014;transition:transform 0.3s,box-shadow .3s;position:relative;z-index:1}
.resourcegrid .materialcard:hover{transform:translateY(-5px);box-shadow:0 6px 18px #0000001f;z-index:2}
.resourcegrid .materialcard h3{font-size:22px;color:#1a1a1a;margin:0 0 16px;font-weight:600}
.resourcegrid .materialcard .description{font-size:15px;line-height:1.6;color:#555;margin:0 0 20px}
.resourcegrid .materialcard .metainfo{display:flex;flex-direction:row;gap:16px;font-size:13px;color:#777}
.resourcegrid .materialcard .metainfo span{display:flex;align-items:center;gap:6px}
.resourcegrid .materialcard .metainfo span::before{content:'';width:4px;height:4px;background:#CA77CB;border-radius:50%}
.accesssection{padding:80px 20px;background:#fff}
.accesssection .contentwrap{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:40% 60%;gap:70px;align-items:start}
.accesssection .leftside h2{font-size:34px;color:#1a1a1a;margin:0 0 24px;font-weight:700}
.accesssection .leftside p{font-size:16px;line-height:1.7;color:#4a4a4a;margin:0 0 16px}
.accesssection .leftside .actionbtn{display:inline-block;background:linear-gradient(135deg,#CA77CB,#01867A);color:#fff;padding:14px 32px;border-radius:6px;font-size:16px;font-weight:600;text-decoration:none;margin-top:20px;transition:transform 0.2s,box-shadow .2s;z-index:5;position:relative}
.accesssection .leftside .actionbtn:hover{transform:scale(1.05);box-shadow:0 5px 15px #ca77cb66}
.accesssection .rightside img{width:100%;height:400px;object-fit:cover;border-radius:8px;box-shadow:0 4px 12px #0000001a}
.progresspath{background:linear-gradient(180deg,#f8f8f8 0%,#fff 100%);padding:90px 20px}
.progresspath .pathcontainer{max-width:1280px;margin:0 auto}
.progresspath h2{font-size:36px;color:#1a1a1a;margin:0 0 60px;text-align:center;font-weight:700}
.progresspath .stepgrid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative}
.progresspath .stepgrid::before{content:'';position:absolute;top:35px;left:12%;width:76%;height:2px;background:linear-gradient(90deg,#CA77CB 0%,#01867A 100%);z-index:0}
.progresspath .stepitem{background:#fff;border:2px solid #e5e5e5;border-radius:8px;padding:28px 20px;position:relative;z-index:1;transition:border-color .3s}
.progresspath .stepitem:hover{border-color:#CA77CB}
.progresspath .stepitem .stepnumber{width:50px;height:50px;background:linear-gradient(135deg,#CA77CB,#01867A);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:22px;font-weight:700;margin:0 auto 18px}
.progresspath .stepitem h3{font-size:18px;color:#1a1a1a;margin:0 0 12px;text-align:center;font-weight:600}
.progresspath .stepitem p{font-size:14px;line-height:1.5;color:#555;margin:0;text-align:center}
@media (max-width: 1024px) {
.titleblock{grid-template-columns:1fr;gap:40px;padding:60px 20px}
.titleblock .textcontent h1{font-size:38px}
.resourcegrid .cardlayout{grid-template-columns:repeat(2,1fr)}
.accesssection .contentwrap{grid-template-columns:1fr;gap:40px}
.progresspath .stepgrid{grid-template-columns:repeat(2,1fr)}
.progresspath .stepgrid::before{display:none}
}
@media (max-width: 768px) {
.titleblock .textcontent h1{font-size:32px}
.titleblock .textcontent .quote{font-size:18px}
.resourcegrid{padding:70px 20px}
.resourcegrid h2{font-size:28px}
.resourcegrid .cardlayout{grid-template-columns:1fr}
.accesssection{padding:60px 20px}
.accesssection .leftside h2{font-size:28px}
.progresspath{padding:70px 20px}
.progresspath h2{font-size:28px}
.progresspath .stepgrid{grid-template-columns:1fr}
}
.successwrap{max-width:1280px;margin:0 auto;padding:80px 20px}
.successcontent{display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}
.successcontent::before{content:'';position:absolute;top:-40px;left:50%;transform:translateX(-50%);width:300px;height:300px;background:radial-gradient(circle,#ca77cb26 0%,transparent 70%);border-radius:50%;z-index:-1}
.successcontent::after{content:'';position:absolute;bottom:-60px;right:10%;width:200px;height:200px;background:radial-gradient(circle,#01867a1f 0%,transparent 70%);border-radius:50%;z-index:-1}
.iconholder{width:120px;height:120px;margin-bottom:32px;position:relative}
.iconholder svg{width:100%;height:100%;filter:drop-shadow(0 4px 12px #ca77cb40)}
.iconholder::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:140px;height:140px;background:linear-gradient(135deg,#CA77CB 0%,#01867A 100%);opacity:.08;border-radius:50%;animation:pulsering 3s ease-in-out infinite}
@keyframes pulsering {
0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.08}
50%{transform:translate(-50%,-50%) scale(1.15);opacity:.12}
}
.successhead{font-size:42px;font-weight:700;line-height:1.2;margin:0 0 20px;color:#1a1a1a;position:relative}
.successhead::after{content:'';position:absolute;bottom:-10px;left:50%;transform:translateX(-50%);width:80px;height:4px;background:linear-gradient(90deg,#CA77CB 0%,#01867A 100%);border-radius:2px}
.successtext{font-size:18px;line-height:1.6;color:#4a4a4a;margin:30px 0 0;max-width:600px}
.successtext strong{color:#01867A;font-weight:600}
.detailblock{background:linear-gradient(135deg,#fbf8e599 0%,#ca77cb14 100%);border:2px solid #ca77cb33;border-radius:12px;padding:28px 32px;margin-top:48px;max-width:700px;width:100%;box-shadow:0 4px 8px #0000000f}
.detailblock p{font-size:16px;line-height:1.7;color:#2a2a2a;margin:0 0 16px}
.detailblock p:last-child{margin-bottom:0}
.detailblock a{color:#01867A;text-decoration:none;font-weight:600;border-bottom:2px solid transparent;transition:border-color .3s ease}
.detailblock a:hover{border-bottom-color:#01867A}
.actionholder{margin-top:44px;display:flex;gap:16px;flex-wrap:wrap;justify-content:center}
.btnprimary{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:linear-gradient(135deg,#CA77CB 0%,#01867A 100%);color:#fff;text-decoration:none;border-radius:8px;font-size:16px;font-weight:600;box-shadow:0 4px 12px #ca77cb4d;transition:transform .2s ease,box-shadow .2s ease;z-index:10;position:relative}
.btnprimary:hover{transform:translateY(-2px);box-shadow:0 6px 16px #ca77cb66}
.btnprimary:active{transform:translateY(0)}
.btnsecondary{display:inline-flex;align-items:center;gap:8px;padding:14px 32px;background:#fff;color:#01867A;text-decoration:none;border-radius:8px;font-size:16px;font-weight:600;border:2px solid #01867A;box-shadow:0 2px 6px #00000014;transition:background .3s ease,color .3s ease;z-index:10;position:relative}
.btnsecondary:hover{background:#01867A;color:#fff}
.decorline{position:absolute;width:400px;height:2px;background:linear-gradient(90deg,transparent 0%,#CA77CB 50%,transparent 100%);opacity:.3;top:20%;left:-100px;transform:rotate(-15deg);z-index:-2}
.decorcurve{position:absolute;width:350px;height:350px;border:2px solid #01867a26;border-radius:50%;bottom:-80px;right:-120px;z-index:-2}
@media (max-width: 768px) {
.successwrap{padding:60px 16px}
.successhead{font-size:32px}
.successtext{font-size:16px}
.iconholder{width:100px;height:100px}
.detailblock{padding:24px 20px}
.actionholder{flex-direction:column;align-items:stretch}
.btnprimary,.btnsecondary{width:100%;justify-content:center}
.decorline,.decorcurve{display:none}
}
@media (max-width: 480px) {
.successhead{font-size:28px}
.successtext{font-size:15px}
.detailblock p{font-size:15px}
}