/* Flores Page Specific Styles */
.flores-page .flores-services { background: var(--background-gray-dark); }
.flores-page .flores-process { background: var(--background-light); }
.flores-page .flores-projects { background: var(--background-gray-dark); }
.flores-page .flores-testimonials { background: var(--background-light); }
.flores-page .flores-testimonials .testimonials-grid { margin-bottom: 2.5rem; }
/* Compact services redesign */
.flores-services-compact { background: var(--background-light); padding: clamp(3rem,5vw,4.5rem) 0 3.5rem; }
/* New 3-pillar services showcase */
.flores-services-showcase { background: var(--background-light); padding: clamp(3.2rem,5vw,4.8rem) 0 3.5rem; position:relative; }
.flores-services-showcase:before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(230,0,120,0.04),rgba(255,255,255,0)); pointer-events:none; }
.flores-services-showcase .services-head { max-width:860px; margin:0 auto 2.6rem; text-align:center; }
.flores-services-showcase .services-head .section-title { font-size:clamp(2rem,4.2vw,2.7rem); margin:0 0 .8rem; letter-spacing:-.5px; }
.flores-services-showcase .services-head .section-lead { font-size:clamp(.95rem,1.3vw,1.05rem); line-height:1.55; opacity:.78; margin:0; }
.flores-services-showcase .pillars { display:grid; gap:1.6rem; max-width:1200px; margin:0 auto 1.8rem; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); }
/* Gradient rosados distintos para cada pilar */
.flores-services-showcase .pillar-card { color:#fff; border-radius:24px; padding:2rem 1.75rem 2.15rem; position:relative; overflow:hidden; box-shadow:0 6px 18px -6px rgba(210,30,110,.45),0 2px 6px -2px rgba(180,15,90,.35); display:flex; flex-direction:column; gap:.9rem; background:linear-gradient(135deg,#d63384,#b02a5b); }
.flores-services-showcase .pillar-card:nth-child(2){ background:linear-gradient(135deg,#e7549a,#c12d64); }
.flores-services-showcase .pillar-card:nth-child(3){ background:linear-gradient(135deg,#f06cae,#d63384); }
.flores-services-showcase .pillar-card:before { content:''; position:absolute; inset:0; background:radial-gradient(circle at 70% 15%, rgba(255,255,255,0.18), transparent 60%); pointer-events:none; mix-blend-mode:screen; }
.flores-services-showcase .pillar-card.emphasis { outline:2px solid rgba(255,255,255,.3); }
.flores-services-showcase .pillar-title { font-size:clamp(1.18rem,2.05vw,1.55rem); margin:0; line-height:1.18; letter-spacing:.2px; font-weight:600; }
.flores-services-showcase .pillar-text { margin:0; font-size:.9rem; line-height:1.55; opacity:.92; }
.flores-services-showcase .services-more { max-width:1000px; margin:0 auto; background:#fff; border:1px solid rgba(0,0,0,.08); border-radius:20px; padding:1rem 1.25rem 1.4rem; box-shadow:0 4px 16px -4px rgba(0,0,0,.08); }
.flores-services-showcase details.services-more { display:block; }
.flores-services-showcase details.services-more > summary.services-summary { list-style:none; }
.flores-services-showcase .services-summary { cursor:pointer; font-weight:600; font-size:.85rem; letter-spacing:.6px; text-transform:uppercase; display:flex; align-items:center; gap:.5rem; list-style:none; }
.flores-services-showcase .services-summary::-webkit-details-marker { display:none; }
.flores-services-showcase .services-summary:after { content:'+'; font-size:1rem; transition:transform .35s; }
.flores-services-showcase .services-more[open] .services-summary:after { content:'–'; transform:rotate(180deg); }
.flores-services-showcase .services-list { list-style:none; margin:1.1rem 0 0; padding:0; display:grid; gap:.65rem .9rem; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.flores-services-showcase .service-item { background:linear-gradient(135deg,#fafafa,#ffffff); border:1px solid rgba(0,0,0,.05); border-radius:14px; padding:.85rem .85rem .9rem; display:flex; flex-direction:column; gap:.35rem; position:relative; overflow:hidden; }
.flores-services-showcase .service-item:before { content:''; position:absolute; inset:0; background:linear-gradient(130deg,rgba(230,0,120,0.08),rgba(255,255,255,0)); opacity:0; transition:opacity .4s; }
.flores-services-showcase .service-item:hover:before { opacity:1; }
.flores-services-showcase .svc-name { font-size:.78rem; font-weight:600; letter-spacing:.55px; text-transform:uppercase; color:#222; }
.flores-services-showcase .svc-desc { font-size:.82rem; line-height:1.4; opacity:.78; }
@media (max-width:800px){
	.flores-services-showcase .pillars { grid-template-columns:1fr; }
	.flores-services-showcase .pillar-card { padding:1.65rem 1.4rem 1.8rem; }
}
.flores-services-compact .services-intro { max-width:780px; margin:0 auto 2.2rem; text-align:center; }
.flores-services-compact .services-intro .section-title { margin:0 0 .6rem; font-size:clamp(1.9rem,4.2vw,2.6rem); }
.flores-services-compact .services-intro .section-tagline { font-size:clamp(.95rem,1.4vw,1.05rem); opacity:.85; line-height:1.5; }
.flores-services-compact .services-layout { display:grid; gap:2.5rem; align-items:start; max-width:1220px; margin:0 auto; grid-template-columns:repeat(auto-fit,minmax(320px,1fr)); }
.flores-services-compact .service-highlight { background:#fff; border-radius:20px; padding:2.2rem 2.1rem 2.4rem; position:relative; box-shadow:0 6px 18px -4px rgba(0,0,0,.08); display:flex; flex-direction:column; gap:1rem; }
.flores-services-compact .service-highlight-title { font-size:clamp(1.4rem,2.6vw,1.9rem); margin:0; line-height:1.15; }
.flores-services-compact .service-highlight-text { margin:0; font-size:.95rem; line-height:1.55; opacity:.85; }
.flores-services-compact .cta-inline { align-self:flex-start; font-weight:600; font-size:.85rem; letter-spacing:.5px; text-transform:uppercase; color:var(--color-accent, #b3005f); text-decoration:none; position:relative; padding:.4rem .9rem .4rem 0; }
.flores-services-compact .cta-inline:after { content:''; position:absolute; left:0; bottom:0; height:2px; width:100%; background:currentColor; opacity:.2; transition:opacity .3s; }
.flores-services-compact .cta-inline:hover:after { opacity:.55; }
.flores-services-compact .service-pills-wrapper { display:flex; }
.flores-services-compact .service-pills { list-style:none; margin:0; padding:0; display:grid; gap:.85rem; width:100%; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); }
.flores-services-compact .service-pill { background:#ffffff; border-radius:14px; padding:1rem .95rem 1.05rem; box-shadow:0 3px 10px -3px rgba(0,0,0,.07); position:relative; overflow:hidden; display:flex; flex-direction:column; gap:.45rem; min-height:112px; }
.flores-services-compact .service-pill:before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,255,255,0) 0%,rgba(230,0,120,0.06) 60%,rgba(230,0,120,0.12) 100%); opacity:0; transition:opacity .4s; }
.flores-services-compact .service-pill:hover:before { opacity:1; }
.flores-services-compact .service-pill .pill-name { font-weight:600; font-size:.85rem; letter-spacing:.5px; text-transform:uppercase; color:#222; }
.flores-services-compact .service-pill .pill-desc { font-size:.8rem; line-height:1.35; opacity:.75; }
@media (max-width:860px){
	.flores-services-compact .services-layout { grid-template-columns:1fr; }
	.flores-services-compact .service-pills { grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); }
}
.flores-page .flores-projects .section-intro { margin-bottom:2.25rem; }
/* Remove top gap */
.site-main.flores-page { padding-top:0 !important; }

/* Carousel (Flores) */
.flores-carousel-wrapper { position:relative; margin:2rem 0 3rem; }
.flores-carousel { display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; padding:4px 4px 12px; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
.flores-carousel::-webkit-scrollbar { display:none; }
.flores-carousel-item { flex:0 0 auto; width:230px; height:260px; scroll-snap-align:center; position:relative; overflow:hidden; border-radius:12px; }
.flores-carousel-item img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
.flores-carousel-item a { display:block; line-height:0; }
.flores-carousel-nav { position:absolute; top:50%; transform:translateY(-50%); background:rgba(0,0,0,0.45); color:#fff; border:none; width:42px; height:42px; border-radius:50%; cursor:pointer; font-size:24px; display:flex; align-items:center; justify-content:center; backdrop-filter:blur(4px); transition:background .25s; }
.flores-carousel-nav:hover { background:rgba(0,0,0,0.65); }
.flores-carousel-nav.prev { left:6px; }
.flores-carousel-nav.next { right:6px; }
@media (min-width:900px){ .flores-carousel-item { width:270px; height:300px; } }
@media (min-width:1200px){ .flores-carousel-item { width:320px; height:340px; } }

/* Hover subtle zoom */
.flores-carousel-item:hover img { transform:scale(1.04); transition:transform .5s ease; }
.flores-carousel-item img { transition:transform .6s ease; }