/*
Theme Name: ADN LAB Editable Landing Full
Theme URI: https://www.adnlab.vn/
Author: ADN LAB
Description: Landing ADN LAB đầy đủ, có thể chỉnh sửa trong WordPress Customizer. Bao gồm slider, khoa học, so sánh, quy trình, bảng giá, lưu ý, chuyên gia, thiết bị, đối tác, feedback, FAQ và tin tức.
Version: 3.2.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: adnlab
*/

:root{--teal:#008c83;--teal2:#0da89c;--coral:#ff676d;--navy:#15363a;--text:#252525;--muted:#666;--line:#d9e7e5;--pale:#eef9f8;--white:#fff;--shadow:0 14px 38px rgba(0,110,102,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,"Helvetica Neue",sans-serif;color:var(--text);background:#fff;line-height:1.58}a{text-decoration:none;color:inherit}img,svg{max-width:100%;display:block}.wrap{width:min(1120px,calc(100% - 32px));margin:auto}
.topline{background:#f4f4f4;color:#4c4c4c;font-size:12px;border-bottom:1px solid #eee}.topline .wrap{height:34px;display:flex;align-items:center;justify-content:space-between}.topline strong{color:var(--teal)}
.header{background:#fff;position:sticky;top:0;z-index:50;box-shadow:0 2px 12px rgba(0,0,0,.06)}.headin{height:80px;display:flex;align-items:center;gap:30px}.logo{display:flex;align-items:center;white-space:nowrap}.brandLogo{display:block;width:230px;max-height:64px;object-fit:contain;object-position:left center}.nav{display:flex;gap:28px;margin-left:auto;font-size:14px;font-weight:700;color:#164b48}.nav a:hover{color:var(--coral)}.hotline{background:var(--coral);color:#fff;font-weight:800;padding:11px 16px;border-radius:7px;font-size:13px}.burger{display:none;margin-left:auto;border:0;background:transparent;font-size:27px}
.hero{background:#eaf8f7}.heroBox{position:relative;min-height:378px;overflow:hidden;background:linear-gradient(90deg,#dff8f5 0%,#f6fbfb 46%,#eaf6f6 100%)}.heroBox:before{content:"";position:absolute;inset:0;background:linear-gradient(155deg,rgba(255,255,255,.55),transparent 44%),radial-gradient(circle at 76% 36%,rgba(255,255,255,.9),transparent 30%)}.heroContent{position:relative;z-index:2;width:62%;padding:55px 0 45px}.miniLogo{font-size:12px;font-weight:800;color:var(--teal);letter-spacing:.6px}.speech{display:inline-block;margin:14px 0 8px;background:var(--coral);color:#fff;font-weight:900;padding:8px 14px;border-radius:7px;position:relative}.speech:after{content:"";position:absolute;left:22px;bottom:-10px;border:10px solid transparent;border-top-color:var(--coral);border-bottom:0}.hero h1{margin:14px 0 4px;font-size:53px;line-height:.98;color:var(--teal);text-transform:uppercase;letter-spacing:-2px;text-shadow:0 2px #fff}.hero h1 em{font-style:normal;color:#fff;-webkit-text-stroke:1px var(--teal);text-shadow:2px 2px 0 var(--teal)}.heroSub{font-size:25px;font-weight:900;color:#fff;background:var(--teal);display:inline-block;padding:7px 20px;border-radius:0 0 25px 25px;transform:skew(-4deg)}.heroActions{display:flex;gap:12px;margin-top:26px;align-items:center}.pill{display:inline-flex;align-items:center;gap:8px;background:#fff;border-radius:6px;padding:10px 14px;color:var(--coral);font-size:13px;font-weight:800;box-shadow:0 6px 18px rgba(0,0,0,.08)}.heroPhone{font-size:21px;font-weight:900;color:var(--coral)}
.family{position:absolute;right:2%;bottom:0;width:40%;height:96%;z-index:1}.family svg{width:100%;height:100%}
.quick{background:#fff;padding:26px 0 22px}.quickGrid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid #e6e6e6}.quickItem{text-align:center;padding:24px 18px;border-right:1px solid var(--teal)}.quickItem:last-child{border-right:0}.quickIcon{width:68px;height:68px;border-radius:50%;background:var(--teal);margin:0 auto 12px;display:grid;place-items:center;color:#fff;font-size:31px}.quickItem b{display:block;font-size:26px;color:#161616}.quickItem span{display:block;font-size:13px;color:#555;line-height:1.35}
.section{padding:48px 0}.section.alt{background:#f8fbfb}.title{text-align:center;margin-bottom:28px}.title h2{margin:0;color:#111;font-size:30px;text-transform:capitalize}.title h2:after{content:"";display:block;width:64px;height:3px;background:var(--teal);margin:12px auto 0}.title p{max-width:820px;margin:14px auto 0;color:#666;font-size:15px}.two{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.copy h2{font-size:30px;line-height:1.2;margin:0 0 18px}.copy p{margin:0 0 13px;text-align:justify}.bullets{margin:15px 0 0;padding-left:22px}.bullets li{margin:8px 0}.illus{border-radius:22px;overflow:hidden;background:#fff;border:1px solid #e7eeee;min-height:320px;display:grid;place-items:center;padding:12px}
.scienceArt{position:relative;aspect-ratio:1.2/1;width:100%;background:#fff}.dnaPair{position:absolute;right:8%;top:13%;width:50%;height:72%}.helix{position:absolute;left:0;right:0;height:44%;border-top:9px solid #55a9e6;border-bottom:9px solid #55a9e6;border-radius:50%;transform:rotate(13deg)}.helix.red{top:48%;border-color:#ff6e79;transform:rotate(-13deg)}.momLine{position:absolute;left:7%;top:12%;width:37%;height:68%;border:5px solid #5da9dd;border-radius:50% 50% 42% 42%;border-right-color:transparent;transform:rotate(-7deg)}.zoom{position:absolute;left:24%;top:32%;width:110px;height:110px;border:6px solid #5da9dd;border-radius:50%;background:radial-gradient(circle,#fff 0 30%,transparent 31%),repeating-radial-gradient(circle,#ff6e79 0 2px,transparent 3px 11px),repeating-linear-gradient(45deg,transparent 0 12px,#5da9dd 13px 15px,transparent 16px 24px)}
.chromosome{width:100%;min-height:430px;display:grid;place-items:center;position:relative}.sexRow{display:flex;gap:95px;position:absolute;top:38px}.personIcon{font-size:80px;text-align:center}.male{color:#378bd2}.female{color:#ff6974}.sexName{font-size:53px;font-weight:900;letter-spacing:6px;text-align:center}.children{display:flex;gap:210px;position:absolute;bottom:50px}.childCard{border:2px solid currentColor;border-radius:18px;padding:18px 30px;text-align:center;min-width:200px}.childCard .personIcon{font-size:52px}.branch{position:absolute;top:208px;width:60%;border-top:2px solid #9abfd4}.branch:before{content:"";position:absolute;left:50%;top:-58px;height:58px;border-left:2px solid #9abfd4}.branch:after{content:"";position:absolute;left:0;right:0;top:0;height:34px;border-left:2px solid #9abfd4;border-right:2px solid #ff9aa0}
.tableWrap{overflow:auto;border:1px solid #aacfc9}.compare{border-collapse:collapse;width:100%;min-width:900px;font-size:14px}.compare th,.compare td{border:1px solid #79bbb3;padding:12px 10px;text-align:center}.compare thead th{background:#dcedef;color:var(--teal);font-size:16px}.compare thead th:first-child{background:#fff}.compare .side{font-weight:800;color:var(--teal)}.compare .folk{font-weight:800;color:var(--teal)}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.step{text-align:center}.stepLabel{color:#777;font-size:14px;margin-bottom:6px}.stepImg{aspect-ratio:1;border-radius:24px;overflow:hidden;background:linear-gradient(145deg,#f7f0eb,#edf8f6);border:1px solid #e6e6e6;position:relative;display:grid;place-items:center}.stepImg svg{width:85%;height:85%}.step h3{font-size:15px;line-height:1.35;margin:12px 5px;color:#222}.step h3:before{content:"";display:block;width:35px;height:3px;background:var(--teal);margin:0 auto 10px}
/* Pricing cards rebuilt from the supplied ADN LAB reference artwork */
.prices{display:grid;grid-template-columns:1fr 1fr;gap:26px;align-items:stretch}.priceCard{--pc:#079d8d;--pc-dark:#087f75;--pc-bg:#effbf8;border:1px solid color-mix(in srgb,var(--pc) 28%,#fff);overflow:hidden;background:var(--pc-bg);box-shadow:0 14px 34px rgba(0,0,0,.09);display:flex;flex-direction:column}.priceCard.premium{--pc:#ff6568;--pc-dark:#d94145;--pc-bg:#fff2f2}.priceTop{padding:23px 16px 18px;text-align:center;background:var(--pc);color:#fff}.priceTop h3{font-size:29px;line-height:1.12;margin:0;font-weight:900;text-transform:uppercase}.priceTop .brandline{font-size:20px;line-height:1.2;margin-top:8px;font-weight:500;letter-spacing:.4px}.priceMain{padding:22px 20px 0;text-align:center;display:flex;flex-direction:column;flex:1}.discountTitle{font-size:20px;font-weight:900;color:var(--pc);text-transform:uppercase;line-height:1.25}.discountBadge{display:inline-flex;align-items:center;justify-content:center;gap:6px;align-self:center;background:var(--pc);color:#fff;margin:16px 0 21px;padding:8px 26px;min-width:58%;font-size:18px;font-weight:900;clip-path:polygon(7% 0,93% 0,100% 50%,93% 100%,7% 100%,0 50%)}.discountBadge em{font-family:Georgia,serif;font-weight:400;font-size:17px}.priceLead{font-size:20px;font-weight:900;color:var(--pc);margin-bottom:4px}.priceValue{font-size:54px;line-height:1;font-weight:900;color:var(--pc-dark);letter-spacing:-1.5px;white-space:nowrap}.oldPrice{font-size:20px;font-weight:900;color:var(--pc);text-decoration:line-through;margin:12px 0 20px}.priceFeatures{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:auto;padding-bottom:22px}.featureTag{min-height:62px;background:var(--pc);color:#fff;display:flex;align-items:center;text-align:left;gap:11px;padding:11px 14px;font-weight:800;line-height:1.22;clip-path:polygon(4% 0,96% 0,100% 50%,96% 100%,4% 100%,0 50%)}.featureIcon{width:34px;height:34px;min-width:34px;border-radius:50%;background:var(--pc-dark);display:grid;place-items:center;font-size:17px}.insurance{margin:0 -20px;background:var(--pc);color:#fff;padding:19px 12px;font-size:24px;font-weight:900;text-transform:uppercase;line-height:1.15}.priceCta{padding:16px 20px 20px;text-align:center;background:#fff}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--coral);color:#fff;padding:12px 19px;border-radius:5px;font-weight:800;border:0;cursor:pointer}.btn.teal{background:var(--teal)}
.notes{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.noteCard{border:1px solid #ddd;border-radius:6px;background:#fff;padding:16px;text-align:center}.noteIcon{font-size:34px;color:var(--teal)}.noteCard h3{font-size:15px;color:var(--teal);margin:8px 0}.noteCard p{font-size:12.5px;color:#555;margin:0}.notice{margin-top:18px;padding:15px 17px;border-left:4px solid var(--coral);background:#fff6f6;font-size:13px;color:#654}
.expertBand{background:#f8fbfb;border:1px solid #dcecea;padding:20px}.experts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.expert{background:#fff;box-shadow:0 0 14px rgba(0,140,131,.26);text-align:center}.portrait{height:250px;background:linear-gradient(#f4efeb,#eee);display:grid;place-items:end center;overflow:hidden}.portrait svg{width:90%;height:95%}.expertBody{padding:15px}.expertBody h3{font-size:18px;margin:0 0 5px}.expertBody b{display:block;color:var(--teal);font-size:14px;line-height:1.3}.expertBody p{font-size:12.5px;line-height:1.35;font-weight:700}.teamBanner{padding:0;background:#fff;overflow:hidden;border-radius:8px}.teamBanner img{width:100%;height:auto;display:block}.teamNote{margin:0;padding:12px 16px;background:#f8fbfb;color:#5d6868;font-size:12px;border-top:1px solid #dcecea}
.equipment{display:grid;grid-template-columns:2fr 1fr 1fr;gap:16px}.machine{background:#f8f8f8;border-radius:18px;min-height:230px;padding:20px;position:relative;overflow:hidden;border:1px solid #eee}.machine.big{grid-row:span 2;min-height:476px}.machine h3{font-size:20px;margin:0;position:relative;z-index:2}.machine p{font-size:13px;color:#666;position:relative;z-index:2}.machineGraphic{position:absolute;right:5%;bottom:7%;width:65%;height:55%;background:linear-gradient(145deg,#fff,#dfe5e7);border:1px solid #ccd5d7;border-radius:6px;box-shadow:18px 18px 0 #d5dadd}.machineGraphic:before{content:"";position:absolute;right:5%;top:8%;width:28%;height:35%;background:#263238;border-radius:2px}.machineGraphic:after{content:"";position:absolute;left:7%;bottom:10%;width:68%;height:8px;background:#22a8db}
.partners{display:grid;grid-template-columns:repeat(8,1fr);gap:12px}.partner{height:72px;border:1px solid #e5e5e5;background:#fff;display:grid;place-items:center;color:#7d8b8a;font-size:12px;font-weight:900;text-align:center}.feedbacks{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.feedback{border:1px solid #ddd;border-radius:6px;background:#fff;overflow:hidden}.chatHead{background:#f1f1f1;padding:10px;display:flex;align-items:center;gap:8px;font-size:12px}.avatar{width:29px;height:29px;border-radius:50%;background:linear-gradient(135deg,#64b5f6,#ff8a80)}.chatBody{padding:12px;min-height:175px;font-size:12px;background:linear-gradient(#fff,#fafafa)}.bubble{background:#e7f3ff;border-radius:12px;padding:8px 10px;margin:7px 0 7px auto;width:82%}.bubble.gray{background:#ececec;margin-left:0;margin-right:auto}
.faq{max-width:920px;margin:auto}.faq details{border-bottom:1px solid #ddd}.faq summary{cursor:pointer;font-weight:800;padding:16px 4px;list-style:none}.faq summary:after{content:"+";float:right;color:var(--teal);font-size:22px}.faq details[open] summary:after{content:"−"}.faq p{margin:0 0 16px;color:#555}.news{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.newsCard{border:1px solid #e5e5e5;background:#fff}.newsThumb{height:155px;background:linear-gradient(135deg,#bfe6e2,#f7dadc);position:relative}.date{position:absolute;left:10px;top:10px;background:#fff;padding:5px 8px;color:var(--teal);font-weight:900;text-align:center;font-size:11px}.newsBody{padding:14px}.newsBody h3{font-size:15px;line-height:1.35;margin:0}
.register{background:linear-gradient(120deg,var(--teal),#006e69);color:#fff;padding:42px 0}.regGrid{display:grid;grid-template-columns:1fr .9fr;gap:30px;align-items:center}.regGrid h2{font-size:34px;margin:0 0 12px}.form{background:#fff;padding:20px;border-radius:8px;color:#222}.fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.form input,.form select,.form textarea{width:100%;border:1px solid #ddd;border-radius:4px;padding:11px;font:inherit}.form textarea{grid-column:1/-1;min-height:70px}.form .btn{width:100%;margin-top:10px}.form small{display:block;color:#777;margin-top:8px}
.footer{background:#15383a;color:#d4e6e4;padding:36px 0 75px;font-size:13px}.footGrid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:35px}.footer h3{color:#fff;margin-top:0}.footer a{display:block;margin:7px 0}.copyline{border-top:1px solid rgba(255,255,255,.13);margin-top:26px;padding-top:14px;font-size:12px}.mobileBar{display:none;position:fixed;z-index:70;bottom:0;left:0;right:0;background:#fff;border-top:1px solid #ddd;padding:8px;gap:8px}.mobileBar a{flex:1;text-align:center;border-radius:4px;padding:11px;font-weight:800;color:#fff;background:var(--teal)}.mobileBar a:last-child{background:var(--coral)}
@media(max-width:900px){.nav,.hotline{display:none}.burger{display:block}.headin{height:66px}.heroBox{min-height:410px}.heroContent{width:68%;padding:42px 0}.hero h1{font-size:42px}.family{right:-4%;width:43%}.quickGrid{grid-template-columns:repeat(2,1fr)}.quickItem:nth-child(2){border-right:0}.quickItem:nth-child(-n+2){border-bottom:1px solid var(--teal)}.two{grid-template-columns:1fr}.steps{grid-template-columns:repeat(2,1fr)}.notes{grid-template-columns:repeat(2,1fr)}.notes .noteCard:last-child{grid-column:1/-1}.experts{grid-template-columns:1fr}.equipment{grid-template-columns:1fr 1fr}.machine.big{grid-column:1/-1;grid-row:auto;min-height:330px}.partners{grid-template-columns:repeat(4,1fr)}.feedbacks{grid-template-columns:repeat(2,1fr)}.news{grid-template-columns:1fr 1fr}.regGrid,.footGrid{grid-template-columns:1fr}.mobileBar{display:flex}.footer{padding-bottom:95px}}
@media(max-width:600px){.wrap{width:min(100% - 20px,1120px)}.topline .wrap{justify-content:center}.topline span:last-child{display:none}.heroBox{min-height:520px}.heroContent{width:100%;padding:30px 4px 0;text-align:center}.speech{font-size:13px}.hero h1{font-size:38px}.heroSub{font-size:19px}.heroActions{justify-content:center;flex-wrap:wrap}.family{width:65%;height:48%;right:17%;bottom:-2%;opacity:.95}.quick{padding-top:14px}.quickItem{padding:18px 10px}.quickIcon{width:55px;height:55px;font-size:24px}.quickItem b{font-size:21px}.section{padding:38px 0}.title h2,.copy h2{font-size:25px}.illus{min-height:260px}.chromosome{min-height:340px}.sexRow{gap:45px}.personIcon{font-size:58px}.sexName{font-size:36px}.children{gap:60px;bottom:25px}.childCard{min-width:120px;padding:10px}.steps,.prices,.feedbacks,.news{grid-template-columns:1fr}.notes{grid-template-columns:1fr}.notes .noteCard:last-child{grid-column:auto}.equipment{grid-template-columns:1fr}.machine.big{grid-column:auto}.partners{grid-template-columns:repeat(2,1fr)}.fields{grid-template-columns:1fr}.form textarea{grid-column:auto}.regGrid h2{font-size:29px}.priceTop h3{font-size:24px}.priceTop .brandline{font-size:17px}.priceMain{padding:18px 12px 0}.discountTitle{font-size:17px}.discountBadge{min-width:74%;font-size:16px;padding:8px 16px}.priceLead{font-size:18px}.priceValue{font-size:39px;letter-spacing:-1px}.oldPrice{font-size:17px}.priceFeatures{grid-template-columns:1fr;gap:9px}.featureTag{min-height:54px}.insurance{margin:0 -12px;font-size:20px;padding:16px 8px}.priceCta{padding:14px 12px 18px}.priceCta .btn{width:100%}}

/* Hero banner slider */
.bannerSlider{position:relative;overflow:hidden;background:#eefafa}.bannerTrack{position:relative;aspect-ratio:2.5/1;min-height:300px}.bannerSlide{position:absolute;inset:0;opacity:0;transition:opacity .65s ease;pointer-events:none}.bannerSlide.active{opacity:1;pointer-events:auto}.bannerSlide img{width:100%;height:100%;object-fit:cover;display:block}.bannerDots{position:absolute;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:9px;z-index:5}.bannerDot{width:11px;height:11px;border:2px solid #fff;border-radius:50%;background:rgba(0,140,131,.55);box-shadow:0 1px 5px #0004;cursor:pointer}.bannerDot.active{background:#ff4747;transform:scale(1.2)}.bannerArrow{position:absolute;top:50%;transform:translateY(-50%);z-index:5;width:42px;height:42px;border:0;border-radius:50%;background:rgba(0,77,73,.58);color:#fff;font-size:25px;cursor:pointer}.bannerPrev{left:15px}.bannerNext{right:15px}@media(max-width:600px){.bannerTrack{aspect-ratio:2.05/1;min-height:220px}.bannerSlide img{object-fit:cover}.bannerArrow{width:34px;height:34px;font-size:20px}.bannerDots{bottom:9px}}

body.admin-bar .header{top:32px}
.custom-logo{display:block;width:230px;max-height:64px;object-fit:contain}
.wp-menu-nav{display:flex;gap:28px;margin-left:auto;align-items:center}
.wp-menu-nav li{list-style:none}
.wp-menu-nav a{font-size:14px;font-weight:700;color:#164b48}
.wp-menu-nav a:hover{color:var(--coral)}
@media(max-width:782px){body.admin-bar .header{top:46px}}

/* Equipment section alignment fix v3.2.1 */
.equipment-section{padding:56px 0;background:linear-gradient(180deg,#f8ffff 0%,#eefaf9 100%)}
.equipment-section .equipment-wrap{width:min(1120px,calc(100% - 32px));margin:0 auto}
.equipment-section .section-heading{text-align:center;max-width:860px;margin:0 auto 28px}
.equipment-section .section-heading .eyebrow{display:inline-block;margin-bottom:8px;color:#078c87;font-weight:800;font-size:13px;letter-spacing:.08em}
.equipment-section .section-heading h2{margin:0 0 12px;color:#087f7b;font-size:34px;line-height:1.2;text-transform:uppercase}
.equipment-section .section-heading p{margin:0 auto;color:#536867;font-size:16px;line-height:1.7}
.equipment-section .equipment-hero{width:100%;margin:0 auto;border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 14px 38px rgba(0,111,106,.12);border:1px solid rgba(0,140,131,.10)}
.equipment-section .equipment-hero img{display:block;width:100%;height:auto;max-width:100%;object-fit:contain}
@media(max-width:600px){.equipment-section{padding:38px 0}.equipment-section .equipment-wrap{width:min(100% - 20px,1120px)}.equipment-section .section-heading{margin-bottom:18px}.equipment-section .section-heading h2{font-size:25px}.equipment-section .section-heading p{font-size:15px}.equipment-section .equipment-hero{border-radius:12px}}
