/* Derma Farm — Premium UI System v2 */
:root{--df-rose:#b83f68;--df-rose-deep:#8f274b;--df-rose-soft:#f8e8ed;--df-cream:#fcf8f6;--df-ink:#211b1d;--df-muted:#756b6e;--df-line:#eadfe2;--df-white:#fff;--df-shadow:0 24px 70px rgba(55,30,38,.10);--df-shadow-sm:0 10px 30px rgba(55,30,38,.07);--df-radius:24px;--df-display:'Playfair Display',serif;--df-body:'Inter',sans-serif}
body{background:var(--df-cream);color:var(--df-ink);font-family:var(--df-body)}
.container{max-width:1380px;padding-left:28px;padding-right:28px}
a{color:inherit} h1,h2,h3,h4,h5,h6{font-family:var(--df-display);letter-spacing:-.025em;color:var(--df-ink)}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(252,248,246,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(184,63,104,.10);box-shadow:0 4px 25px rgba(45,25,31,.04)}
.header-inner{min-height:88px;gap:28px}.logo{display:flex;align-items:center}.brand-logo{width:156px;height:auto;display:block;object-fit:contain}
.main-nav{gap:34px}.main-nav a{position:relative;color:#51474a;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;padding:34px 0}.main-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:23px;height:2px;background:var(--df-rose);transition:.25s}.main-nav a:hover,.main-nav a.active{color:var(--df-rose-deep)}.main-nav a:hover:after,.main-nav a.active:after{right:0}
.header-actions{gap:14px}.search-bar{width:220px;border:1px solid var(--df-line);border-radius:999px;background:#fff;height:44px;box-shadow:none}.search-bar input{font-size:13px}.header-actions>a,.cart-toggle{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid var(--df-line);color:var(--df-ink);transition:.25s}.header-actions>a:hover,.cart-toggle:hover{border-color:var(--df-rose);color:var(--df-rose);transform:translateY(-2px)}.cart-badge{background:var(--df-rose);min-width:18px;height:18px;font-size:10px}
.btn{border-radius:999px;padding:14px 24px;font-size:12px;letter-spacing:.07em;text-transform:uppercase;box-shadow:none}.btn-primary{background:var(--df-rose);box-shadow:0 12px 25px rgba(184,63,104,.20)}.btn-primary:hover{background:var(--df-rose-deep);transform:translateY(-2px);box-shadow:0 16px 30px rgba(184,63,104,.25)}.btn-secondary,.btn-outline{background:#fff;color:var(--df-rose-deep);border:1px solid var(--df-line)}.btn-secondary:hover,.btn-outline:hover{background:var(--df-rose-soft);border-color:#e8c2ce;color:var(--df-rose-deep)}
/* Home */
.df-hero{position:relative;overflow:hidden;padding:90px 0 80px;background:radial-gradient(circle at 78% 35%,#f5dce4 0,transparent 34%),linear-gradient(135deg,#fcf8f6 0%,#f8edf0 100%)}.df-hero:before{content:"";position:absolute;width:520px;height:520px;border-radius:50%;right:-180px;top:-180px;border:1px solid rgba(184,63,104,.13)}.df-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:70px}.df-hero-copy{position:relative;z-index:2}.eyebrow{display:inline-flex;align-items:center;gap:9px;color:var(--df-rose-deep);font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px}.eyebrow-dot{width:7px;height:7px;border-radius:50%;background:var(--df-rose)}.df-hero h1{font-size:clamp(52px,6vw,88px);line-height:.98;font-weight:500;max-width:780px;margin:0 0 28px}.df-hero h1 em{font-weight:400;color:var(--df-rose);font-style:italic}.df-hero-lead{font-size:17px;line-height:1.85;max-width:610px;color:#6f6367;margin-bottom:32px}.df-hero-actions{display:flex;align-items:center;gap:25px}.text-link{font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:var(--df-ink);border-bottom:1px solid #cdbfc3;padding-bottom:4px}.text-link:hover{color:var(--df-rose)}.df-proof-row{display:flex;align-items:center;gap:24px;margin-top:52px}.df-proof-row div{display:flex;flex-direction:column;gap:3px}.df-proof-row strong{font-family:var(--df-display);font-size:21px}.df-proof-row span{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#887b80}.df-proof-row i{height:34px;width:1px;background:var(--df-line)}.df-hero-art{min-height:560px;position:relative;display:grid;place-items:center}.df-hero-art>img{position:relative;z-index:2;width:min(100%,620px);height:540px;object-fit:contain;filter:drop-shadow(0 30px 35px rgba(70,30,43,.15))}.art-orbit{position:absolute;border:1px solid rgba(184,63,104,.18);border-radius:50%}.orbit-one{width:510px;height:510px}.orbit-two{width:380px;height:380px}.floating-card{position:absolute;z-index:3;right:2%;bottom:8%;background:rgba(255,255,255,.9);backdrop-filter:blur(14px);padding:17px 20px;border:1px solid rgba(255,255,255,.8);box-shadow:var(--df-shadow-sm);border-radius:18px;display:flex;gap:12px;align-items:center}.floating-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--df-rose-soft);color:var(--df-rose);font-size:15px}.floating-card strong,.floating-card small{display:block}.floating-card strong{font-size:12px}.floating-card small{font-size:10px;color:var(--df-muted);margin-top:3px}.trust-strip{background:#fff;border-bottom:1px solid var(--df-line);border-top:1px solid var(--df-line)}.trust-strip-inner{min-height:74px;display:flex;justify-content:space-between;align-items:center;gap:18px;color:#6c6064;font-size:10px;letter-spacing:.1em;text-transform:uppercase;font-weight:700}.section{padding:105px 0}.section-heading-row{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-heading-row h2,.section-header h2{font-size:clamp(38px,4vw,56px);line-height:1.05;font-weight:500;margin:0 0 12px}.section-heading-row p,.section-header p{color:var(--df-muted);max-width:600px}.section-header{text-align:center;max-width:760px;margin:0 auto 48px}
.products-grid{gap:24px}.df-products{grid-template-columns:repeat(4,1fr)}.product-card{background:#fff;border:1px solid var(--df-line);border-radius:20px;overflow:hidden;box-shadow:none;transition:.35s cubic-bezier(.2,.7,.2,1)}.product-card:hover{transform:translateY(-7px);box-shadow:var(--df-shadow);border-color:#dfc8ce}.product-image{background:linear-gradient(145deg,#f8eeee,#fbf8f6);min-height:310px;overflow:hidden}.product-image img{transition:.5s ease}.product-card:hover .product-image img{transform:scale(1.045)}.product-wishlist{width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.92);border:1px solid var(--df-line);top:15px;right:15px;z-index:4}.sale-pill,.badge-danger{background:var(--df-rose);border-radius:999px;padding:7px 10px;font-size:9px;letter-spacing:.08em}.product-info{padding:21px 20px 22px}.product-category{font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--df-rose);font-weight:700}.product-name{font-family:var(--df-display);font-size:22px;line-height:1.15;margin:8px 0 10px}.product-rating{font-size:10px;color:#8c8084;gap:7px}.stars{color:var(--df-rose);letter-spacing:2px}.product-bottom{border-top:1px solid #f0e7e9;margin-top:18px;padding-top:17px}.product-price strong,.product-price .current{font-family:var(--df-display);font-size:21px;color:var(--df-ink)}.product-price del,.product-price .original{font-size:11px;color:#9b8f93}.btn-sm{padding:10px 15px;font-size:10px}
.skin-section{background:#fff}.df-category-grid{grid-template-columns:repeat(4,1fr);gap:16px}.df-category-card{position:relative;min-height:230px;padding:28px;background:linear-gradient(145deg,#fff,#f8eff1);border:1px solid var(--df-line);border-radius:22px;transition:.3s}.df-category-card:hover{background:#f5e3e8;transform:translateY(-4px)}.category-number{position:absolute;top:22px;right:24px;font-size:10px;color:#b7a6aa}.category-icon{font-size:26px}.df-category-card h3{font-size:27px;margin-top:55px}.df-category-card p{font-size:12px}.category-arrow{position:absolute;bottom:25px;right:25px;font-size:20px;color:var(--df-rose)}
.expert-section{background:#f4e8eb}.expert-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.expert-art{position:relative;min-height:540px;background:#e8d3d9;border-radius:28px;overflow:hidden}.expert-art img{width:100%;height:100%;min-height:540px;object-fit:cover}.expert-badge{position:absolute;bottom:24px;left:24px;background:#fff;padding:16px 20px;border-radius:16px;box-shadow:var(--df-shadow-sm)}.expert-badge strong,.expert-badge small{display:block}.expert-badge strong{font-family:var(--df-display);font-size:20px}.expert-badge small{font-size:10px;color:var(--df-muted);margin-top:3px}.expert-copy h2{font-size:clamp(40px,4vw,62px);line-height:1.03;font-weight:500;margin-bottom:20px}.expert-copy>p{font-size:16px;line-height:1.8;max-width:620px}.expert-points{margin:32px 0}.expert-points>div{display:flex;gap:20px;padding:18px 0;border-top:1px solid rgba(126,87,98,.18)}.expert-points span{font-size:10px;letter-spacing:.1em;color:var(--df-rose);font-weight:800}.expert-points strong{font-size:14px}.expert-points p{font-size:12px;margin-top:3px}
.consult-card{background:#211b1d;color:#fff;border-radius:28px;padding:55px 65px;display:grid;grid-template-columns:1fr .7fr;align-items:center;overflow:hidden;position:relative}.consult-card:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;border:1px solid rgba(255,255,255,.08);right:-100px;top:-180px}.consult-card h2{color:#fff;font-size:46px;font-weight:500;line-height:1.05;max-width:650px}.consult-card p{color:#c8bec1;max-width:620px;margin:15px 0 26px}.consult-card img{width:100%;max-height:280px;position:relative;z-index:2}.df-testimonials{background:#fff}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.df-testimonial{border:1px solid var(--df-line);border-radius:22px;background:#fff;padding:30px;box-shadow:none}.df-testimonial blockquote{font-family:var(--df-display);font-size:21px;line-height:1.45;color:var(--df-ink);margin:20px 0 28px}.author{border-top:1px solid var(--df-line);padding-top:17px}.author-avatar{background:var(--df-rose-soft);color:var(--df-rose-deep)}.author strong{font-size:12px}.author span{font-size:10px;color:var(--df-muted)}.df-faq{background:#f9f2f3}.faq-grid{max-width:900px;margin:auto}.faq-item{background:#fff;border:1px solid var(--df-line);border-radius:14px;margin-bottom:10px;overflow:hidden}.faq-question{width:100%;display:flex;justify-content:space-between;padding:21px 24px;background:none;border:0;font:600 13px var(--df-body);text-align:left;color:var(--df-ink);cursor:pointer}.faq-answer{padding:0 24px 20px;color:var(--df-muted);font-size:13px}.df-newsletter{background:#e9cfd7;padding:75px 0}.newsletter-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.newsletter-inner h2{font-size:43px;font-weight:500;margin-bottom:8px}.newsletter-inner p{color:#6e5d63}.newsletter-form{display:flex;gap:10px;width:min(100%,500px)}.newsletter-form input{height:52px;flex:1;border:1px solid #d8bcc5;border-radius:999px;padding:0 20px;background:#fff;outline:none}.newsletter-form input:focus{border-color:var(--df-rose)}
/* Shop */
.shop-section{padding:70px 0 110px}.shop-header{background:linear-gradient(135deg,#f3e1e6,#fcf8f6);border:1px solid var(--df-line);border-radius:28px;padding:55px 60px;margin-bottom:28px}.shop-header h1{font-size:60px;font-weight:500;margin-bottom:10px}.shop-header p{max-width:650px}.shop-filters{background:#fff;border:1px solid var(--df-line);border-radius:20px;padding:20px;margin-bottom:30px}.filter-form{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr auto auto;gap:12px;align-items:end}.form-control{width:100%;border:1px solid var(--df-line);border-radius:12px;background:#fcfaf9;min-height:46px;padding:0 13px;color:var(--df-ink);outline:none}.form-control:focus{border-color:#c87c98;box-shadow:0 0 0 4px rgba(184,63,104,.07)}.results-count{font-size:12px;color:var(--df-muted);margin-bottom:18px}.shop-section .products-grid{grid-template-columns:repeat(4,1fr)}
/* Product detail */

.product-detail{padding:65px 0 110px}.breadcrumb{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#8e8185;margin-bottom:35px}.product-detail-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:70px;align-items:start}.product-gallery{position:sticky;top:115px}.gallery-main{border-radius:26px;background:linear-gradient(145deg,#f8eeee,#fff);border:1px solid var(--df-line);min-height:600px;display:grid;place-items:center;overflow:hidden}.gallery-main img{width:100%;height:100%;max-height:600px;object-fit:contain;mix-blend-mode:multiply}.gallery-thumbs{display:flex;gap:10px;margin-top:12px}.gallery-thumb{width:76px;height:76px;border-radius:12px;border:1px solid var(--df-line);background:#fff;overflow:hidden}.gallery-thumb.active{border:2px solid var(--df-rose)}.product-info-detail{padding-top:15px}.product-meta{display:flex;justify-content:space-between;color:#918286;font-size:10px;text-transform:uppercase;letter-spacing:.12em}.product-info-detail h1{font-size:58px;font-weight:500;line-height:1.02;margin:15px 0}.product-rating-detail{display:flex;gap:12px;align-items:center}.rating-count{font-size:11px;color:var(--df-muted)}.product-price-detail{display:flex;align-items:baseline;gap:14px;margin:25px 0}.product-price-detail .current{font:500 35px var(--df-display)}.product-price-detail .original{text-decoration:line-through;color:#9d9094}.product-price-detail .discount{background:var(--df-rose-soft);color:var(--df-rose-deep);padding:6px 10px;border-radius:999px;font-size:10px;font-weight:800}.product-description{font-size:15px;line-height:1.85;color:#6f6468;border-top:1px solid var(--df-line);padding-top:24px}.product-availability{margin:22px 0}.in-stock{color:#397052;font-size:12px;font-weight:700}.stock-count{color:#8a7d81;font-size:11px}.product-actions-detail{display:flex;gap:12px;margin:28px 0}.quantity-selector{display:flex;border:1px solid var(--df-line);border-radius:999px;overflow:hidden;background:#fff}.quantity-selector button{width:44px;border:0;background:none;font-size:18px}.qty-input{width:45px;border:0;text-align:center;background:none}.product-actions-detail .add-to-cart{flex:1}.reviews-section{margin-top:90px;border-top:1px solid var(--df-line);padding-top:65px}.reviews-summary{background:#fff;border:1px solid var(--df-line);border-radius:20px;padding:28px;display:flex;align-items:center;gap:30px}.rating-number{font:500 50px var(--df-display)}.review-item{background:#fff;border:1px solid var(--df-line);border-radius:18px;padding:24px;margin-top:12px}.write-review{background:#f7ecef;border-radius:20px;padding:28px;margin-top:20px}
/* Global content/forms/footer/cart */
main{min-height:60vh}.mobile-menu{background:rgba(252,248,246,.98);border-bottom:1px solid var(--df-line)}.mobile-menu-inner a{font-size:13px;letter-spacing:.08em;text-transform:uppercase}.cart-overlay{background:rgba(30,19,23,.48);backdrop-filter:blur(4px)}.cart-sidebar{width:min(440px,94vw);background:#fff;border-left:1px solid var(--df-line);box-shadow:-20px 0 70px rgba(35,20,25,.12)}.cart-header{border-bottom:1px solid var(--df-line);padding:22px}.cart-header h3{font-size:25px;font-weight:500}.cart-item{padding:16px 0;border-bottom:1px solid #f0e7e9}.cart-item-image{border-radius:12px;background:#f8eeee}.site-footer{background:#211b1d;color:#d9cdd0;border-top:0}.site-footer h3,.site-footer h4{color:#fff}.site-footer a{color:#cbbec2}.site-footer a:hover{color:#fff}.form-group{margin-bottom:18px}.form-label{font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:700;color:#64585c;margin-bottom:7px;display:block}.textarea,.form-control{font-family:var(--df-body)}
@media(max-width:1100px){.df-hero-grid,.expert-grid,.product-detail-grid{grid-template-columns:1fr;gap:45px}.df-hero-art{min-height:430px}.df-products,.shop-section .products-grid{grid-template-columns:repeat(3,1fr)}.df-category-grid{grid-template-columns:repeat(2,1fr)}.product-gallery{position:static}.filter-form{grid-template-columns:repeat(3,1fr)}.consult-card{grid-template-columns:1fr}.newsletter-inner{display:block; padding:20px !important;}.newsletter-form{margin-top:25px}}
@media(max-width:760px){.container{padding-left:18px; padding-right:18px;}.site-header{position:relative}.header-inner{min-height:72px}.brand-logo{width:126px}.main-nav,.search-bar{display:none}.header-actions>a{display:none}.df-hero{padding:55px 0 45px}.df-hero-grid{gap:20px}.df-hero h1{font-size:50px}.df-hero-lead{font-size:14px}.df-hero-actions{align-items:flex-start;gap:17px}.df-proof-row{gap:12px;justify-content:center}.df-proof-row span{font-size:8px}.df-hero-art{min-height:330px}.df-hero-art>img{height:330px}.orbit-one{width:310px;height:310px}.orbit-two{width:240px;height:240px}.floating-card{right:0;bottom:0}.trust-strip-inner{overflow:auto;justify-content:flex-start;padding-top:16px;padding-bottom:16px;white-space:nowrap}.section{padding:70px 0}.section-heading-row{display:block}.section-heading-row .btn{margin-top:20px}.df-products,.shop-section .products-grid{grid-template-columns:repeat(2,1fr);gap:12px}.product-image{min-height:220px}.product-info{padding:15px}.product-name{font-size:18px}.product-bottom{display:block}.product-bottom .btn{width:100%;margin-top:10px}.df-category-grid,.testimonial-grid{grid-template-columns:1fr}.expert-art{min-height:360px}.expert-art img{min-height:360px}.consult-card{padding:35px 25px}.consult-card h2{font-size:35px}.shop-header{padding:35px 25px}.shop-header h1{font-size:46px}.filter-form{grid-template-columns:1fr 1fr}.gallery-main{min-height:390px}.product-info-detail h1{font-size:43px}.reviews-summary{display:block}.newsletter-inner h2{font-size:35px}.newsletter-form{display:block}.newsletter-form input{width:100%;margin-bottom:10px}.newsletter-form .btn{width:100%}}
@media(max-width:430px){.df-products,.shop-section .products-grid{grid-template-columns:1fr}.filter-form{grid-template-columns:1fr}.df-hero h1{font-size:44px}.df-proof-row i{display:none}}
