@import "https://fonts.googleapis.com/css2?family=Public+Sans:wght@400;700&display=swap";
@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Serif:wght@400;700&display=swap";
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Public Sans',sans-serif;line-height:1.6;color:#1a1a1a;background:#FDF9F8}
h1,h2,h3,h4,h5,h6{font-family:'IBM Plex Serif',serif}
.page-header{background:linear-gradient(135deg,#FDF9F8 0%,#fff 100%);border-bottom:1px solid #2e5a561a;padding:25px 0 20px}
.header-top-row{max-width:1024px;margin:0 auto;padding:0 20px;text-align:center;margin-bottom:35px}
.brand-title{font-size:42px;font-weight:700;color:#CE1393;margin-bottom:8px;font-family:'IBM Plex Serif',serif}
.brand-tagline{font-size:16px;color:#2E5A56;font-weight:400}
.header-bottom-row{max-width:1024px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center}
.site-logo-wrapper{display:flex;align-items:center}
.site-logo-wrapper img{height:90px;width:90px;object-fit:contain}
.main-nav ul{list-style:none;display:flex;gap:35px;align-items:center}
.main-nav a{text-decoration:none;color:#2E5A56;font-size:15px;font-weight:600;transition:color .3s ease;padding:8px 0}
.main-nav a:hover{color:#CE1393}
.page-footer{background:linear-gradient(180deg,#2E5A56 0%,#1f3d3a 100%);color:#FDF9F8;padding:50px 20px 30px;margin-top:80px}
.footer-container{max-width:1024px;margin:0 auto}
.footer-content{display:flex;flex-wrap:wrap;gap:50px;margin-bottom:40px}
.footer-column{flex:1;min-width:220px}
.footer-column h3{font-size:18px;margin-bottom:18px;color:#FDF9F8;font-weight:700}
.footer-column p,.footer-column a{font-size:14px;line-height:1.8;color:#fdf9f8d9}
.footer-column a{text-decoration:none;display:block;margin-bottom:10px;transition:color .3s ease}
.footer-column a:hover{color:#CE1393}
.footer-contact-item{margin-bottom:12px;display:flex;align-items:flex-start;gap:10px}
.footer-contact-item i{color:#CE1393;margin-top:4px}
.footer-bottom{border-top:1px solid #fdf9f833;padding-top:25px;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px}
.footer-copyright{font-size:13px;color:#fdf9f8b3}
.footer-legal-links{display:flex;gap:25px;list-style:none}
.footer-legal-links a{font-size:13px;color:#fdf9f8b3;text-decoration:none;transition:color .3s ease}
.footer-legal-links a:hover{color:#CE1393}
.consent-popup{position:fixed;right:-100%;top:50%;transform:translateY(-50%);width:100%;max-width:420px;background:#fff;box-shadow:-4px 0 24px #00000026;z-index:9999;transition:right .5s ease;border-radius:6px 0 0 6px}
.consent-popup.is-visible{right:0}
.consent-popup.is-hidden{right:-100%}
.consent-tabs{display:flex;border-bottom:2px solid #f0f0f0}
.consent-tab-btn{flex:1;padding:16px;background:transparent;border:none;cursor:pointer;font-size:14px;font-weight:600;color:#666;transition:background .3s ease,color .3s ease}
.consent-tab-btn.is-active{color:#CE1393;background:#FDF9F8}
.consent-tab-content{display:none;padding:24px}
.consent-tab-content.is-active{display:block}
.consent-tab-content h3{font-size:19px;margin-bottom:14px;color:#2E5A56}
.consent-tab-content p{font-size:14px;line-height:1.7;color:#444;margin-bottom:12px}
.consent-actions{display:flex;gap:12px;margin-top:22px}
.consent-btn{flex:1;padding:13px 20px;border:none;border-radius:50px;font-size:14px;font-weight:600;cursor:pointer;transition:background .3s ease,transform .2s ease}
.consent-btn:hover{transform:translateY(-2px)}
.consent-btn-accept{background:linear-gradient(135deg,#CE1393 0%,#a00f75 100%);color:#fff}
.consent-btn-decline{background:#2E5A56;color:#fff}
@media (max-width: 768px) {
.brand-title{font-size:32px}
.brand-tagline{font-size:14px}
.header-bottom-row{flex-direction:column;gap:25px}
.site-logo-wrapper img{height:70px;width:70px}
.main-nav ul{flex-wrap:wrap;justify-content:center;gap:20px}
.footer-content{flex-direction:column;gap:35px}
.footer-bottom{flex-direction:column;text-align:center}
.footer-legal-links{flex-direction:column;gap:12px}
.consent-popup{max-width:100%;border-radius:0}
}
@media (max-width: 480px) {
.main-nav ul{flex-direction:column;gap:15px}
.consent-actions{flex-direction:column}
}
.content-doc-gse{max-width:1024px;margin:0 auto;padding:80px 24px;background:#FDF9F8}
.content-doc-gse h1{font-size:42px;line-height:1.2;color:#2E5A56;margin:0 0 16px;font-weight:700}
.content-doc-gse h2{font-size:32px;line-height:1.3;color:#2E5A56;margin:48px 0 20px;font-weight:600}
.content-doc-gse h3{font-size:24px;line-height:1.4;color:#CE1393;margin:36px 0 16px;font-weight:600}
.content-doc-gse h4{font-size:20px;line-height:1.4;color:#2E5A56;margin:28px 0 12px;font-weight:600}
.content-doc-gse h5{font-size:18px;line-height:1.5;color:#2E5A56;margin:24px 0 12px;font-weight:600}
.content-doc-gse h6{font-size:16px;line-height:1.5;color:#2E5A56;margin:20px 0 10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}
.content-doc-gse p{font-size:16px;line-height:1.8;color:#1a1a1a;margin:0 0 20px}
.content-doc-gse ul{margin:0 0 24px;padding:0 0 0 24px;list-style-type:disc}
.content-doc-gse ol{margin:0 0 24px;padding:0 0 0 24px;list-style-type:decimal}
.content-doc-gse li{font-size:16px;line-height:1.8;color:#1a1a1a;margin:0 0 12px;padding-left:8px}
.content-doc-gse ul li{list-style-type:disc}
.content-doc-gse ol li{list-style-type:decimal}
.content-doc-gse li ul{margin:12px 0 0;padding-left:24px}
.content-doc-gse li ol{margin:12px 0 0;padding-left:24px}
.content-doc-gse li ul li{list-style-type:circle}
.content-doc-gse li ol li{list-style-type:lower-alpha}
.content-doc-gse em{font-style:italic;color:#2E5A56}
.content-doc-gse i{font-style:italic;color:#2E5A56}
.content-doc-gse a{color:#CE1393;text-decoration:underline;transition:color .3s ease}
.content-doc-gse a:hover{color:#2E5A56;text-decoration:none}
.content-doc-gse a:focus{outline:2px solid #CE1393;outline-offset:2px}
.content-doc-gse hr{border:0;height:2px;background:linear-gradient(to right,#CE1393,#2E5A56);margin:48px 0;opacity:.3}
.content-doc-gse div{margin:0 0 20px}
.content-doc-gse h1 + p{font-size:18px;color:#4a4a4a;margin-bottom:32px}
.content-doc-gse strong{font-weight:600;color:#2E5A56}
.content-doc-gse b{font-weight:600;color:#2E5A56}
@media (max-width: 768px) {
.content-doc-gse{padding:60px 20px}
.content-doc-gse h1{font-size:32px;margin-bottom:12px}
.content-doc-gse h2{font-size:26px;margin:36px 0 16px}
.content-doc-gse h3{font-size:22px;margin:28px 0 14px}
.content-doc-gse h4{font-size:19px;margin:24px 0 12px}
.content-doc-gse h5{font-size:17px;margin:20px 0 10px}
.content-doc-gse h6{font-size:15px;margin:18px 0 10px}
.content-doc-gse p{font-size:15px;line-height:1.7;margin-bottom:18px}
.content-doc-gse li{font-size:15px;line-height:1.7}
.content-doc-gse ul{padding-left:20px;margin-bottom:20px}
.content-doc-gse ol{padding-left:20px;margin-bottom:20px}
.content-doc-gse hr{margin:36px 0}
.content-doc-gse h1 + p{font-size:16px;margin-bottom:24px}
}
@media (max-width: 480px) {
.content-doc-gse{padding:48px 16px}
.content-doc-gse h1{font-size:28px}
.content-doc-gse h2{font-size:24px;margin:32px 0 14px}
.content-doc-gse h3{font-size:20px;margin:24px 0 12px}
.content-doc-gse p{font-size:15px;margin-bottom:16px}
.content-doc-gse li{font-size:15px;margin-bottom:10px}
.content-doc-gse ul{padding-left:18px;margin-bottom:18px}
.content-doc-gse ol{padding-left:18px;margin-bottom:18px}
.content-doc-gse hr{margin:32px 0}
}
.hero-stage{position:relative;min-height:540px;display:flex;align-items:center;background:linear-gradient(135deg,#2E5A56 0%,#CE1393 100%);overflow:hidden;padding:60px 20px}
.hero-stage::before{content:'';position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,#fdf9f81a 0%,transparent 70%);animation:pulse-float 8s ease-in-out infinite}
@keyframes pulse-float {
0%,100%{transform:translate(0,0) scale(1)}
50%{transform:translate(-20px,-30px) scale(1.05)}
}
.hero-stage::after{content:'';position:absolute;bottom:-30%;left:-5%;width:450px;height:450px;background:radial-gradient(circle,#ce139326 0%,transparent 65%);animation:drift-rotate 12s linear infinite}
@keyframes drift-rotate {
0%{transform:rotate(0deg) translate(0,0)}
100%{transform:rotate(360deg) translate(15px,15px)}
}
.hero-content-wrapper{max-width:1024px;margin:0 auto;width:100%;position:relative;z-index:2}
.hero-text-layer{max-width:720px}
.hero-stage .test-layout{display:inline-block;background:#fdf9f833;padding:6px 18px;border-radius:30px;font-size:14px;color:#FDF9F8;margin-bottom:24px;border:1px solid #fdf9f84d}
.hero-stage .main-title{font-size:52px;line-height:1.2;color:#FDF9F8;margin:0 0 20px;font-weight:700}
.hero-stage .subtitle-text{font-size:20px;line-height:1.6;color:#fdf9f8f2;margin:0 0 32px;font-weight:400}
.hero-stage .action-surface{display:inline-block;padding:16px 40px;background:#FDF9F8;color:#2E5A56;text-decoration:none;border-radius:4px;font-weight:600;font-size:16px;transition:all .3s ease;position:relative;z-index:10}
.hero-stage .action-surface:hover{background:#CE1393;color:#FDF9F8;transform:translateY(-2px);box-shadow:0 6px 16px #ce13934d}
.comparison-canvas{max-width:1024px;margin:80px auto;padding:0 20px}
.comparison-canvas .section-heading{font-size:38px;color:#2E5A56;margin:0 0 48px;text-align:center;font-weight:700}
.comparison-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.comparison-card{background:#FDF9F8;border:2px solid #2E5A56;border-radius:6px;padding:32px;position:relative;transition:all .3s ease}
.comparison-card::before{content:'';position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,#CE1393 0%,#2E5A56 100%);border-radius:6px 0 0 6px}
.comparison-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #2e5a5626}
.comparison-card .card-label{font-size:12px;text-transform:uppercase;letter-spacing:1px;color:#CE1393;margin:0 0 12px;font-weight:600}
.comparison-card .card-title{font-size:24px;color:#2E5A56;margin:0 0 16px;font-weight:700}
.comparison-card .card-text{font-size:16px;line-height:1.6;color:#2E5A56;margin:0}
.expectations-frame{background:linear-gradient(to right,#FDF9F8 0%,#ce13930d 100%);padding:80px 20px;margin:60px 0}
.expectations-container{max-width:1024px;margin:0 auto}
.expectations-frame .frame-title{font-size:38px;color:#2E5A56;margin:0 0 20px;font-weight:700}
.expectations-frame .intro-paragraph{font-size:18px;line-height:1.7;color:#2E5A56;margin:0 0 40px}
.reality-list{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.reality-item{background:#FDF9F8;padding:24px;border-radius:4px;border-left:3px solid #CE1393}
.reality-item .item-number{font-size:32px;color:#CE1393;font-weight:700;margin:0 0 12px;line-height:1}
.reality-item .item-heading{font-size:18px;color:#2E5A56;margin:0 0 8px;font-weight:600}
.reality-item .item-description{font-size:15px;line-height:1.6;color:#2E5A56;margin:0}
.mission-surface{max-width:1024px;margin:80px auto;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.mission-text-block .mission-header{font-size:38px;color:#2E5A56;margin:0 0 24px;font-weight:700}
.mission-text-block .mission-body{font-size:16px;line-height:1.7;color:#2E5A56;margin:0 0 16px}
.mission-visual img{width:100%;height:auto;border-radius:6px;box-shadow:0 12px 32px #2e5a5633}
.ecosystem-layer{background:#2E5A56;padding:80px 20px;margin:60px 0}
.ecosystem-wrapper{max-width:1024px;margin:0 auto}
.ecosystem-layer .layer-heading{font-size:38px;color:#FDF9F8;margin:0 0 48px;text-align:center;font-weight:700}
.component-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}
.component-box{background:#fdf9f814;padding:32px;border-radius:4px;border:1px solid #fdf9f826;transition:all .3s ease}
.component-box:hover{background:#fdf9f81f;border-color:#CE1393}
.component-box .component-icon{font-size:36px;color:#CE1393;margin:0 0 16px}
.component-box .component-name{font-size:20px;color:#FDF9F8;margin:0 0 12px;font-weight:600}
.component-box .component-info{font-size:15px;line-height:1.6;color:#fdf9f8d9;margin:0}
.guarantee-stage{max-width:1024px;margin:80px auto;padding:0 20px}
.guarantee-stage .stage-title{font-size:38px;color:#2E5A56;margin:0 0 48px;text-align:center;font-weight:700}
.policy-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.policy-card{background:linear-gradient(135deg,#FDF9F8 0%,#ce139308 100%);padding:32px;border-radius:6px;border:2px solid #ce139333}
.policy-card .policy-mark{width:48px;height:48px;background:#CE1393;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#FDF9F8;font-size:24px;margin:0 0 20px}
.policy-card .policy-title{font-size:22px;color:#2E5A56;margin:0 0 16px;font-weight:700}
.policy-card .policy-details{font-size:16px;line-height:1.7;color:#2E5A56;margin:0}
.showcase-element{background:linear-gradient(to bottom,#2e5a5608 0%,#FDF9F8 100%);padding:80px 20px;margin:60px 0 0}
.showcase-content{max-width:1024px;margin:0 auto;display:grid;grid-template-columns:1.2fr 1fr;gap:56px;align-items:center}
.showcase-images{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.showcase-images img{width:100%;height:220px;object-fit:cover;border-radius:4px;box-shadow:0 6px 20px #2e5a5626}
.showcase-text .showcase-label{font-size:14px;text-transform:uppercase;letter-spacing:1.2px;color:#CE1393;margin:0 0 16px;font-weight:600}
.showcase-text .showcase-heading{font-size:36px;color:#2E5A56;margin:0 0 20px;font-weight:700;line-height:1.2}
.showcase-text .showcase-paragraph{font-size:16px;line-height:1.7;color:#2E5A56;margin:0 0 28px}
.showcase-text .showcase-link{display:inline-block;padding:14px 32px;background:#2E5A56;color:#FDF9F8;text-decoration:none;border-radius:4px;font-weight:600;transition:all .3s ease;position:relative;z-index:10}
.showcase-text .showcase-link:hover{background:#CE1393;transform:translateY(-2px);box-shadow:0 6px 16px #ce13934d}
@media (max-width: 768px) {
.hero-stage{min-height:420px;padding:40px 20px}
.hero-stage .main-title{font-size:36px}
.hero-stage .subtitle-text{font-size:17px}
.comparison-grid{grid-template-columns:1fr;gap:24px}
.reality-list{grid-template-columns:1fr;gap:20px}
.mission-surface{grid-template-columns:1fr;gap:32px}
.component-grid{grid-template-columns:1fr;gap:24px}
.policy-cards{grid-template-columns:1fr;gap:24px}
.showcase-content{grid-template-columns:1fr;gap:40px}
.showcase-images{grid-template-columns:1fr}
.comparison-canvas .section-heading,.expectations-frame .frame-title,.mission-text-block .mission-header,.ecosystem-layer .layer-heading,.guarantee-stage .stage-title,.showcase-text .showcase-heading{font-size:30px}
}
@media (max-width: 480px) {
.hero-stage .main-title{font-size:28px}
.hero-stage .subtitle-text{font-size:16px}
.comparison-card,.component-box,.policy-card{padding:24px}
}
.hero-reach{position:relative;background:linear-gradient(135deg,#2E5A56 0%,#CE1393 100%);padding:120px 24px 80px;overflow:hidden}
.hero-reach::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 30% 50%,#fdf9f826 0%,transparent 60%);pointer-events:none}
.hero-reach::after{content:'';position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:radial-gradient(circle,#ce13934d 0%,transparent 70%);border-radius:50%;filter:blur(80px)}
.hero-reach .inner-hero{max-width:1024px;margin:0 auto;position:relative;z-index:2}
.hero-reach .title-zone{text-align:center;color:#FDF9F8}
.hero-reach .title-zone h1{font-size:52px;font-weight:700;margin:0 0 20px;line-height:1.2}
.hero-reach .title-zone .subtitle-line{font-size:22px;line-height:1.6;max-width:680px;margin:0 auto;opacity:.95}
.contact-layout{max-width:1024px;margin:0 auto;padding:80px 24px}
.contact-layout .top-segment{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-bottom:80px}
.contact-layout .info-panel h2{font-size:36px;color:#2E5A56;margin:0 0 24px;font-weight:700}
.contact-layout .info-panel .intro-text{font-size:17px;line-height:1.7;color:#333;margin-bottom:40px}
.contact-layout .detail-card{background:#FDF9F8;padding:28px;border-radius:4px;border-left:4px solid #CE1393;margin-bottom:20px}
.contact-layout .detail-card .card-label{font-size:13px;text-transform:uppercase;letter-spacing:1.2px;color:#2E5A56;margin-bottom:8px;font-weight:600}
.contact-layout .detail-card .card-value{font-size:18px;color:#333;line-height:1.5}
.contact-layout .detail-card .card-value a{color:#CE1393;text-decoration:none;transition:color .3s}
.contact-layout .detail-card .card-value a:hover{color:#2E5A56}
.contact-layout .form-panel{background:linear-gradient(135deg,#FDF9F8 0%,#fff 100%);padding:48px;border-radius:6px;box-shadow:0 6px 24px #2e5a561f}
.contact-layout .form-panel h3{font-size:28px;color:#2E5A56;margin:0 0 12px;font-weight:700}
.contact-layout .form-panel .form-intro{font-size:16px;color:#555;margin-bottom:32px;line-height:1.6}
.contact-layout .form-field{margin-bottom:24px}
.contact-layout .form-field label{display:block;font-size:15px;color:#2E5A56;margin-bottom:8px;font-weight:600}
.contact-layout .form-field input[type="text"],.contact-layout .form-field input[type="email"],.contact-layout .form-field textarea{width:100%;padding:14px 16px;border:2px solid #e0e0e0;border-radius:4px;font-size:16px;transition:border-color 0.3s,box-shadow .3s;background:#fff}
.contact-layout .form-field input[type="text"]:focus,.contact-layout .form-field input[type="email"]:focus,.contact-layout .form-field textarea:focus{outline:none;border-color:#CE1393;box-shadow:0 0 0 3px #ce13931a}
.contact-layout .form-field textarea{min-height:140px;resize:vertical}
.contact-layout .radio-group{margin-bottom:28px}
.contact-layout .radio-group .group-label{font-size:15px;color:#2E5A56;margin-bottom:12px;font-weight:600;display:block}
.contact-layout .radio-options{display:flex;flex-direction:column;gap:12px}
.contact-layout .radio-item{display:flex;align-items:center}
.contact-layout .radio-item input[type="radio"]{margin-right:10px;width:18px;height:18px;cursor:pointer}
.contact-layout .radio-item label{font-size:15px;color:#333;cursor:pointer;margin:0}
.contact-layout .privacy-check{margin-bottom:28px;display:flex;align-items:flex-start}
.contact-layout .privacy-check input[type="checkbox"]{margin-right:10px;width:18px;height:18px;cursor:pointer;flex-shrink:0;margin-top:2px}
.contact-layout .privacy-check label{font-size:14px;color:#555;line-height:1.5;cursor:pointer}
.contact-layout .privacy-check label a{color:#CE1393;text-decoration:none}
.contact-layout .privacy-check label a:hover{text-decoration:underline}
.contact-layout .submit-action{text-align:left}
.contact-layout .submit-action button{background:linear-gradient(135deg,#CE1393 0%,#2E5A56 100%);color:#FDF9F8;font-size:17px;font-weight:600;padding:16px 48px;border:none;border-radius:4px;cursor:pointer;transition:transform 0.2s,box-shadow .3s;box-shadow:0 4px 12px #ce13934d}
.contact-layout .submit-action button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ce139366}
.contact-layout .submit-action button:active{transform:translateY(0)}
.hours-section{background:#2E5A56;padding:80px 24px;position:relative;overflow:hidden}
.hours-section::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,#CE1393 50%,transparent 100%)}
.hours-section .hours-container{max-width:1024px;margin:0 auto;text-align:center}
.hours-section h2{font-size:38px;color:#FDF9F8;margin:0 0 16px;font-weight:700}
.hours-section .hours-note{font-size:18px;color:#fdf9f8e6;margin-bottom:48px;line-height:1.6}
.hours-section .hours-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}
.hours-section .hour-item{background:#fdf9f814;padding:24px;border-radius:4px;border:1px solid #fdf9f826;transition:background .3s}
.hours-section .hour-item:hover{background:#fdf9f81f}
.hours-section .hour-item .channel-name{font-size:15px;text-transform:uppercase;letter-spacing:1.4px;color:#CE1393;margin-bottom:12px;font-weight:600}
.hours-section .hour-item .channel-info{font-size:17px;color:#FDF9F8;line-height:1.5}
.faq-zone{max-width:1024px;margin:0 auto;padding:80px 24px}
.faq-zone h2{font-size:38px;color:#2E5A56;margin:0 0 48px;font-weight:700;text-align:center}
.faq-zone .faq-list{display:flex;flex-direction:column;gap:16px}
.faq-zone .faq-list input[type="checkbox"]{display:none}
.faq-zone .faq-item{border:2px solid #e0e0e0;border-radius:4px;overflow:hidden;transition:border-color .3s}
.faq-zone .faq-item:hover{border-color:#CE1393}
.faq-zone .faq-question{display:block;padding:20px 24px;font-size:18px;color:#2E5A56;font-weight:600;cursor:pointer;background:#FDF9F8;position:relative;transition:background .3s}
.faq-zone .faq-question::after{content:'+';position:absolute;right:24px;top:50%;transform:translateY(-50%);font-size:28px;color:#CE1393;transition:transform .3s}
.faq-zone .faq-list input[type="checkbox"]:checked + .faq-question{background:linear-gradient(135deg,#FDF9F8 0%,#fff 100%)}
.faq-zone .faq-list input[type="checkbox"]:checked + .faq-question::after{content:'−';transform:translateY(-50%) rotate(180deg)}
.faq-zone .faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease-out,padding .4s ease-out;background:#fff}
.faq-zone .faq-list input[type="checkbox"]:checked ~ .faq-answer{max-height:500px;padding:20px 24px}
.faq-zone .faq-answer p{font-size:16px;color:#555;line-height:1.7;margin:0}
.directions-block{background:linear-gradient(135deg,#FDF9F8 0%,#fff 100%);padding:80px 24px}
.directions-block .directions-inner{max-width:1024px;margin:0 auto;text-align:center}
.directions-block h2{font-size:36px;color:#2E5A56;margin:0 0 24px;font-weight:700}
.directions-block .directions-text{font-size:17px;color:#555;line-height:1.7;margin-bottom:40px;max-width:700px;margin-left:auto;margin-right:auto}
.directions-block .address-display{background:#fff;padding:32px;border-radius:4px;box-shadow:0 4px 16px #2e5a561a;max-width:500px;margin:0 auto;border-left:4px solid #CE1393}
.directions-block .address-display .address-label{font-size:14px;text-transform:uppercase;letter-spacing:1.2px;color:#2E5A56;margin-bottom:12px;font-weight:600}
.directions-block .address-display .address-content{font-size:18px;color:#333;line-height:1.6}
@media (max-width: 768px) {
.hero-reach{padding:80px 20px 60px}
.hero-reach .title-zone h1{font-size:36px}
.hero-reach .title-zone .subtitle-line{font-size:18px}
.contact-layout{padding:60px 20px}
.contact-layout .top-segment{grid-template-columns:1fr;gap:40px;margin-bottom:60px}
.contact-layout .info-panel h2{font-size:28px}
.contact-layout .form-panel{padding:32px 24px}
.contact-layout .form-panel h3{font-size:24px}
.hours-section{padding:60px 20px}
.hours-section h2{font-size:30px}
.hours-section .hours-grid{grid-template-columns:1fr}
.faq-zone{padding:60px 20px}
.faq-zone h2{font-size:30px}
.directions-block{padding:60px 20px}
.directions-block h2{font-size:28px}
.contact-layout .submit-action button{width:100%}
}
@media (min-width: 769px) and (max-width: 1024px) {
.hero-reach .title-zone h1{font-size:44px}
.contact-layout .top-segment{gap:48px}
}
.stage{max-width:1024px;margin:0 auto;padding:0 20px}
.hero-intro{position:relative;padding:80px 0;overflow:hidden;background:linear-gradient(135deg,#CE1393 0%,#2E5A56 100%);animation:shift-bg 8s ease-in-out infinite}
@keyframes shift-bg {
0%,100%{background-position:0 50%}
50%{background-position:100% 50%}
}
.hero-intro::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,#fdf9f81a 0%,transparent 70%);animation:slow-rotate 20s linear infinite}
@keyframes slow-rotate {
from{transform:rotate(0deg)}
to{transform:rotate(360deg)}
}
.hero-intro .stage{position:relative;z-index:2;display:flex;align-items:center;gap:60px}
.intro-text{flex:1;color:#FDF9F8}
.intro-text h1{font-size:42px;margin:0 0 24px;line-height:1.2;font-weight:700}
.intro-text p{font-size:18px;line-height:1.6;margin:0 0 16px}
.intro-visual{flex:0 0 320px;border-radius:4px;overflow:hidden;box-shadow:0 8px 24px #0000004d}
.intro-visual img{width:100%;height:400px;object-fit:cover;display:block}
.curriculum-grid{padding:80px 0;background:#FDF9F8}
.section-label{text-align:center;margin-bottom:50px}
.section-label h2{font-size:36px;color:#2E5A56;margin:0 0 12px;font-weight:700}
.section-label p{font-size:16px;color:#555;margin:0}
.module-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.module-card{background:#fff;border:2px solid #e0e0e0;border-radius:3px;padding:30px;transition:all .3s ease;position:relative}
.module-card::before{content:'';position:absolute;top:0;left:0;width:4px;height:0;background:linear-gradient(180deg,#CE1393,#2E5A56);transition:height .3s ease}
.module-card:hover{border-color:#CE1393;box-shadow:0 6px 16px #ce139326;transform:translateY(-4px)}
.module-card:hover::before{height:100%}
.module-card h3{font-size:22px;color:#2E5A56;margin:0 0 14px;font-weight:600}
.module-card p{font-size:15px;color:#666;line-height:1.5;margin:0 0 18px}
.module-meta{display:flex;gap:20px;font-size:14px;color:#888}
.module-meta span{display:flex;align-items:center;gap:6px}
.learning-path{padding:80px 0;background:linear-gradient(to bottom,#fff 0%,#FDF9F8 100%)}
.path-wrapper{display:flex;gap:50px;align-items:flex-start}
.path-description{flex:1}
.path-description h2{font-size:34px;color:#2E5A56;margin:0 0 20px;font-weight:700}
.path-description p{font-size:16px;color:#555;line-height:1.6;margin:0 0 14px}
.timeline-track{flex:0 0 400px;position:relative}
.timeline-item{display:flex;gap:20px;margin-bottom:30px;position:relative}
.timeline-item::before{content:'';position:absolute;left:19px;top:40px;width:2px;height:calc(100% + 30px);background:linear-gradient(180deg,#CE1393,#2E5A56);opacity:.3}
.timeline-item:last-child::before{display:none}
.step-marker{flex:0 0 40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#CE1393,#2E5A56);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:16px;position:relative;z-index:2;box-shadow:0 3px 8px #ce13934d}
.step-content h4{font-size:18px;color:#2E5A56;margin:0 0 8px;font-weight:600}
.step-content p{font-size:14px;color:#666;margin:0;line-height:1.5}
.enrollment-zone{padding:80px 0;background:#2E5A56;position:relative;overflow:hidden}
.enrollment-zone::after{content:'';position:absolute;top:50%;right:-100px;width:300px;height:300px;background:radial-gradient(circle,#ce139333,transparent);border-radius:50%}
.enrollment-zone .stage{position:relative;z-index:2}
.enrollment-content{max-width:700px;margin:0 auto;text-align:center;color:#FDF9F8}
.enrollment-content h2{font-size:36px;margin:0 0 20px;font-weight:700}
.enrollment-content p{font-size:17px;line-height:1.6;margin:0 0 14px}
.feature-badges{display:flex;gap:20px;justify-content:center;margin:40px 0}
.badge-item{background:#fdf9f81a;border:1px solid #fdf9f84d;border-radius:3px;padding:16px 24px;font-size:14px;display:flex;align-items:center;gap:10px;transition:background .3s ease}
.badge-item:hover{background:#fdf9f826}
.badge-item i{font-size:20px;color:#CE1393}
.action-link{display:inline-block;background:#CE1393;color:#fff;padding:16px 40px;border-radius:3px;font-size:16px;font-weight:600;text-decoration:none;transition:all .3s ease;box-shadow:0 4px 12px #ce13934d;z-index:10;position:relative}
.action-link:hover{background:#a50f75;box-shadow:0 6px 16px #ce139366;transform:translateY(-2px)}
@media (max-width: 768px) {
.hero-intro .stage{flex-direction:column;gap:40px}
.intro-visual{flex:0 0 auto;width:100%}
.intro-visual img{height:300px}
.intro-text h1{font-size:32px}
.module-list{grid-template-columns:1fr;gap:20px}
.path-wrapper{flex-direction:column;gap:40px}
.timeline-track{flex:0 0 auto;width:100%}
.feature-badges{flex-direction:column;align-items:center}
.badge-item{width:100%;max-width:300px;justify-content:center}
}
@media (max-width: 1024px) and (min-width: 769px) {
.module-list{grid-template-columns:repeat(2,1fr)}
.hero-intro .stage{gap:40px}
.intro-visual{flex:0 0 280px}
}
.title-stage{position:relative;min-height:480px;display:flex;align-items:center;overflow:hidden;margin-bottom:72px}
.title-stage .image-layer{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}
.title-stage .image-layer img{width:100%;height:100%;object-fit:cover;filter:saturate(0.4) brightness(0.7)}
.title-stage .text-float{position:relative;z-index:2;max-width:1024px;width:90%;margin:0 auto;padding:48px 24px}
.title-stage .main-heading{font-size:3.2rem;font-weight:700;color:#FDF9F8;margin:0 0 16px;line-height:1.1;text-shadow:0 2px 12px #0009}
.title-stage .sub-text{font-size:1.3rem;color:#FDF9F8;margin:0;line-height:1.6;text-shadow:0 1px 8px #00000080;max-width:640px}
.title-stage .accent-shape{position:absolute;width:180px;height:180px;border:3px solid #CE1393;border-radius:50%;top:20%;right:8%;opacity:.3;z-index:3}
.story-panel{max-width:1024px;margin:0 auto 96px;padding:0 24px}
.story-panel .intro-text{font-size:1.15rem;line-height:1.75;color:#2E5A56;margin:0 0 24px}
.story-panel .highlight-box{background:linear-gradient(135deg,#ce139314,#2e5a5614);padding:32px;border-radius:4px;border-left:4px solid #CE1393;margin:48px 0}
.story-panel .highlight-box p{font-size:1.1rem;line-height:1.7;color:#2E5A56;margin:0}
.values-grid{max-width:1024px;margin:0 auto 96px;padding:0 24px}
.values-grid .section-label{font-size:.95rem;text-transform:uppercase;letter-spacing:2px;color:#CE1393;margin:0 0 32px;font-weight:600}
.values-grid .grid-layout{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px}
.values-grid .value-card{background:#FDF9F8;padding:36px 28px;border-radius:3px;box-shadow:0 4px 16px #2e5a561a;border-top:3px solid #2E5A56;transition:transform .3s ease,box-shadow .3s ease}
.values-grid .value-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #2e5a5626}
.values-grid .value-card .icon-holder{width:56px;height:56px;background:linear-gradient(135deg,#CE1393,#2E5A56);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px}
.values-grid .value-card .icon-holder i{font-size:1.8rem;color:#FDF9F8}
.values-grid .value-card .card-title{font-size:1.35rem;font-weight:600;color:#2E5A56;margin:0 0 12px}
.values-grid .value-card .card-desc{font-size:1rem;line-height:1.6;color:#2E5A56;margin:0}
.team-showcase{background:linear-gradient(180deg,#FDF9F8 0%,#ce13930d 100%);padding:72px 24px;margin-bottom:96px}
.team-showcase .container-box{max-width:1024px;margin:0 auto}
.team-showcase .heading-text{font-size:2.2rem;font-weight:700;color:#2E5A56;margin:0 0 16px;text-align:center}
.team-showcase .intro-line{font-size:1.1rem;line-height:1.65;color:#2E5A56;margin:0 auto 56px;text-align:center;max-width:720px}
.team-showcase .profiles-row{display:flex;flex-direction:column;gap:48px}
.team-showcase .profile-item{display:flex;flex-direction:row;gap:36px;align-items:flex-start}
.team-showcase .profile-item:nth-child(even){flex-direction:row-reverse}
.team-showcase .profile-item .image-side{flex:0 0 280px}
.team-showcase .profile-item .image-side img{width:100%;height:320px;object-fit:cover;border-radius:3px;box-shadow:0 6px 20px #2e5a5633}
.team-showcase .profile-item .text-side{flex:1}
.team-showcase .profile-item .name-title{font-size:1.6rem;font-weight:600;color:#CE1393;margin:0 0 8px}
.team-showcase .profile-item .role-label{font-size:1rem;color:#2E5A56;margin:0 0 20px;font-weight:500}
.team-showcase .profile-item .bio-text{font-size:1.05rem;line-height:1.7;color:#2E5A56;margin:0}
.cta-panel{max-width:1024px;margin:0 auto 72px;padding:0 24px}
.cta-panel .action-box{background:linear-gradient(135deg,#2E5A56,#CE1393);padding:56px 48px;border-radius:4px;text-align:center;box-shadow:0 8px 24px #2e5a5640}
.cta-panel .action-box .cta-heading{font-size:1.9rem;font-weight:700;color:#FDF9F8;margin:0 0 16px}
.cta-panel .action-box .cta-text{font-size:1.1rem;line-height:1.65;color:#FDF9F8;margin:0 0 32px;max-width:640px;margin-left:auto;margin-right:auto}
.cta-panel .action-box .button-row{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}
.cta-panel .action-box .btn-primary{background:#FDF9F8;color:#2E5A56;padding:14px 36px;font-size:1.05rem;font-weight:600;border:none;border-radius:3px;cursor:pointer;transition:background-color .3s ease,transform .2s ease;text-decoration:none;display:inline-block}
.cta-panel .action-box .btn-primary:hover{background:#CE1393;color:#FDF9F8;transform:scale(1.05)}
.cta-panel .action-box .btn-secondary{background:transparent;color:#FDF9F8;padding:14px 36px;font-size:1.05rem;font-weight:600;border:2px solid #FDF9F8;border-radius:3px;cursor:pointer;transition:background-color .3s ease,transform .2s ease;text-decoration:none;display:inline-block}
.cta-panel .action-box .btn-secondary:hover{background:#FDF9F8;color:#2E5A56;transform:scale(1.05)}
@media (max-width: 768px) {
.title-stage{min-height:360px;margin-bottom:56px}
.title-stage .main-heading{font-size:2.2rem}
.title-stage .sub-text{font-size:1.1rem}
.title-stage .accent-shape{width:120px;height:120px;right:5%}
.story-panel{margin-bottom:64px}
.story-panel .intro-text{font-size:1.05rem}
.story-panel .highlight-box{padding:24px;margin:32px 0}
.values-grid{margin-bottom:64px}
.values-grid .grid-layout{grid-template-columns:1fr;gap:24px}
.team-showcase{padding:56px 24px;margin-bottom:64px}
.team-showcase .heading-text{font-size:1.8rem}
.team-showcase .intro-line{font-size:1rem;margin-bottom:40px}
.team-showcase .profile-item{flex-direction:column;gap:24px}
.team-showcase .profile-item:nth-child(even){flex-direction:column}
.team-showcase .profile-item .image-side{flex:0 0 auto;width:100%}
.team-showcase .profile-item .image-side img{height:280px}
.cta-panel{margin-bottom:56px}
.cta-panel .action-box{padding:40px 28px}
.cta-panel .action-box .cta-heading{font-size:1.5rem}
.cta-panel .action-box .cta-text{font-size:1rem}
.cta-panel .action-box .button-row{flex-direction:column;align-items:stretch}
.cta-panel .action-box .btn-primary,.cta-panel .action-box .btn-secondary{width:100%}
}
@media (min-width: 769px) and (max-width: 1024px) {
.title-stage{min-height:420px}
.title-stage .main-heading{font-size:2.8rem}
.team-showcase .profile-item .image-side{flex:0 0 240px}
.team-showcase .profile-item .image-side img{height:280px}
}
.success-stage{min-height:85vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#FDF9F8 0%,#f5e8f0 50%,#e8f2f1 100%);background-size:400% 400%;animation:gradient-shift 15s ease infinite;padding:3rem 1.5rem;position:relative;overflow:hidden}
@keyframes gradient-shift {
0%{background-position:0 50%}
50%{background-position:100% 50%}
100%{background-position:0 50%}
}
.success-stage::before{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,#ce139314 0%,transparent 70%);animation:rotate-pattern 30s linear infinite}
@keyframes rotate-pattern {
0%{transform:rotate(0deg)}
100%{transform:rotate(360deg)}
}
.success-stage::after{content:'';position:absolute;bottom:-30%;right:-30%;width:150%;height:150%;background:radial-gradient(circle,#2e5a560f 0%,transparent 60%);animation:pulse-shape 20s ease-in-out infinite}
@keyframes pulse-shape {
0%,100%{transform:scale(1);opacity:.6}
50%{transform:scale(1.2);opacity:.3}
}
.success-content-wrap{max-width:680px;width:100%;text-align:center;position:relative;z-index:2}
.success-icon-display{width:120px;height:120px;margin:0 auto 2rem;background:linear-gradient(135deg,#CE1393 0%,#2E5A56 100%);border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px #ce139340;animation:icon-appear .6s ease-out}
@keyframes icon-appear {
0%{transform:scale(0) rotate(-180deg);opacity:0}
100%{transform:scale(1) rotate(0deg);opacity:1}
}
.success-icon-display svg{width:64px;height:64px;stroke:#FDF9F8;stroke-width:3;fill:none;stroke-linecap:round;stroke-linejoin:round;animation:check-draw .8s ease-out .3s forwards;stroke-dasharray:100;stroke-dashoffset:100}
@keyframes check-draw {
to{stroke-dashoffset:0}
}
.success-main-title{font-size:2.5rem;font-weight:700;color:#2E5A56;margin:0 0 1rem;line-height:1.2;animation:fade-up .6s ease-out .4s both}
@keyframes fade-up {
from{opacity:0;transform:translateY(20px)}
to{opacity:1;transform:translateY(0)}
}
.success-subtitle{font-size:1.125rem;color:#555;line-height:1.6;margin:0 0 2.5rem;animation:fade-up .6s ease-out .6s both}
.success-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;animation:fade-up .6s ease-out .8s both}
.success-btn-primary{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 2rem;background:linear-gradient(135deg,#CE1393 0%,#a01076 100%);color:#FDF9F8;text-decoration:none;border-radius:4px;font-weight:600;font-size:1rem;transition:all .3s ease;box-shadow:0 4px 12px #ce13934d;position:relative;z-index:10}
.success-btn-primary:hover{background:linear-gradient(135deg,#a01076 0%,#CE1393 100%);box-shadow:0 6px 18px #ce139366;transform:translateY(-2px)}
.success-btn-secondary{display:inline-flex;align-items:center;gap:.5rem;padding:.875rem 2rem;background:transparent;color:#2E5A56;text-decoration:none;border-radius:4px;font-weight:600;font-size:1rem;border:2px solid #2E5A56;transition:all .3s ease;position:relative;z-index:10}
.success-btn-secondary:hover{background:#2E5A56;color:#FDF9F8;transform:translateY(-2px)}
.success-detail-info{margin-top:3rem;padding:1.5rem;background:#fff9;border-radius:8px;border:1px solid #ce139326;animation:fade-up .6s ease-out 1s both}
.success-detail-info p{margin:0 0 .75rem;color:#333;font-size:.938rem;line-height:1.5}
.success-detail-info p:last-child{margin-bottom:0}
.success-detail-info strong{color:#CE1393;font-weight:600}
@media (max-width: 768px) {
.success-stage{min-height:75vh;padding:2rem 1rem}
.success-icon-display{width:100px;height:100px}
.success-icon-display svg{width:52px;height:52px}
.success-main-title{font-size:2rem}
.success-subtitle{font-size:1rem}
.success-actions{flex-direction:column;align-items:stretch}
.success-btn-primary,.success-btn-secondary{justify-content:center}
.success-detail-info{padding:1.25rem}
}
@media (max-width: 480px) {
.success-main-title{font-size:1.75rem}
.success-icon-display{width:90px;height:90px}
.success-icon-display svg{width:46px;height:46px}
}