@import url('/assets/css/_ratios.css');
:root{
  color-scheme: light;
  --color-brand:#0ea5e9;
  --color-brand-strong:#0b3b5e;
  --color-brand-soft:#38bdf8;
  --color-surface:#ffffff;
  --color-surface-alt:#f8fafc;
  --color-border:#dbeafe;
  --color-muted:#475569;
  --color-focus:#1d4ed8;
  --color-success:#047857;
  --color-error:#b91c1c;
  --shadow-sm:0 1px 2px rgba(15,23,42,.08);
  --shadow-md:0 6px 24px rgba(12,74,110,.08);
  --shadow-lg:0 20px 45px rgba(12,74,110,.15);
  --radius-md:0.75rem;
  --radius-lg:1rem;
  --space-0:0;
  --space-1:0.25rem;
  --space-2:0.5rem;
  --space-3:0.75rem;
  --space-4:1rem;
  --space-5:1.5rem;
  --space-6:2rem;
  --space-7:2.75rem;
  --space-8:3.5rem;
  --space-9:4.5rem;
  --font-size-xs:0.8125rem;
  --font-size-sm:0.9375rem;
  --font-size-base:1rem;
  --font-size-lg:1.125rem;
  --font-size-xl:clamp(1.75rem,2.4vw + 1.2rem,3.2rem);
  --font-size-2xl:clamp(2.25rem,4vw + 1rem,3.8rem);
  --container-padding:clamp(1rem,3vw,3rem);
  --container-sm:40rem;
  --container-md:56rem;
  --container-lg:70rem;
  --container-xl:75rem;
  --breakpoint-sm:30rem;
  --breakpoint-md:48rem;
  --breakpoint-lg:64rem;
  --breakpoint-xl:80rem;
  --header-height:72px;
}
*,*::before,*::after{box-sizing:border-box}
html{font-size:16px}
body{margin:0;font-family:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;line-height:1.6;color:#0f172a;background:var(--color-surface-alt);min-height:100vh;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;scroll-padding-top:var(--header-height,72px);padding-top:0}
img{max-width:100%;height:auto;display:block}
iframe{width:100%;border:0}
button,input,textarea,select{font:inherit;color:inherit}
a{color:var(--color-brand-strong);text-decoration:none}
a:hover,a:focus-visible{text-decoration:underline}
:where(a,button,input,textarea,select,.btn,[role="button"]):focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}
::selection{background:rgba(14,165,233,.25)}
.skip-link{position:absolute;left:50%;top:-100%;transform:translateX(-50%);background:var(--color-brand-strong);color:#fff;padding:var(--space-2) var(--space-4);border-radius:999px;z-index:200;box-shadow:var(--shadow-sm)}
.skip-link:focus-visible{top:var(--space-4)}
.container{width:min(100%,var(--container-lg));margin-inline:auto;padding-inline:var(--container-padding)}
@media (min-width:80rem){.container{width:min(100%,var(--container-xl))}}
.stack-2,.stack-3,.stack-4,.stack-5,.stack-6{display:flex;flex-direction:column}
.stack-2{gap:var(--space-2)}
.stack-3{gap:var(--space-3)}
.stack-4{gap:var(--space-4)}
.stack-5{gap:var(--space-5)}
.stack-6{gap:var(--space-6)}
.cluster{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}
.cluster-2{gap:var(--space-2)}
.cluster-3{gap:var(--space-3)}
.cluster-4{gap:var(--space-4)}
.cluster-5{gap:var(--space-5)}
.grid-auto{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr))}
.ratio-16x9{position:relative;aspect-ratio:16/9;border-radius:var(--radius-lg);overflow:hidden;background:rgba(14,165,233,.12)}
.ratio-16x9>img,.ratio-16x9>video{width:100%;height:100%;object-fit:cover}
.hide-sm{display:none !important}
@media (min-width:30rem){.hide-sm{display:revert !important}}
@media (min-width:64rem){.hide-lg{display:none !important}}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.96);backdrop-filter:saturate(180%) blur(8px);box-shadow:0 1px 0 rgba(15,23,42,.04);transition:box-shadow .2s ease,background .2s ease,border-color .2s ease;border-bottom:1px solid rgba(11,59,94,.08)}
.site-header.is-scrolled{box-shadow:0 8px 20px rgba(15,23,42,.12);background:rgba(255,255,255,.98)}
.site-header__bar{display:flex;align-items:center;gap:var(--space-4);min-height:72px;color:var(--color-brand-strong)}
.brand{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:700;font-size:var(--font-size-lg);color:inherit;text-decoration:none}
.brand span{white-space:nowrap}
#site-logo{max-height:48px;width:auto}
.nav-toggle{display:none;align-items:center;gap:var(--space-2);border:0;background:rgba(11,59,94,.08);color:var(--color-brand-strong);font-weight:600;padding:var(--space-2) var(--space-3);border-radius:999px;cursor:pointer;transition:background .2s ease,transform .2s ease}
.nav-toggle:hover,.nav-toggle:focus-visible{background:rgba(11,59,94,.12);transform:translateY(-1px)}
.nav-toggle-icon{display:grid;gap:4px}
.nav-toggle-icon span{display:block;width:20px;height:2px;border-radius:999px;background:currentColor;transition:transform .2s ease,opacity .2s ease}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(2){opacity:0}
.nav-toggle[aria-expanded="true"] .nav-toggle-icon span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.nav-toggle-label{font-size:var(--font-size-sm);letter-spacing:.02em;text-transform:uppercase}
.nav-close{display:none;border:0;background:rgba(255,255,255,.12);color:inherit;padding:var(--space-2);border-radius:999px;cursor:pointer;transition:background .2s ease,transform .2s ease}
.nav-close:hover,.nav-close:focus-visible{background:rgba(255,255,255,.24);transform:translateY(-1px)}
.site-nav{margin-left:var(--space-5);flex:1;color:var(--color-brand-strong)}
.site-nav__inner{display:flex;align-items:center;gap:var(--space-4)}
.site-nav__heading{display:none;align-items:center;justify-content:space-between;color:inherit}
.site-nav__title{font-weight:600;letter-spacing:.08em;text-transform:uppercase;font-size:var(--font-size-xs)}
.site-nav__list{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin:0;padding:0;list-style:none;flex:1}
.site-nav a{display:inline-flex;align-items:center;gap:var(--space-1);color:inherit;font-weight:600;padding:var(--space-1) var(--space-3);text-decoration:none;position:relative;border-radius:var(--radius-md);transition:background .2s ease,color .2s ease,transform .2s ease,opacity .2s ease}
.site-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-0.4rem;height:2px;background:currentColor;opacity:0;transform:scaleX(.4);transition:opacity .2s ease,transform .2s ease}
.site-nav a:hover,.site-nav a:focus-visible{background:rgba(11,59,94,.08);color:var(--color-brand-strong);text-decoration:none}
.site-nav a.is-active::after,.site-nav a[aria-current="page"]::after{opacity:1;transform:scaleX(1)}
.site-nav .nav-cta{margin-left:var(--space-4)}
.site-nav__cta{margin-left:auto;display:flex}
.site-nav__cta .nav-cta{margin-left:0}
.site-nav .nav-cta[aria-current="page"]{box-shadow:0 0 0 2px rgba(11,59,94,.2) inset}
.site-nav-overlay{display:none}
.mobile-call-cta{display:none;align-items:center;gap:var(--space-2);margin-left:auto;padding:var(--space-2) var(--space-3);border-radius:999px;background:rgba(11,59,94,.08);color:var(--color-brand-strong);font-weight:600;text-decoration:none;transition:background .2s ease,transform .2s ease}
.mobile-call-cta:hover,.mobile-call-cta:focus-visible{background:rgba(11,59,94,.12);transform:translateY(-1px)}
.mobile-call-icon svg{width:20px;height:20px;display:block}
.mobile-call-text{line-height:1}

