/* Segunda edición: llegada desde Instagram, portada fotográfica y lectura móvil. */
:root{--muted:#6c5d62}
.card-name{font:inherit;line-height:1.08;letter-spacing:inherit;min-height:48px}
.hero h1{font-size:clamp(86px,9vw,138px);line-height:.82;letter-spacing:-3px}
.hero h1 em{font-size:1.15em}
.hero-description{font-size:17px;line-height:1.65;margin-top:14px}
.hero-image img{object-position:50% 35%}
.hero-image:after{background:none}
.hero-copy{padding-bottom:65px}
.hero-actions .text-link{font-size:14px}
.hero-actions .button{font-size:14px;min-height:56px}
.contact-copy{display:flex;flex-direction:column;gap:3px}
.contact-copy small{font-size:12px;font-weight:400;opacity:.85}
.header-cta{min-height:44px}
.favorite-button{min-height:44px;min-width:44px}
.filter,.saved-filter{min-height:44px}
.detail-content .detail-caveat{font-size:12px!important}
@media(max-width:800px){
  html{scroll-padding-top:80px}
  .announcement{display:none}
  .header{height:76px;padding:0 22px;gap:18px}
  .header .brand>span{font-size:35px;letter-spacing:4px}
  .header .brand small{font-size:8px;letter-spacing:2.6px;margin-top:7px}
  .header-cta{font-size:12px;line-height:1.3;gap:10px;padding:8px 0}
  .menu-toggle{width:44px;height:44px;flex-shrink:0;padding:10px}
  .header nav{top:75px;padding:20px 25px;font-size:16px}
  .header nav a{padding:14px 0}
  .hero{display:grid;grid-template-columns:1fr;position:relative;isolation:isolate;min-height:650px;min-height:calc(100svh - 76px);background:#312e28;color:#fffaf4}
  .hero-image{position:absolute;inset:0;width:100%;height:100%;margin:0;max-height:none;min-height:0;z-index:-2;overflow:hidden}
  .hero-image>img{height:100%;min-height:0;width:100%;object-fit:cover;object-position:50% 43%}
  .hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(24,19,15,.3) 0%,rgba(24,19,15,0) 29%,rgba(24,19,15,.16) 43%,rgba(24,19,15,.65) 68%,rgba(24,19,15,.85) 100%);pointer-events:none}
  .hero-copy{width:100%;min-height:inherit;padding:28px 26px 28px;align-items:center;text-align:center;justify-content:flex-start}
  .hero .eyebrow{font-size:10px;letter-spacing:2.3px;line-height:1.6;color:#fffaf4;text-shadow:0 1px 8px #0009}
  .hero .tiny-flower{display:none}
  .hero h1{margin:auto 0 0;padding-top:190px;font-size:clamp(64px,17vw,96px);letter-spacing:-1.7px;line-height:.82;white-space:normal;color:#fffaf4}
  .hero h1 em{font-size:1.3em;color:inherit;line-height:1.04}
  .hero-description{margin-top:15px;font-size:15px;max-width:340px;color:#fffaf4;line-height:1.6}
  .hero-actions{width:100%;margin-top:22px;gap:10px;align-items:center}
  .hero-actions .button{width:100%;max-width:340px;min-height:54px;font-size:14px;background:var(--paper);color:var(--ink);border-color:var(--paper);justify-content:space-between;padding:15px 23px}
  .hero-actions .button:hover{background:#fff}
  .hero-actions .text-link{min-height:44px;font-size:14px;padding:10px 0 4px;color:#fffaf4;border-bottom:1px solid #ffffff80}
  .hero :focus-visible{outline-color:white}
  .values{margin:0 22px;padding:23px 0;gap:8px}
  .values p{font-size:12px;line-height:1.5;letter-spacing:0;display:flex;flex-direction:column;align-items:center;gap:8px}
  .values span{font-size:23px;margin:0}
  .section-wrap{padding-left:24px;padding-right:24px}
  .collection,.archive{padding-top:56px;padding-bottom:48px}
  .eyebrow,.section-intro .eyebrow,.process .eyebrow,.faq .eyebrow,.consultation-copy .eyebrow{font-size:11px;letter-spacing:1.7px}
  .intro-right,.hero-description,.intro-right .small{font-size:15px;line-height:1.75}
  .intro-right{max-width:100%}
  .intro-right .small{margin-top:12px;font-size:13px}
  .section-intro{display:block;margin-bottom:28px}
  .section-intro .intro-right{margin-top:22px}
  h2{font-size:52px;letter-spacing:-1.4px}
  .filter-tabs{gap:8px;margin-right:-24px;padding-right:24px}
  .filter{font-size:14px;min-height:46px;padding:9px 18px}
  .secondary-filters select,.saved-filter{font-size:13px;min-height:48px}
  .secondary-filters select{max-width:60%}
  .collection-status{font-size:12px;padding:16px 0}
  .collection-status>p:last-child{display:none}
  .product-grid{gap:30px 16px}
  .product-visual img{height:auto;aspect-ratio:3/4;object-fit:cover}
  .favorite-button{width:44px;height:44px;min-width:44px;min-height:44px;right:8px;top:8px;font-size:27px}
  .favorite-button[aria-pressed=true]{font-size:23px}
  .card-meta{font-size:10px;letter-spacing:.5px;margin-top:14px;gap:4px;flex-wrap:wrap}
  .product-card h3{font-size:28px;line-height:1.08}
  .card-name{padding:9px 0;align-items:flex-start;gap:6px}
  .card-name>span{font-size:20px}
  .price{font-size:13px;line-height:1.7}
  .price strong{font-weight:600}
  .price small{display:block;margin:0;font-size:11px}
  .button,.text-link,.personal-note .text-link,.process-heading .text-link,.faq .text-link,.consultation-copy .text-link{font-size:14px;min-height:48px}
  .button{padding:15px 22px}
  .collection-bottom .small,.gallery-disclaimer{font-size:12px;line-height:1.8;max-width:500px}
  .personal-note{padding:38px 25px}
  .personal-note>p{font-size:33px;line-height:1.15}
  .process-inner{grid-template-columns:1fr;padding-top:52px;padding-bottom:48px;gap:22px}
  .process h2{font-size:48px}
  .process-heading>p:not(.eyebrow),.process-steps p,.faq>div>p:not(.eyebrow),.faq-list details p,.consultation-copy>p:not(.eyebrow){font-size:15px;line-height:1.8;max-width:60ch}
  .process-steps h3{font-size:34px}
  .step-number{font-size:12px}
  .process-flower{display:none}
  .archive-tabs .text-link{font-size:13px;min-height:48px}
  .editorial-grid figcaption{font-size:23px;line-height:1.15}
  .faq{grid-template-columns:1fr;gap:30px}
  .faq-list summary{font-size:15px;line-height:1.6;padding-block:23px}
  .faq-list details p{padding-right:8px}
  .consultation-copy{display:block}
  .consultation-copy h2{font-size:64px;line-height:1.03}
  .consultation-details p{font-size:13px;line-height:1.8;align-items:flex-start;margin-bottom:12px}
  .consultation-details p>span{min-width:18px}
  .form-panel{padding:28px 22px;scroll-margin-top:95px}
  .form-progress{gap:8px}
  .form-progress li{flex-direction:column;text-align:center;gap:8px;font-size:11px;flex:1}
  .form-progress li>span{width:27px;height:27px;font-size:12px}
  legend{font-size:34px}
  .form-help{font-size:14px;line-height:1.7}
  .field>label{font-size:14px;line-height:1.6;margin-bottom:8px}
  .field small{font-size:12px}
  input:not([type=checkbox]),select,textarea,.field select,.form-row select,.form-row input[type=date]{font-size:16px;min-height:52px;padding:13px 12px}
  .field input::placeholder,.field textarea::placeholder{font-size:14px}
  .form-row{grid-template-columns:1fr;gap:9px}
  .form-panel .small,.consent,.selected-favorites,.notice{font-size:13px;line-height:1.75}
  .selected-favorites strong{font-size:11px}
  .consent{gap:12px}
  .consent input{width:22px;height:22px;flex-shrink:0}
  .form-actions{flex-wrap:wrap;gap:12px}
  .form-actions .button{font-size:14px;min-height:54px;flex:1;gap:14px}
  .form-actions .text-link{font-size:13px;display:flex;align-items:center}
  .form-error{font-size:14px}
  .inquiry-summary{font-size:14px;padding:16px}
  .inquiry-summary div{display:block;padding:7px 0}
  .inquiry-summary dt{font-size:12px}
  #message-preview{font-size:14px;line-height:1.7}
  .prepared-header p{font-size:14px}
  .prepared-actions .text-link{font-size:14px}
  .detail-content>p:not(.eyebrow),.detail-content dl{font-size:15px}
  .detail-content dt{font-size:12px}
  .detail-content .price,.detail-content .button{font-size:15px}
  .detail-content .detail-caveat{font-size:13px!important}
  .dialog-close{width:44px;height:44px}
  .privacy-content>p:not(.eyebrow){font-size:15px}
  .footer-top>div{font-size:14px;gap:22px}
  .footer-top>div a{min-height:44px;display:flex;align-items:center}
  .footer-bottom{font-size:12px;line-height:1.7}
  .footer-bottom button{min-height:44px}
  .footer{padding-bottom:115px}
  .mobile-contact{display:flex;padding:12px 24px calc(12px + env(safe-area-inset-bottom));min-height:76px;font-size:15px;line-height:1.35}
  .mobile-contact.is-hidden{display:none}
  .mobile-contact>.contact-copy{font-size:15px;line-height:1.35}
  .mobile-contact>span:last-child{font-size:26px}
  .toast{bottom:95px;font-size:13px}
  .empty-state p{font-size:15px}
}
@media(max-width:359px){
  .header{padding-inline:16px;gap:10px}
  .header-cta{font-size:11px}
  .header .brand>span{font-size:30px}
  .header .brand small{font-size:7px}
  .hero-copy{padding-inline:22px}
  .hero h1{font-size:64px;padding-top:150px}
  .hero .eyebrow{font-size:9px;letter-spacing:1.6px}
  .hero-description{font-size:14px}
  .section-wrap{padding-inline:20px}
  .product-grid{grid-template-columns:1fr;gap:30px}
  .product-visual img{aspect-ratio:4/5}
  .product-card h3{font-size:32px}
  .form-panel{padding-inline:18px}
  h2,.process h2{font-size:44px}
}
@media(min-width:561px) and (max-width:800px){
  .hero h1{font-size:110px;padding-top:260px}
  .hero-image>img{object-position:50% 38%}
  .hero-copy{padding-bottom:35px}
}
/* Dos recorridos: catálogo y consulta personalizada. Logo original, sin modificar. */
:root{--paper:#fff9f2}
.header{height:128px}
.brand{position:relative;width:120px;height:117px;overflow:hidden;display:block}
.brand img{position:absolute;width:162px;max-width:none;height:auto;left:-21px;top:-45px}
.header-cta,.menu-toggle{display:none!important}
.header nav{display:flex;gap:32px;font-size:15px}
.header nav a{min-height:48px;display:flex;align-items:center;gap:16px}
.footer .brand{width:200px;height:195px}
.footer .brand img{width:270px;left:-35px;top:-75px}
.product-card h3{margin-top:14px}
.catalog-inquire{font-size:13px;min-height:44px;margin-top:8px;border-bottom:0;padding:6px 0;gap:10px}
.mobile-contact a{font-size:13px;min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:9px;padding:5px 10px;flex:1}
.mobile-contact a+a{border-left:1px solid #ffffff60}
@media(max-width:800px){
 .header{height:112px;padding:0 20px;gap:20px}
 .header .brand{width:100px;height:98px;flex-shrink:0}
 .header .brand img{width:135px;left:-17.5px;top:-37.5px}
 .header nav{position:static;display:flex;flex-direction:column;align-items:flex-end;gap:0;padding:0;border:0;box-shadow:none;background:none;flex:1;font-size:13px}
 .header nav a{padding:5px 0;min-height:42px;gap:12px;line-height:1.3}
 .header nav a:after{display:none}
 html{scroll-padding-top:116px}
 .hero{min-height:calc(100svh - 112px)}
 .hero-copy{padding-top:24px}
 .hero h1{padding-top:155px}
 .hero-actions .text-link{width:100%;max-width:340px;justify-content:space-between;border:1px solid #ffffff90;padding:13px 23px;min-height:54px}
 .mobile-contact{padding:6px 10px calc(6px + env(safe-area-inset-bottom));gap:5px;min-height:66px}
 .mobile-contact a{font-size:13px}
 .catalog-inquire{font-size:12px;line-height:1.5}
 .form-panel{scroll-margin-top:130px}
 .footer-top{align-items:center}
}
@media(max-width:359px){.header{padding-inline:16px;gap:12px}.header nav{font-size:12px}.hero h1{padding-top:120px}.mobile-contact a{font-size:12px}}

/* Cabecera compacta: flor y firma originales, presentadas en horizontal. */
.header{height:82px}
.header .brand{display:flex;align-items:center;gap:6px;width:170px;height:52px;overflow:visible}
.logo-flower,.logo-wordmark{display:block;position:relative;overflow:hidden;flex-shrink:0}
.logo-flower{width:34px;height:50px}
.logo-wordmark{width:126px;height:32px}
.header .brand .logo-flower img{position:absolute;width:66px;height:auto;left:-15px;top:-19px;max-width:none}
.header .brand .logo-wordmark img{position:absolute;width:179px;height:auto;left:-26.5px;top:-148px;max-width:none}
@media(max-width:800px){
 .header{height:76px;gap:14px}
 .header .brand{width:164px;height:52px}
 .header nav{font-size:12px}
 .header nav a{min-height:36px;padding:5px 0;gap:8px}
 html{scroll-padding-top:80px}
 .hero{min-height:calc(100svh - 76px)}
 .form-panel{scroll-margin-top:95px}
}
@media(max-width:359px){
 .header{gap:9px;padding-inline:14px}
 .header .brand{width:139px;gap:3px}
 .logo-wordmark{width:108px;height:28px}
 .header .brand .logo-wordmark img{width:153px;left:-22.7px;top:-126.5px}
 .logo-flower{width:28px;height:44px}
 .header .brand .logo-flower img{width:57px;left:-13px;top:-16.5px}
 .header nav{font-size:11px}
}
.header .brand{flex-direction:row}
.header .logo-flower{height:34px}
@media(max-width:359px){.header .logo-flower{height:30px}}
