.edutime-contact { --ect-red:#d71920; --ect-soft:#fff8f6; --ect-ink:#28242a; --ect-muted:#6b6468; --ect-line:#f0e6e4; --ect-shadow:0 6px 22px rgb(77 40 35 / 7%); width:100%; isolation:isolate; overflow:clip; background:linear-gradient(180deg,#fff 38%,#fffcfb); color:var(--ect-muted); font:14px/1.7 "EduTime Sans","EduTime Sans Fallback",Arial,sans-serif; }
.edutime-contact * { box-sizing:border-box; }
.edutime-contact :is(h1,h2,h3,p,ul,dl,dt,dd) { margin:0; }
.edutime-contact :is(h1,h2,h3) { color:var(--ect-ink); font-family:inherit; line-height:1.35; letter-spacing:-.025em; }
.edutime-contact a { color:inherit; text-decoration:none; }
.edutime-contact img { display:block; max-width:100%; height:auto; }
.edutime-contact svg { width:24px; height:24px; flex-shrink:0; }
.edutime-contact button { margin:0; font-family:inherit; letter-spacing:0; }
.edutime-contact .ect-type { font-size:var(--ect-size) !important; color:var(--ect-color) !important; }
.edutime-contact .ect-wrap { width:min(1320px,calc(100% - 64px)); margin-inline:auto; min-width:0; }
.edutime-contact .ect-section { padding:26px 0; }
.edutime-contact .ect-heading { position:relative; padding-bottom:12px; margin-bottom:20px; font-weight:800; text-align:center; }
.edutime-contact .ect-heading:after { content:""; position:absolute; width:30px; height:3px; border-radius:4px; background:var(--ect-red); bottom:0; left:calc(50% - 15px); }
.edutime-contact .ect-card { background:#fff; border:1px solid var(--ect-line); border-radius:13px; box-shadow:var(--ect-shadow); min-width:0; }
.edutime-contact :focus-visible { outline:3px solid var(--ect-red); outline-offset:3px; }
.edutime-contact .ect-hero { background:radial-gradient(ellipse at 75% 10%,#fce7df,transparent 60%),var(--ect-soft); }
.edutime-contact .ect-hero .ect-wrap { position:relative; min-height:450px; padding:18px 0 60px; }
.edutime-contact .ect-breadcrumb { position:relative; z-index:1; display:flex; flex-wrap:wrap; gap:10px; font-size:12px; margin-bottom:35px; }
.edutime-contact .ect-breadcrumb a:hover { color:var(--ect-red); }
.edutime-contact .ect-hero-image { position:absolute; bottom:0; right:-40px; width:76%; height:100% !important; object-fit:contain; object-position:right bottom; mix-blend-mode:multiply; pointer-events:none; }
.edutime-contact .ect-hero-copy { position:relative; z-index:1; width:47%; }
.edutime-contact .ect-eyebrow { display:flex; align-items:center; gap:8px; margin-bottom:15px; font-weight:700; letter-spacing:.025em; }
.edutime-contact .ect-eyebrow svg { width:19px; height:19px; }
.edutime-contact .ect-hero-title,#wrapper .edutime-contact .ect-hero-title { font-family:"EduTime Sans","EduTime Sans Fallback",Arial,sans-serif !important; font-weight:800 !important; line-height:1.03 !important; letter-spacing:-.025em; text-transform:none; }
.edutime-contact .ect-hero-title strong,#wrapper .edutime-contact .ect-hero-title strong { display:block; margin-top:9px; font-family:"Great Vibes","EduTime Script Fallback",cursive !important; font-style:normal !important; font-weight:400 !important; letter-spacing:0; line-height:1.02 !important; text-transform:none; }
.edutime-contact .ect-hero-description { margin-top:18px; max-width:490px; }
.edutime-contact .ect-assurances { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:28px; }
.edutime-contact .ect-assurances article { text-align:center; padding:0 9px; border-right:1px solid #eadedb; }
.edutime-contact .ect-assurances article:first-child { padding-left:0; }
.edutime-contact .ect-assurances article:last-child { border:0; padding-right:0; }
.edutime-contact .ect-assurances i { display:block; color:var(--ect-red); margin-bottom:8px; }
.edutime-contact .ect-assurances svg { width:31px; height:31px; }
.edutime-contact .ect-assurances h3 { font-weight:750; margin-bottom:4px; }
.edutime-contact .ect-assurances p { line-height:1.55; }
.edutime-contact .ect-main { position:relative; z-index:2; display:grid; grid-template-columns:.85fr 1.45fr; gap:32px; padding:26px 30px; margin-top:-28px; margin-bottom:6px; background:#fff; border:1px solid var(--ect-line); border-radius:14px; box-shadow:var(--ect-shadow); }
.edutime-contact .ect-main--standalone { margin-top:30px; }
.edutime-contact .ect-main--single { grid-template-columns:minmax(0,1fr); }
.edutime-contact .ect-information { border-right:1px solid var(--ect-line); padding-right:28px; min-width:0; }
.edutime-contact .ect-main--single .ect-information { border:0; padding-right:0; }
.edutime-contact .ect-main .ect-heading,.edutime-contact .ect-booking .ect-heading { text-align:left; }
.edutime-contact .ect-main .ect-heading:after,.edutime-contact .ect-booking .ect-heading:after { left:0; }
.edutime-contact .ect-contact-list { display:grid; gap:19px; }
.edutime-contact .ect-contact-list>div { display:grid; grid-template-columns:46px minmax(0,1fr); column-gap:14px; }
.edutime-contact .ect-contact-icon { grid-row:1/3; width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:linear-gradient(140deg,var(--ect-red),#b90b14); color:#fff; box-shadow:0 5px 12px #d719202b; }
.edutime-contact .ect-contact-list dt { font-size:13px; }
.edutime-contact .ect-contact-list dd { color:var(--ect-ink); font-size:14px; font-weight:700; line-height:1.6; overflow-wrap:anywhere; }
.edutime-contact .ect-contact-list small { display:block; font-size:11px; color:var(--ect-muted); font-weight:400; margin-top:3px; }
.edutime-contact .ect-phone { color:var(--ect-red) !important; font-size:21px; font-weight:800; line-height:1.5; }
.edutime-contact .ect-secondary-phone { display:block; font-size:13px; }
.edutime-contact .ect-hours-compact span { display:block; font-size:12px; }
.edutime-contact .ect-social-heading { font-size:12px; margin:23px 0 10px; }
.edutime-contact .ect-socials { display:flex; flex-wrap:wrap; gap:12px; }
.edutime-contact .ect-social { display:grid; place-items:center; width:36px; height:36px; border-radius:50%; color:#fff !important; background:#e11b24; transition:transform .2s; }
.edutime-contact .ect-social:hover { transform:translateY(-2px); }
.edutime-contact .ect-social--facebook { background:#0866ff; }
.edutime-contact .ect-social--tiktok { background:#171717; }
.edutime-contact .ect-social--zalo { background:#008be8; }
.edutime-contact .ect-social--zalo span { display:grid; place-items:center; background:#fff; color:#008be8; border-radius:50%; width:27px; height:27px; font-size:9px; font-weight:800; }
.edutime-contact .ect-form-column { min-width:0; scroll-margin-top:124px; border-radius:9px; }
.edutime-contact .ect-form-column.is-highlighted { animation:ect-form-focus 1.3s ease-out; }
.edutime-contact .ect-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 18px; margin:0; position:relative; }
.edutime-contact .ect-form label { margin:0; min-width:0; font-size:12px; color:var(--ect-ink); font-weight:500; }
.edutime-contact .ect-form label>span { display:block; margin-bottom:5px; }
.edutime-contact .ect-form em { color:var(--ect-red); font-style:normal; }
.edutime-contact .ect-form :is(input:not([type=hidden]),select,textarea) { display:block; width:100%; min-width:0; margin:0; border:1px solid #e5dedd; border-radius:7px; background:#fff; color:var(--ect-ink); box-shadow:none; padding:10px 12px; font-family:inherit; font-size:13px; line-height:1.5; height:43px; }
.edutime-contact .ect-form :is(input,textarea)::placeholder { color:#8a8081; opacity:1; }
.edutime-contact .ect-form textarea { height:105px; min-height:85px; resize:vertical; }
.edutime-contact .ect-form select { appearance:auto; padding-right:25px; }
.edutime-contact .ect-form :is(input,select,textarea):focus { outline:2px solid #efb4ae; outline-offset:1px; border-color:var(--ect-red); }
.edutime-contact .ect-form-wide { grid-column:1/-1; }
.edutime-contact .ect-submit { display:flex; align-items:center; justify-content:center; gap:10px; min-height:46px; border:0; border-radius:7px; background:linear-gradient(100deg,var(--ect-red),#bd0010); color:#fff; padding:12px 16px; font-size:13px; font-weight:800; line-height:1.5; box-shadow:0 5px 13px #d719201a; }
.edutime-contact .ect-submit svg { width:19px; height:19px; }
.edutime-contact .ect-submit:hover { filter:brightness(.95); }
.edutime-contact .ect-submit:disabled { opacity:.65; cursor:wait; }
.edutime-contact .edu-consult-school__status { display:none; font-size:13px; border-radius:8px; padding:12px 15px; background:#fff1ee; color:#a32024; }
.edutime-contact .edu-consult-school__status.is-visible { display:block; }
.edutime-contact .edu-consult-school__status.is-success { background:#eff8f0; color:#255c37; }
.edutime-contact .ect-trap { position:absolute !important; width:1px !important; height:1px !important; overflow:hidden; clip:rect(0,0,0,0); }
.edutime-contact .ect-services-grid { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:12px; }
.edutime-contact .ect-services .ect-card { padding:17px 12px; text-align:center; transition:transform .2s,border-color .2s; }
.edutime-contact .ect-services .ect-card:hover { transform:translateY(-3px); border-color:#efb6b0; }
.edutime-contact .ect-service-icon { display:grid; place-items:center; width:46px; height:46px; border-radius:50%; background:var(--ect-soft); color:var(--ect-red); margin:0 auto 10px; transition:box-shadow .2s; }
.edutime-contact .ect-service-icon svg { width:31px; height:31px; }
.edutime-contact .ect-card:hover .ect-service-icon { box-shadow:0 0 22px #d7192029; }
.edutime-contact .ect-services h3 { min-height:38px; font-weight:800; margin-bottom:9px; }
.edutime-contact .ect-services p { line-height:1.7; }
.edutime-contact .ect-office-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:20px; }
.edutime-contact .ect-office-card { display:grid; grid-template-columns:37% minmax(0,1fr); overflow:hidden; padding:6px; min-height:290px; }
.edutime-contact .ect-office-photo { position:relative; min-height:275px; margin:0; overflow:hidden; border-radius:9px; }
.edutime-contact .ect-office-photo img { position:absolute; inset:0; width:100%; height:100% !important; object-fit:cover; }
.edutime-contact .ect-office-photo .ect-office-shared-image { object-position:right center; }
.edutime-contact .ect-office-card>div { padding:18px; min-width:0; }
.edutime-contact .ect-office-card h3 { font-size:15px; color:var(--ect-red); margin-bottom:18px; }
.edutime-contact .ect-office-card ul { display:grid; gap:12px; list-style:none; padding:0; font-size:12px; }
.edutime-contact .ect-office-card li { display:flex; gap:9px; align-items:flex-start; margin:0; overflow-wrap:anywhere; }
.edutime-contact .ect-office-card li svg { width:18px; height:18px; color:var(--ect-red); margin-top:2px; }
.edutime-contact .ect-directions { display:inline-flex; align-items:center; justify-content:center; gap:5px; border:1px solid var(--ect-red); color:var(--ect-red); border-radius:7px; padding:7px 12px; margin-top:18px; font-size:12px; font-weight:750; }
.edutime-contact .ect-directions svg { width:16px; height:16px; }
.edutime-contact .ect-map { overflow:hidden; padding:0; }
.edutime-contact .ect-map iframe { display:block; width:100%; height:100%; min-height:290px; border:0; margin:0; }
.edutime-contact .ect-map>a { display:flex; min-height:290px; align-items:center; justify-content:center; gap:12px; background:var(--ect-soft); padding:24px; color:var(--ect-red); }
.edutime-contact .ect-booking { display:grid; grid-template-columns:1fr 1fr 1.1fr; overflow:hidden; padding:0; }
.edutime-contact .ect-booking--2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.edutime-contact .ect-booking--1 { grid-template-columns:minmax(0,1fr); }
.edutime-contact .ect-booking .ect-heading { font-size:20px; }
.edutime-contact .ect-schedule,.edutime-contact .ect-appointment { padding:24px; min-width:0; }
.edutime-contact .ect-schedule dl { display:grid; gap:12px; }
.edutime-contact .ect-schedule dl>div { display:grid; grid-template-columns:1fr 1.2fr; align-items:start; gap:9px; font-size:12px; color:var(--ect-ink); }
.edutime-contact .ect-schedule dt { display:flex; gap:8px; align-items:center; }
.edutime-contact .ect-schedule svg { width:17px; height:17px; color:var(--ect-red); }
.edutime-contact .ect-schedule dd { font-weight:700; }
.edutime-contact .ect-schedule>p { font-size:11px; margin-top:16px; }
.edutime-contact .ect-appointment { background:linear-gradient(120deg,var(--ect-red),#c60010); color:#fff; }
.edutime-contact .ect-appointment .ect-heading:after { background:#fff; }
.edutime-contact .ect-appointment>a { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:9px 16px; background:#fff; color:var(--ect-red); font-size:13px; font-weight:800; border-radius:6px; margin-top:19px; }
.edutime-contact .ect-appointment>a svg { width:18px; height:18px; }
.edutime-contact .ect-support-image { width:100%; height:100% !important; min-height:230px; object-fit:contain; background:#fcfaf9; }
.edutime-contact .ect-faq { padding-bottom:40px; }
.edutime-contact .ect-faq-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 16px; align-items:start; }
.edutime-contact .ect-faq details { padding:13px 16px; }
.edutime-contact .ect-faq summary { display:flex; align-items:center; justify-content:space-between; gap:14px; list-style:none; cursor:pointer; min-height:22px; font-weight:700; }
.edutime-contact .ect-faq summary::-webkit-details-marker { display:none; }
.edutime-contact .ect-faq summary i { display:flex; color:var(--ect-red); }
.edutime-contact .ect-faq summary svg { width:17px; height:17px; transform:rotate(90deg); transition:transform .2s; }
.edutime-contact .ect-faq details[open] { border-color:#ecb6af; background:linear-gradient(120deg,var(--ect-soft),#fff); }
.edutime-contact .ect-faq details[open] summary svg { transform:rotate(-90deg); }
.edutime-contact .ect-answer { border-left:2px solid var(--ect-red); padding:10px 0 0 14px; margin-top:12px; }
.edutime-contact .ect-answer p+p { margin-top:10px; }
.edutime-contact .ect-faq details[open] .ect-answer { animation:ect-reveal .3s ease-out; }
.edutime-contact-page #main { padding-top:0; padding-bottom:0; }
@keyframes ect-reveal { from { opacity:0; transform:translateY(-5px); } to { opacity:1; transform:translateY(0); } }
@keyframes ect-form-focus { from { box-shadow:0 0 0 8px #d719201a; } to { box-shadow:0 0 0 0 #d7192000; } }
@media(min-width:1100px) { .edutime-contact .ect-hero-copy { animation:ect-reveal .5s ease-out; } }
@media(max-width:1100px) {
 .edutime-contact .ect-wrap { width:calc(100% - 48px); }
 .edutime-contact .ect-main { gap:24px; padding:24px; grid-template-columns:.85fr 1.2fr; }
 .edutime-contact .ect-main--single { grid-template-columns:minmax(0,1fr); }
 .edutime-contact .ect-information { padding-right:20px; }
 .edutime-contact .ect-hero-title { font-size:min(var(--ect-size),42px) !important; }
 .edutime-contact .ect-hero-title strong { font-size:min(var(--ect-size),40px) !important; }
 .edutime-contact .ect-services-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
 .edutime-contact .ect-office-grid { grid-template-columns:1fr 1fr; gap:16px; }
 .edutime-contact .ect-office-card>div { padding:14px; }
 .edutime-contact .ect-booking { grid-template-columns:1fr 1fr; }
 .edutime-contact .ect-booking--1 { grid-template-columns:minmax(0,1fr); }
 .edutime-contact .ect-support-image { grid-column:1/-1; max-height:290px; }
}
@media(max-width:800px) {
 .edutime-contact .ect-hero .ect-wrap { display:flex; flex-direction:column; padding-bottom:24px; min-height:0; }
 .edutime-contact .ect-breadcrumb { margin-bottom:24px; }
 .edutime-contact .ect-hero-copy { width:100%; order:1; }
 .edutime-contact .ect-hero-image { position:relative; order:2; width:100%; height:auto !important; right:auto; margin-top:16px; }
 .edutime-contact .ect-main { margin-top:0; grid-template-columns:minmax(0,1fr); }
 .edutime-contact .ect-information { border:0; border-bottom:1px solid var(--ect-line); padding:0 0 24px; }
 .edutime-contact .ect-contact-list { grid-template-columns:1fr 1fr; gap:20px; }
 .edutime-contact .ect-office-grid { grid-template-columns:minmax(0,1fr); }
 .edutime-contact .ect-map iframe { height:310px; }
}
@media(max-width:600px) {
 .edutime-contact .ect-wrap { width:calc(100% - 32px); }
 .edutime-contact .ect-section { padding:22px 0; }
 .edutime-contact .ect-type,.edutime-contact .ect-hero-title,.edutime-contact .ect-hero-title strong { font-size:var(--ect-mobile) !important; }
 .edutime-contact .ect-hero .ect-wrap { padding-top:12px; }
 .edutime-contact .ect-hero-image { width:calc(100% + 32px); max-width:none; margin:10px -16px 0; }
 .edutime-contact .ect-assurances { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 10px; margin-top:22px; }
 .edutime-contact .ect-assurances article { padding:0 8px !important; }
 .edutime-contact .ect-assurances article:nth-child(even) { border:0; }
 .edutime-contact .ect-main { padding:20px 16px; gap:22px; }
 .edutime-contact .ect-contact-list { grid-template-columns:minmax(0,1fr); }
 .edutime-contact .ect-form { grid-template-columns:minmax(0,1fr); gap:13px; }
 .edutime-contact .ect-form :is(input:not([type=checkbox]),select,textarea) { font-size:16px; }
 .edutime-contact .ect-form label { font-size:13px; }
 .edutime-contact .ect-submit { min-height:48px; }
 .edutime-contact .ect-services-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .edutime-contact .ect-services .ect-card { padding:16px 12px; }
 .edutime-contact .ect-office-card { grid-template-columns:34% minmax(0,1fr); min-height:0; }
 .edutime-contact .ect-office-photo { align-self:start; aspect-ratio:4/5; min-height:0; margin-top:12px; }
 .edutime-contact .ect-office-card>div { padding:12px; }
 .edutime-contact .ect-office-card h3 { font-size:13px; }
 .edutime-contact .ect-office-card ul { font-size:11px; }
 .edutime-contact .ect-directions { font-size:10px; padding:8px; }
 .edutime-contact .ect-booking { grid-template-columns:minmax(0,1fr); }
 .edutime-contact .ect-schedule,.edutime-contact .ect-appointment { padding:20px; }
 .edutime-contact .ect-support-image { height:auto !important; min-height:0; max-height:320px; }
 .edutime-contact .ect-faq-grid { grid-template-columns:minmax(0,1fr); }
 .edutime-contact .ect-faq { padding-bottom:30px; }
}
@media(prefers-reduced-motion:reduce) { .edutime-contact * { animation:none !important; transition:none !important; scroll-behavior:auto !important; } }