@media (max-width:63.99rem){
  .nav-toggle{display:inline-flex;margin-left:auto}
  .nav-close{display:inline-flex}
  .site-nav{position:fixed;top:0;right:0;height:100vh;width:min(20rem,80vw);margin:0;transform:translateX(110%);transition:transform .3s ease;z-index:101;background:rgba(10,53,83,.98);backdrop-filter:blur(12px);padding:var(--space-6) var(--space-4);color:#fff}
  .site-nav.is-open{transform:translateX(0)}
  .site-nav__inner{flex-direction:column;align-items:stretch;height:100%;gap:var(--space-5)}
  .site-nav__heading{display:flex}
  .site-nav__list{flex-direction:column;align-items:stretch;justify-content:flex-start;gap:var(--space-2);margin:0}
  .site-nav__list li{display:flex}
  .site-nav a{padding:var(--space-2);border-radius:var(--radius-md)}
  .site-nav__cta{margin-left:0}
  .site-nav__cta .nav-cta{width:100%;justify-content:center}
  .site-nav-overlay{position:fixed;inset:0;background:rgba(15,23,42,.4);backdrop-filter:blur(2px);z-index:100;display:block;opacity:0;pointer-events:none;transition:opacity .3s ease}
  body.has-nav-open .site-nav-overlay{opacity:1;pointer-events:auto}
  body.has-nav-open{overflow:hidden}
  .site-nav{margin-left:0;flex:unset}
  .mobile-call-cta{display:inline-flex}
}

/* Main structure */
.site-main{display:block}

/* Hero */
.hero{background:linear-gradient(180deg,var(--color-brand-soft),#e0f7ff);padding-block:clamp(var(--space-6),6vw,var(--space-9));position:relative;overflow:hidden}
.hero.hero-light{background:linear-gradient(180deg,#f3fbff,#e0f7ff)} /* from Canva branch */
.hero-inner{display:grid;gap:var(--space-6);align-items:center}
.hero-copy h1{margin:0;font-size:var(--font-size-2xl);line-height:1.1;font-weight:600}
.hero-copy p{margin:0;font-size:var(--font-size-lg);color:var(--color-muted)}
.hero-actions{justify-content:flex-start}
.hero-actions .btn{margin:0}
.hero-media{box-shadow:var(--shadow-lg);background:rgba(255,255,255,.65)}
.hero-media[hidden]{display:none}
.hero-media img{border-radius:inherit}
@media (min-width:48rem){.hero-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Sections & cards */
.section{padding-block:clamp(var(--space-6),7vw,var(--space-9));}
.section + .section{border-top:1px solid rgba(15,23,42,.06);}
.section.section-surface{background:linear-gradient(180deg,#f8fbff,#eef7ff);border-top:0;}
.muted{color:var(--color-muted);font-size:var(--font-size-sm)}
.section-header{display:flex;flex-direction:column;gap:var(--space-2);max-width:min(38rem,100%);}
.section-header h2{margin:0;font-size:var(--font-size-xl);line-height:1.2;}
.section-eyebrow{margin:0;font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--color-brand-strong);}
.section-lead{margin:0;font-size:var(--font-size-lg);color:var(--color-muted);}
.card{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-4);box-shadow:var(--shadow-sm);}
.card-cta{background:linear-gradient(135deg,rgba(14,165,233,.12),rgba(14,165,233,.04));border:1px solid rgba(14,165,233,.2);box-shadow:var(--shadow-md);align-items:flex-start;}
.card-cta .cluster{justify-content:flex-start}
.card-cta .section-header{align-items:flex-start;text-align:left}
@media (max-width:63.99rem){
  .card-cta{align-items:center;text-align:center}
  .card-cta .section-header{align-items:center;text-align:center}
  .card-cta .cluster{justify-content:center}
}

[data-component-src="/partials/nav.html"]{display:block;min-height:72px}

.footer-nap{margin:0;font-size:var(--font-size-sm);display:flex;flex-wrap:wrap;gap:0.25rem 0.75rem;align-items:center;color:rgba(15,23,42,.8)}
.footer-nap a{color:inherit;font-weight:600;text-decoration:none}
.footer-nap a:hover,.footer-nap a:focus-visible{text-decoration:underline}

.card-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(19rem,100%),1fr));}

.social-embeds-section{background:linear-gradient(180deg,#f8fbff,#eef7ff);}
.social-embeds-body{display:grid;gap:var(--space-4);grid-template-columns:repeat(1,minmax(0,1fr));}
.social-embed{position:relative;display:flex;flex-direction:column;gap:var(--space-3);min-height:320px;}
.social-embed-header{display:flex;align-items:center;gap:var(--space-3);}
.social-embed-icon{display:inline-flex;width:2.25rem;height:2.25rem;color:var(--color-brand-strong);}
.social-embed-icon svg{width:100%;height:100%;display:block;}
.social-embed-title{margin:0;font-size:var(--font-size-lg);font-weight:600;}
.social-embed-body{display:flex;flex-direction:column;gap:var(--space-3);flex:1;}
.social-embed-placeholder{display:flex;flex-direction:column;gap:var(--space-3);justify-content:center;align-items:flex-start;padding:var(--space-4);border-radius:var(--radius-lg);background:rgba(14,165,233,.1);min-height:240px;flex:1;position:relative;overflow:hidden;}
.embed-note{margin:0;font-size:var(--font-size-sm);color:var(--color-muted);}
.embed-consent{display:flex;flex-direction:column;gap:var(--space-3);background:rgba(255,255,255,.95);border-radius:var(--radius-lg);padding:var(--space-3);box-shadow:var(--shadow-sm);max-width:32rem;}
.embed-consent-message{margin:0;font-size:var(--font-size-sm);color:var(--color-muted);}
.embed-poster{position:relative;width:100%;border-radius:var(--radius-lg);overflow:hidden;background:rgba(14,165,233,.16);min-height:220px;display:flex;align-items:center;justify-content:center;}
.embed-poster img{width:100%;height:100%;object-fit:cover;display:block;}
.embed-provider{position:absolute;top:var(--space-3);left:var(--space-3);padding:var(--space-1) var(--space-2);border-radius:999px;background:rgba(15,23,42,.8);color:#fff;font-size:var(--font-size-xs);letter-spacing:.1em;text-transform:uppercase;font-weight:600;}
.social-embed-status{margin:0;font-size:var(--font-size-sm);color:var(--color-muted);}
.social-embed-error{margin:0;font-size:var(--font-size-sm);color:var(--color-error);}
.social-embed-frame{border-radius:var(--radius-lg);overflow:hidden;background:rgba(14,165,233,.08);flex:1;}
.social-embed-frame iframe{width:100%;border:0;min-height:360px;}
.tiktok-embed-wrapper{width:100%;}
.social-embed-fallback{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:600;color:var(--color-brand-strong);text-decoration:none;}
.social-embed-fallback:hover,.social-embed-fallback:focus-visible{text-decoration:underline;}
.social-embed-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(1,minmax(0,1fr));}
.social-embed-grid .social-embed-item{height:100%;}
.social-embed-grid .social-embed-item .social-embed-body{flex:1;}
.social-embed-item{display:flex;flex-direction:column;gap:var(--space-3);height:100%;}
.social-embed-note{margin:0;font-size:var(--font-size-sm);color:var(--color-muted);}
.social-embed-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);}
.social-embed-handle{margin:0;font-size:var(--font-size-lg);font-weight:600;}
@media (min-width:40rem){.social-embeds-body{grid-template-columns:repeat(2,minmax(0,1fr));}.social-embed-placeholder{min-height:280px;}}
@media (min-width:64rem){.social-embeds-body{grid-template-columns:repeat(3,minmax(0,1fr));}.social-embed{min-height:420px;}.social-embed-placeholder{min-height:360px;}}
.social-embed[data-hide-captions="true"] .tiktok-embed>section,.social-embed[data-hide-captions="true"] .tiktok-embed h2,.social-embed[data-hide-captions="true"] .tiktok-embed p{display:none !important;}
.social-embed.has-error .social-embed-frame{display:none;}
.social-embed .btn{align-self:flex-start;}

.gallery-thumb-button{display:block;width:100%;padding:0;border:0;background:transparent;cursor:pointer;position:relative;border-radius:var(--radius-lg);overflow:hidden;}
.gallery-thumb-button:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px;}
.gallery-thumb-media{width:100%;border-radius:var(--radius-lg);overflow:hidden;background:rgba(14,165,233,.12);position:relative;}
.gallery-thumb-media img{width:100%;height:100%;object-fit:cover;background:var(--color-surface-alt);transition:transform .35s ease;}
.gallery-thumb-button:hover .gallery-thumb-media img{transform:scale(1.02);}
.gallery-item-badge{position:absolute;top:.75rem;left:.75rem;z-index:2;background:rgba(14,165,233,.92);color:#fff;font-size:.75rem;font-weight:600;letter-spacing:.02em;padding:.35rem .6rem;border-radius:999px;text-transform:uppercase;}
.gallery-card{gap:var(--space-3);}
.gallery-card-caption{margin:0;color:var(--color-muted);}
.gallery-card-service{margin:0;color:var(--color-muted);font-size:.85rem;text-transform:capitalize;}

.gallery-modal{position:fixed;inset:0;z-index:70;display:none;align-items:center;justify-content:center;padding:clamp(1rem,4vw,3rem);}
.gallery-modal.is-open{display:flex;}
.gallery-modal[hidden]{display:none !important;}
.gallery-modal__overlay{position:absolute;inset:0;background:rgba(15,23,42,.75);}
.gallery-modal__dialog{position:relative;z-index:1;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);max-width:min(90vw,72rem);width:min(90vw,72rem);padding:clamp(1.5rem,3vw,2.5rem);display:flex;flex-direction:column;gap:var(--space-4);outline:0;}
.gallery-modal__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);}
.gallery-modal__badge{font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-muted);}
.gallery-modal__close{width:2.5rem;height:2.5rem;border:0;border-radius:999px;background:rgba(148,163,184,.18);color:var(--color-muted);font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.gallery-modal__close:hover,.gallery-modal__close:focus-visible{background:rgba(14,165,233,.18);color:var(--color-brand-strong);outline:none;}
.gallery-modal__body{display:flex;flex-direction:column;gap:var(--space-4);}
.gallery-modal__figure{margin:0;display:flex;flex-direction:column;gap:var(--space-3);}
.gallery-modal__image{width:100%;height:auto;border-radius:var(--radius-lg);background:var(--color-surface-alt);}
.gallery-modal__caption{margin:0;color:var(--color-muted);font-size:.95rem;}
.gallery-modal__footer{display:flex;justify-content:flex-end;}
.gallery-modal__actions{display:flex;align-items:center;gap:var(--space-2);}
.gallery-modal__nav{border:0;border-radius:999px;background:rgba(15,23,42,.08);color:var(--color-ink);width:2.75rem;height:2.75rem;display:flex;align-items:center;justify-content:center;font-size:1.35rem;cursor:pointer;}
.gallery-modal__nav:disabled{opacity:.4;cursor:not-allowed;}
.gallery-modal__nav:hover:not(:disabled),.gallery-modal__nav:focus-visible{background:rgba(14,165,233,.18);color:var(--color-brand-strong);outline:none;}
.gallery-modal__compare-toggle{border:0;border-radius:999px;background:var(--color-brand-soft);color:var(--color-brand-strong);padding:.5rem 1rem;font-size:.9rem;font-weight:600;cursor:pointer;}
.gallery-modal__compare-toggle:hover,.gallery-modal__compare-toggle:focus-visible{background:rgba(14,165,233,.22);outline:none;}
.gallery-compare{display:flex;flex-direction:column;gap:var(--space-3);}
.gallery-compare__stage{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--color-surface-alt);}
.gallery-compare__pane{position:absolute;inset:0;overflow:hidden;}
.gallery-compare__pane img{width:100%;height:100%;object-fit:cover;}
.gallery-compare__pane--after{clip-path:inset(0 calc(100% - var(--compare-position,50%)) 0 0);}
.gallery-compare__divider{position:absolute;top:0;bottom:0;left:var(--compare-position,50%);width:2px;background:rgba(14,165,233,.9);transform:translateX(-1px);z-index:5;}
.gallery-compare__label{position:absolute;top:.75rem;left:.75rem;padding:.35rem .6rem;border-radius:999px;background:rgba(15,23,42,.75);color:#fff;font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;}
.gallery-compare__pane--after .gallery-compare__label{left:auto;right:.75rem;}
.gallery-compare__slider{width:100%;accent-color:var(--color-brand-strong);}

@media (max-width: 640px){
  .gallery-modal__dialog{width:100%;padding:1.25rem;}
  .gallery-modal__close{top:0.75rem;right:0.75rem;}
}
.gallery-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr));}
.service-grid{align-items:stretch}
.card.service-card{display:flex;flex-direction:column;gap:0;min-height:100%;overflow:hidden;padding:0}
.service-card-media{position:relative;width:100%;overflow:hidden;background:var(--color-brand-soft)}
.service-card-media img{display:block;width:100%;height:100%;object-fit:cover}
.service-card-body{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4)}
.service-card-title{margin:0;font-size:var(--font-size-lg)}
.service-card-excerpt{margin:0;color:var(--color-muted)}
.service-card-price{margin-top:auto;font-weight:700;color:var(--color-brand-strong)}
.service-card-actions{margin-top:auto}
.service-card-actions .btn{width:100%}

/* Buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);border-radius:999px;border:0;background:var(--color-brand-strong);color:#fff;font-weight:600;cursor:pointer;min-height:3rem;transition:transform .2s ease,box-shadow .2s ease;text-decoration:none}
.btn:focus-visible{box-shadow:0 0 0 3px rgba(14,165,233,.45)} /* from Canva branch */

.btn:hover{transform:translateY(-1px)}
.btn[data-quote-link]{
  background:var(--color-brand-strong);
  color:#fff;
}
.btn[data-quote-link]:hover,
.btn[data-quote-link]:active{
  background:#fff;
  color:var(--color-brand-strong);
  box-shadow:0 0 0 2px var(--color-brand-strong) inset;
}
/* Button styles */
.btn:active { transform: translateY(0); }
.btn-outline {
  background: transparent;
  color: var(--color-brand-strong);
  border: 2px solid var(--color-brand-strong);
}
.btn-small {
  padding: var(--space-2) var(--space-4);
  min-height: 2.75rem;
  font-size: var(--font-size-sm);
}
.btn.ghost {
  background: transparent;
  border: 1px solid var(--color-brand-strong);
  color: var(--color-brand-strong);
}
.btn.primary { background: var(--color-brand); }
.btn.whatsapp { background: #25d366; color: #fff; }
.btn[disabled] { opacity: .6; cursor: not-allowed; }

/* Form styles */
form.stack-3 input,
form.stack-3 textarea {
  width: 100%;
  padding: var(--space-3);
  border-radius: var(--radius-md);
  border: 1px solid var(--color-border);
  background: #fff;
  transition: border-color .2s ease, box-shadow .2s ease;
}
form.stack-3 input:focus-visible,
form.stack-3 textarea:focus-visible {
  border-color: var(--color-brand);
  box-shadow: 0 0 0 3px rgba(14,165,233,.25);
}
textarea { min-height: 7rem; resize: vertical; }

/* Section and footer styles */
.section-anchor { display: block; height: 0; margin: 0; padding: 0; }

.footer {
  background: #f3fbff;
  color: var(--color-brand-strong);
  padding-block: clamp(var(--space-6),6vw,var(--space-8));
}
.footer-inner {
  display: grid;
  gap: var(--space-6);
  grid-template-columns: repeat(auto-fit,minmax(16rem,1fr));
  align-items: flex-start;
}
.footer-logo{font-weight:700;font-size:var(--font-size-lg);text-decoration:none;color:inherit;display:inline-flex;align-items:center;gap:var(--space-2);}
.footer-heading{font-size:var(--font-size-xs);letter-spacing:.14em;text-transform:uppercase;color:rgba(15,23,42,.6);}
.footer-nav{display:flex;flex-direction:column;gap:var(--space-3);}
.footer-contact{display:flex;flex-direction:column;gap:var(--space-2);}
.footer-nav-list{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}
.footer-nav a{color:var(--color-brand-strong);font-weight:600;text-decoration:none}
.footer-nav a:hover,.footer-nav a:focus-visible{text-decoration:underline}
.footer-contact a{color:var(--color-brand-strong);font-weight:600;text-decoration:none}
.footer-contact a:hover,.footer-contact a:focus-visible{text-decoration:underline}
.footer-social{display:flex;align-items:center;gap:var(--space-3)}
.footer-social-list{display:flex;gap:var(--space-3);padding:0;margin:0;list-style:none}
.footer-social-item{display:flex}
.footer-social-link{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:rgba(14,165,233,.12);color:var(--color-brand-strong);transition:background .2s ease,transform .2s ease;text-decoration:none}
.footer-social-link:hover,.footer-social-link:focus-visible{background:var(--color-brand-strong);color:#fff;transform:translateY(-1px)}
.footer-social-icon svg{width:20px;height:20px;display:block}

@media (max-width:47.99rem){
  .footer{ text-align:center; }
  .footer-inner{grid-template-columns:1fr;}
  .footer-nav,.footer-contact{align-items:center;}
  .footer-nav-list{justify-items:center;}
}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media (min-width:48rem){
  .service-card-actions .btn{width:auto}
}

@media (max-width:47.99rem){
  .footer-inner{justify-content:center;text-align:center}
  .footer-meta{align-items:center}
  .footer-actions{align-items:center}
  .footer-actions strong{display:block}
}
.quote-shell{display:grid;gap:var(--space-5);align-items:start}
.wizard{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);background:var(--color-surface);box-shadow:var(--shadow-md);position:relative}
.wizard-progress{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-4);z-index:2}
body[data-page="quote"] .wizard-progress{position:sticky;top:var(--header-height,72px);padding:16px 20px;margin:0 -20px 18px;background:linear-gradient(180deg,rgba(255,255,255,.97),rgba(255,255,255,.9));backdrop-filter:blur(6px);border-bottom:1px solid #dbeafe;z-index:200}
.wizard-progress-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:999px;background:#f1f7ff;color:var(--color-brand-strong);font-weight:600;font-size:var(--font-size-sm);opacity:.7}
.wizard-progress-item.complete{background:#d7f3e7;color:var(--color-success);opacity:1}
.wizard-progress-item.current{background:var(--color-brand-strong);color:#fff;opacity:1}
.wizard-progress-index{display:inline-flex;width:24px;height:24px;border-radius:999px;align-items:center;justify-content:center;background:rgba(255,255,255,.2)}
.wizard-step h2{margin-top:0;font-size:1.35rem}
.wizard-step p{margin:var(--space-2) 0}
.wizard .field{margin:var(--space-4) 0;display:flex;flex-direction:column;gap:var(--space-2)}
.wizard .field label{font-weight:600;color:var(--color-brand-strong)}
.wizard .field .field-helper{color:var(--color-muted);font-size:var(--font-size-sm);margin-top:-0.25rem}
.wizard input[type=text],.wizard input[type=number],.wizard input[type=email],.wizard input[type=tel],.wizard textarea{width:100%;padding:var(--space-3);border:1px solid #cbd5f5;border-radius:var(--radius-md);background:#fff;transition:border-color .2s ease,box-shadow .2s ease}
.wizard input[type=text]:focus-visible,.wizard input[type=number]:focus-visible,.wizard input[type=email]:focus-visible,.wizard input[type=tel]:focus-visible,.wizard textarea:focus-visible{outline:2px solid transparent;border-color:var(--color-brand);box-shadow:0 0 0 3px rgba(14,165,233,.25)}
.wizard textarea{min-height:5.5rem;resize:vertical}
.option-grid{display:grid;gap:var(--space-3);margin:var(--space-3) 0;grid-template-columns:repeat(auto-fit,minmax(min(18rem,100%),1fr))}
.option-card{border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2);cursor:pointer;transition:all .2s ease;background:#f9fbff;position:relative;min-height:4.5rem}
.option-card input[type=radio]{position:absolute;opacity:0}
.option-card .option-title{font-weight:600;color:var(--color-brand-strong)}
.option-card .option-copy{color:var(--color-muted);font-size:var(--font-size-sm)}
.option-card.active{border-color:var(--color-brand);box-shadow:0 0 0 2px rgba(14,165,233,.25);background:#e0f7ff}
.option-card:focus-within{box-shadow:0 0 0 3px rgba(59,130,246,.35)}
/* Wizard actions (use design tokens) */
.wizard-actions{
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-top:var(--space-4);
  gap:var(--space-3);
  flex-wrap:wrap;
}

/* Buttons + states */
.btn.ghost{background:transparent;color:#0b3b5e;border:1px solid #0b3b5e}
.btn.primary{background:#0ea5e9}
.btn.whatsapp{background:#25d366;color:#fff}
.btn[disabled]{opacity:.6;cursor:not-allowed}

/* Wizard summary + alerts */
.wizard .summary-card{border:1px solid #dbeafe;border-radius:12px;padding:16px;background:#f8fcff;margin:16px 0}
.wizard .summary-card h3{margin-top:0}
.wizard .summary-grid{display:grid;gap:8px;font-size:0.95rem}
/* Booking UI */
.booking-request{width:100%}
.booking-card{border:1px solid #dbeafe;border-radius:16px;padding:24px;background:#fff;box-shadow:0 12px 28px rgba(12,74,110,.08);display:flex;flex-direction:column;gap:18px}
.booking-card h3{margin:0}
.booking-card .field{display:flex;flex-direction:column;gap:8px;margin:8px 0}
.booking-card .field label{font-weight:600;color:#0b3b5e}
.booking-card .field input,.booking-card .field select,.booking-card .field textarea{width:100%;padding:12px 14px;border:1px solid #cbd5f5;border-radius:12px;font:inherit;background:#fff;transition:border .2s ease,box-shadow .2s ease}
.booking-card .field input:focus-visible,.booking-card .field select:focus-visible,.booking-card .field textarea:focus-visible{outline:2px solid transparent;border-color:#0ea5e9;box-shadow:0 0 0 3px rgba(14,165,233,.25)}
.booking-inline{display:flex;flex-direction:column;gap:12px;margin-top:24px}
.booking-inline-header{display:flex;align-items:center;gap:10px}
.booking-badge{background:#0ea5e9;color:#fff;padding:4px 12px;border-radius:999px;font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em}
.booking-form-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.booking-summary{background:#e0f7ff;border-radius:12px;padding:12px 16px;color:#0b3b5e;font-weight:600}
.booking-summary.hidden{display:none !important}
.booking-banner{display:flex;align-items:center;gap:12px;margin:18px 0 0;padding:14px 18px;border-radius:14px;font-weight:600}
.booking-banner[data-status="success"]{background:#ecfdf5;color:#047857}
.booking-banner[data-status="error"]{background:#fef2f2;color:#b91c1c}
.booking-banner-icon{font-size:1.2rem}
.flatpickr-day.booking-weekend{color:#0b3b5e;font-weight:600}
.flatpickr-day.booking-day-disabled{color:#cbd5f5}
.flatpickr-day.booking-day-disabled:hover{background:transparent}
.btn.btn-loading{position:relative;color:rgba(255,255,255,.9)}
.btn.btn-loading::before{content:"";width:18px;height:18px;border-radius:50%;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;margin-right:8px;animation:spin .8s linear infinite;display:inline-block}
.btn.btn-loading{text-shadow:none}
.booking-inline .field select{padding:12px 14px;border:1px solid #cbd5f5;border-radius:12px;font:inherit;background:#fff}
.booking-inline .field select:focus-visible{outline:2px solid transparent;border-color:#0ea5e9;box-shadow:0 0 0 3px rgba(14,165,233,.25)}
.booking-inline .field input[readonly]{background:#fff;cursor:pointer}
.booking-inline .field .field-error{margin-top:-4px}
.booking-card .field textarea{min-height:90px}
.booking-addon-list{display:flex;flex-wrap:wrap;gap:10px}
.booking-addon-list label{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid #cbd5f5;border-radius:12px;background:#f8fbff;cursor:pointer}
.booking-addon-list input{accent-color:#0ea5e9}
.booking-success-note{margin-top:12px}
.booking-success-note .booking-banner{margin:0}

/* Alerts (shared) */
.alert{border:1px solid #bfdbfe;background:#eff6ff;border-radius:12px;padding:12px 16px;margin:8px 0;color:#0b3b5e;font-size:0.95rem}
.alert.info{border-color:#bae6fd;background:#ecfeff}

/* Add-on catalog */
.addon-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.addon-card .addon-price{font-weight:600;color:#0b3b5e}
.addon-card .addon-badge{display:inline-flex;align-items:center;gap:4px;background:#e0f2fe;color:#0b3b5e;font-size:0.75rem;font-weight:600;padding:2px 8px;border-radius:999px}
.addon-card.locked{opacity:.85;cursor:default}
.addon-variant{font-size:0.85rem}
.addon-quantity{margin-top:12px}
.quantity-input{display:flex;align-items:center;gap:8px}
.quantity-input input[type=number]{max-width:90px;text-align:center}
.quantity-btn{border:1px solid #cbd5f5;background:#fff;border-radius:8px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:600;font-family:inherit;cursor:pointer}
.quantity-btn:disabled{opacity:.5;cursor:not-allowed}

/* Auto-added list + totals */
.addon-list.auto{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.addon-auto-item{padding:8px 0;border-bottom:1px solid #e5f3ff}
.addon-auto-item:last-child{border-bottom:0}
.addon-totals{border-top:1px solid #dbeafe;margin-top:24px;padding-top:12px;font-weight:600;color:#0b3b5e;display:grid;gap:4px}

/* Summary breakdown */
.summary-list{padding-left:20px;margin:0 0 12px 0}
.summary-bundle{border-top:1px dashed #cbd5f5;padding-top:8px;margin-top:12px}
.summary-bundle ul{margin:8px 0;padding-left:20px}

.hidden{display:none !important}
.card.success{border-color:#bbf7d0;background:#f0fdf4}
/* Links & map preview */
.link-call { color:#0b3b5e; font-weight:600; }
.map-preview { display:flex; flex-direction:column; gap:8px; margin-top:4px; }
.map-preview-image { border-radius:12px; overflow:hidden; box-shadow:0 4px 12px rgba(12,74,110,.12); }
.map-preview-image img { display:block; width:100%; height:auto; }
.map-preview-link { font-weight:600; color:#0ea5e9; text-decoration:none; }
.map-preview-link:hover,
.map-preview-link:focus-visible { text-decoration:underline; }

/* WhatsApp banner & floating CTA */
.whatsapp-ads-banner { margin:32px auto 0; max-width:1080px; padding:20px 26px; border-radius:18px; background:linear-gradient(90deg,#0ea5e9,#38bdf8); box-shadow:0 24px 50px rgba(14,165,233,.25); position:relative; z-index:12; display:block; }
.whatsapp-ads-banner.is-floating { position:fixed; bottom:96px; left:24px; max-width:320px; margin:0; padding:18px 22px; z-index:40; }
.whatsapp-ads-link { display:flex; align-items:center; gap:12px; color:#fff; font-weight:700; text-decoration:none; }
.whatsapp-ads-link:focus-visible { outline:2px solid #fff; outline-offset:4px; }
.whatsapp-ads-icon { width:36px; height:36px; border-radius:50%; background:#fff; color:#16a34a; display:inline-flex; align-items:center; justify-content:center; box-shadow:0 8px 20px rgba(22,163,74,.3); }
.whatsapp-ads-icon svg { width:20px; height:20px; }
.whatsapp-ads-text { font-size:1.05rem; }
.whatsapp-ads-banner.is-floating .whatsapp-ads-link { justify-content:center; }

.qa-panel { border:1px dashed #cbd5f5; border-radius:12px; padding:16px; background:#f8fafc; font-size:0.85rem; white-space:pre-wrap; word-break:break-word; }

.floating-quote-button { position:fixed; right:20px; bottom:24px; background:#25d366; color:#fff; display:inline-flex; align-items:center; gap:10px; padding:14px 20px; border-radius:999px; font-weight:700; box-shadow:0 12px 30px rgba(37,211,102,.4); text-decoration:none; z-index:30; transition:transform .2s ease, box-shadow .2s ease; }
.floating-quote-button:hover,
.floating-quote-button:focus-visible { transform:translateY(-2px); box-shadow:0 16px 34px rgba(37,211,102,.5); }
.floating-quote-icon { font-size:1.25rem; }
.floating-quote-text { white-space:nowrap; }

.floating-whatsapp-button { position:fixed; right:16px; bottom:calc(16px + var(--footer-safe,0px)); width:56px; height:56px; border-radius:9999px; background:#0ea5e9; color:#fff; display:flex; align-items:center; justify-content:center; text-decoration:none; box-shadow:0 14px 32px rgba(14,165,233,.35); z-index:9999; transition:transform .2s ease, box-shadow .2s ease; cursor:pointer; }
.floating-whatsapp-button[data-position="left"] { right:auto; left:16px; }
.floating-whatsapp-button:hover,
.floating-whatsapp-button:focus-visible { transform:translateY(-1px); box-shadow:0 20px 36px rgba(14,165,233,.4); }
.floating-whatsapp-button:focus-visible { outline:3px solid rgba(255,255,255,.9); outline-offset:4px; }
.floating-whatsapp-icon svg { width:28px; height:28px; display:block; }

.floating-whatsapp-notice { position:fixed; right:16px; bottom:calc(16px + var(--footer-safe,0px) + 56px + 12px); background:rgba(15,23,42,.9); color:#fff; padding:10px 12px; border-radius:12px; box-shadow:0 10px 24px rgba(15,23,42,.32); max-width:240px; font-size:0.85rem; line-height:1.3; z-index:9998; }
.floating-whatsapp-notice[data-position="left"] { right:auto; left:16px; }

@media (prefers-reduced-motion: reduce) {
  .floating-whatsapp-button,
  .floating-whatsapp-button:hover,
  .floating-whatsapp-button:focus-visible,
  .floating-quote-button,
  .floating-quote-button:hover,
  .floating-quote-button:focus-visible {
    transition: none;
    transform: none !important;
  }
}

/* Keep consistent offset when WA button is present */
.has-floating-whatsapp .floating-quote-button { bottom:84px; }

/* Status + form feedback (use theme variables) */
.status-error   { color: var(--color-error); }
.status-success { color: var(--color-success); }
.status-info    { color: var(--color-brand-strong); }
.field-error    { color: var(--color-error); font-size: var(--font-size-sm); margin: 0; }

.input-error,.option-grid[data-has-error=true]{border-color:#f97316 !important;box-shadow:0 0 0 1px rgba(249,115,22,.4)}
.option-grid[data-has-error=true] .option-card{border-color:#f97316}
.wizard[aria-busy="true"]{cursor:progress}
.wizard-step-title:focus-visible{outline:2px solid rgba(59,130,246,.5);outline-offset:4px}
/* Spinner used by .btn.btn-loading */
@keyframes spin { 
  to { transform: rotate(360deg); } 
}

/* Canva Design Library (new) */
.design-card-body h3{margin:0;font-size:1.1rem;color:#0b3b5e}
.design-card-description{margin:0;color:#4b5563;font-size:0.95rem}
.design-card-tag{align-self:flex-start;background:#e0f7ff;color:#0b3b5e;font-weight:600;font-size:0.8rem;border-radius:999px;padding:4px 10px}
.design-card-actions{display:flex;gap:10px;padding:0 18px 18px;margin-top:auto;flex-wrap:wrap}
.design-preview-modal{display:none}
.design-preview-modal.is-open{display:flex;position:fixed;inset:0;z-index:60}
.design-preview-overlay{background:rgba(15,23,42,.72);display:flex;align-items:center;justify-content:center;flex:1;padding:24px}
.design-preview-dialog{background:#fff;border-radius:20px;max-width:960px;width:100%;box-shadow:0 30px 70px rgba(11,59,94,.25);display:flex;flex-direction:column;max-height:90vh}
.design-preview-header{display:flex;justify-content:space-between;align-items:center;padding:18px 22px;border-bottom:1px solid #e2f0ff}
.design-preview-header h2{margin:0;font-size:1.2rem;color:#0b3b5e}
.design-preview-close{background:transparent;border:0;color:#0b3b5e;font-size:1.8rem;cursor:pointer;line-height:1;border-radius:999px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center}
.design-preview-close:focus-visible{outline:2px solid rgba(14,165,233,.45)}
.design-preview-body{padding:0 22px 26px;display:flex;flex-direction:column;gap:18px;overflow-y:auto}
.design-preview-frame{position:relative;width:100%;padding-top:56.25%;border-radius:16px;overflow:hidden;box-shadow:0 18px 38px rgba(11,59,94,.18);background:#f8fafc}
.design-preview-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.design-preview-fallback{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center}
.design-preview-fallback img{width:100%;max-width:420px;border-radius:18px;box-shadow:0 12px 32px rgba(11,59,94,.15)}
.design-preview-fallback-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.design-preview-modal .hidden{display:none}
body.modal-open{overflow:hidden}
.canva-inline-embed{margin:24px 0}
.canva-inline-wrapper{position:relative}
.canva-inline-frame{position:relative;padding-top:56.25%;border-radius:18px;overflow:hidden;box-shadow:0 16px 32px rgba(11,59,94,.18);background:#f1f7ff}
.canva-inline-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.canva-inline-loading{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.85);color:#0b3b5e;font-weight:600;font-size:1.05rem}
.canva-inline-fallback{margin-top:18px;display:flex;flex-direction:column;align-items:center;gap:12px;padding:18px;border-radius:16px;border:1px dashed #cbd5f5;background:#f8fafc}
.canva-inline-fallback img{max-width:420px;width:100%;border-radius:12px}
.canva-inline-fallback-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}

/* QA panel + floating CTA */
.qa-panel{
  border:1px dashed var(--color-border);
  border-radius:var(--radius-md);
  padding:var(--space-4);
  background:var(--color-surface-alt);
  font-size:var(--font-size-sm);
  white-space:pre-wrap;
  word-break:break-word;
}
.floating-quote-button{
  position:fixed;
  right:var(--space-4);
  bottom:var(--space-5);
  background:#25d366;
  color:#fff;
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  padding:var(--space-3) var(--space-5);
  border-radius:999px;
  font-weight:700;
  box-shadow:0 12px 30px rgba(37,211,102,.4);
  text-decoration:none;
  z-index:90;
  transition:transform .2s ease,box-shadow .2s ease;
}
.floating-quote-button:hover,
.floating-quote-button:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(37,211,102,.5);
}

.qa-panel{
  border:1px dashed var(--color-border);
  border-radius:var(--radius-md);
  padding:var(--space-4);
  background:var(--color-surface-alt);
  font-size:var(--font-size-sm);
  white-space:pre-wrap;
  word-break:break-word;
}
.floating-quote-button{
  position:fixed;
  right:var(--space-4);
  bottom:var(--space-5);
  background:#25d366;
  color:#fff;
  display:inline-flex;
  align-items:center;
  gap:var(--space-2);
  padding:var(--space-3) var(--space-5);
  border-radius:999px;
  font-weight:700;
  box-shadow:0 12px 30px rgba(37,211,102,.4);
  text-decoration:none;
  z-index:90;
  transition:transform .2s ease,box-shadow .2s ease;
}
.floating-quote-button:hover,
.floating-quote-button:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 16px 34px rgba(37,211,102,.5);
}

/* S15 mobile tweak (keep) */
@media (max-width:47.99rem){
  .floating-quote-button{
    left:var(--space-4);
    right:var(--space-4);
    justify-content:center;
  }
}

/* Main responsive rules (keep) */
@media (max-width:900px){
}

@media (max-width:720px){
  .wizard-actions{flex-direction:column;align-items:stretch;}
  .wizard-actions .btn{width:100%;text-align:center;}
}
.hero.quote-hero{background:linear-gradient(180deg,#f1f5f9,#fff)}
.hero.quote-hero .hero-copy p{max-width:36rem}
@media (max-width:47.99rem){
  .wizard-actions{flex-direction:column;align-items:stretch}
/* Wizard actions full-width on small screens */
.wizard-actions .btn{width:100%;text-align:center}

/* Canva designs mobile refinements */
.designs-toolbar{flex-direction:column;align-items:stretch}
.designs-filter-wrap{width:100%}
.design-filter{flex:1;text-align:center}

@media (max-width:768px){
  .quote-shell{padding:16px}
  .wizard{padding:20px}
  .wizard-actions{gap:16px}
  .design-preview-dialog{max-height:calc(100vh - 40px)}
  .design-preview-body{padding:0 16px 20px}
}

/* 30rem = 480px baseline rules from main + Canva tweaks */
@media (max-width:30rem){
  .hero-inner{grid-template-columns:1fr;}
  .section{padding-block:var(--space-6);}

  /* Small-screen layout tweaks */
  .option-grid{grid-template-columns:1fr;}
  .hero{padding:48px 16px;}
  .floating-quote-button{right:16px;left:16px;justify-content:center;}
  .floating-quote-text{font-size:0.95rem;}

  /* Social banner rules (compact) */
  .whatsapp-ads-banner{margin:24px 16px;}
  .whatsapp-ads-banner.is-floating{left:16px;right:16px;bottom:88px;max-width:none;}

  /* WhatsApp floating button + notice */
  .floating-whatsapp-button{width:56px;height:56px;right:16px;bottom:calc(16px + var(--footer-safe,0px));}
  .floating-whatsapp-button[data-position="left"]{left:16px;}
  .floating-whatsapp-notice{right:16px;bottom:calc(16px + var(--footer-safe,0px) + 56px + 10px);}
  .floating-whatsapp-notice[data-position="left"]{left:16px;}
  .has-floating-whatsapp .floating-quote-button{bottom:84px;}

  /* Canva design cards compact */
  .designs-section{padding:24px 16px 60px}
  .design-card-actions{flex-direction:column}
  .design-card-actions .btn{width:100%;justify-content:center}
  .design-preview-dialog{border-radius:14px}
  .design-preview-header{padding:14px 16px}
  .design-preview-body{padding:0 14px 18px}
}
.social-embed-profile .social-embed-body{align-items:flex-start;}
@media (min-width:40rem){.social-embed-grid{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (min-width:64rem){.social-embed-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
