/* WordPress integration fixes for the AMCOLO design */
html { scroll-behavior: smooth; }
body { margin: 0; background: #fff; font-family: 'Inter', sans-serif; }
.wp-site-blocks { padding: 0 !important; }
.wp-site-blocks > * { margin-block-start: 0 !important; margin-block-end: 0 !important; }
.amc-main, .amc-main > .wp-block-post-content { margin: 0; padding: 0; max-width: none; }
.amc-main > .wp-block-post-content > * { margin-block-start: 0; margin-block-end: 0; max-width: none; }
:where(a.amc-btn) { display: inline-block; text-align: center; cursor: pointer; }
[data-amc-mclose] { background: none; border: 0; padding: 0; cursor: pointer; color: inherit; }

/* Header dropdowns */
.amc-dd-panel { display: none; z-index: 60; }
[data-amc-dd]:hover > .amc-dd-panel,
[data-amc-dd]:focus-within > .amc-dd-panel,
[data-amc-dd].is-open > .amc-dd-panel { display: block; animation: amcDrop .2s ease-out; }
@keyframes amcDrop { from { opacity: 0; transform: translateY(-.5rem); } to { opacity: 1; transform: none; } }

/* Admin bar offset for the fixed header */
body.admin-bar [data-amc-nav] { top: 32px; }
@media (max-width: 782px) { body.admin-bar [data-amc-nav] { top: 46px; } }

/* Mobile menu */
[data-amc-mobile].hidden { display: none !important; }
body.amc-menu-open { overflow: hidden; }

/* FAQ */
[data-amc-panel][hidden] { display: none; }

/* Contact form result */
.amc-notice { margin-bottom: 1.5rem; padding: 1rem 1.25rem; border-radius: 1rem; font-weight: 700; background: #ecfdf5; color: #065f46; border: 1px solid #a7f3d0; }

/* Reveal-on-scroll (replaces the React fade-ins) */
.amc-reveal { opacity: 0; transform: translateY(24px); transition: opacity .7s ease, transform .7s ease; }
.amc-reveal.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .amc-reveal { opacity: 1; transform: none; transition: none; } }

/* Blog */
.amc-wrap { max-width: 80rem; margin: 0 auto; padding-left: 1.5rem; padding-right: 1.5rem; }
.amc-blog-hero { background: #020617; color: #fff; padding: 10rem 0 6rem; }
.amc-blog-hero h1, .amc-blog-hero .wp-block-post-title { font-size: clamp(2.5rem, 6vw, 4.5rem); font-weight: 900; letter-spacing: -0.05em; line-height: 1; margin: 0 0 1.5rem; }
.amc-kicker { color: #00AEEF; font-weight: 700; text-transform: uppercase; letter-spacing: .2em; font-size: .75rem; margin: 0 0 1rem; }
.amc-lead { color: #94a3b8; font-size: 1.25rem; max-width: 42rem; margin: 0; }
.amc-lead-dark { color: #475569; font-size: 1.125rem; }
.amc-blog-list { padding-top: 6rem; padding-bottom: 6rem; }
.amc-cards { list-style: none; margin: 0; padding: 0; display: grid; gap: 2rem; grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); }
.amc-card { background: #f8fafc; border: 1px solid #f1f5f9; border-radius: 1.5rem; padding: 1.5rem; height: 100%; transition: box-shadow .3s, transform .3s; }
.amc-card:hover { box-shadow: 0 25px 50px -12px rgba(0,0,0,.15); transform: translateY(-2px); }
.amc-card img { border-radius: 1rem; width: 100%; height: auto; object-fit: cover; margin-bottom: 1rem; }
.amc-card .amc-date { font-size: .7rem; font-weight: 700; text-transform: uppercase; letter-spacing: .15em; color: #94a3b8; }
.amc-card .wp-block-post-title { font-size: 1.375rem; font-weight: 900; letter-spacing: -.02em; line-height: 1.2; margin: .5rem 0 .75rem; }
.amc-card .wp-block-post-title a:hover { color: #00AEEF; }
.amc-card .wp-block-post-excerpt { color: #475569; }
.amc-pager { margin-top: 3rem; display: flex; gap: 1rem; font-weight: 700; }
.amc-article { max-width: 48rem; padding-top: 4rem; padding-bottom: 6rem; color: #334155; font-size: 1.125rem; line-height: 1.8; }
.amc-article img { border-radius: 1.5rem; max-width: 100%; height: auto; }
.amc-article h2 { font-size: 2rem; font-weight: 900; color: #0f172a; letter-spacing: -.03em; margin: 2.5rem 0 1rem; }
.amc-article h3 { font-size: 1.5rem; font-weight: 800; color: #0f172a; margin: 2rem 0 .75rem; }
.amc-article p, .amc-article ul, .amc-article ol { margin: 0 0 1.25rem; }
.amc-article ul { list-style: disc; padding-left: 1.5rem; }
.amc-article ol { list-style: decimal; padding-left: 1.5rem; }
.amc-article a { color: #00AEEF; text-decoration: underline; }

/* Contact Form 7 — matches the original AMCOLO form */
.amc-cf7 p { margin: 0; }
.amc-cf7 br { display: none; }
.amc-cf7 .wpcf7-form-control-wrap { display: block; }
.amc-cf7 input[type="text"], .amc-cf7 input[type="email"], .amc-cf7 input[type="tel"], .amc-cf7 select, .amc-cf7 textarea {
  width: 100%; background: #f8fafc; border: 1px solid #e2e8f0; border-radius: 1rem; padding: 1.25rem 2rem;
  font: 500 1rem/1.5 'Inter', sans-serif; color: #0f172a; outline: none; transition: border-color .2s, box-shadow .2s; box-sizing: border-box; }
.amc-cf7 input:focus, .amc-cf7 select:focus, .amc-cf7 textarea:focus { border-color: #00AEEF; }
.amc-cf7 ::placeholder { color: #94a3b8; }
.amc-cf7 select { color: #475569; appearance: none; -webkit-appearance: none; cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%2394a3b8' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 1.75rem center; }
.amc-cf7 textarea { min-height: 160px; resize: none; }
.amc-cf7 .amc-submit { width: 100%; background-color: #00AEEF; color: #fff; border: 0; padding: 1.5rem; border-radius: 1.5rem; cursor: pointer;
  font: 900 1.25rem/1 'Inter', sans-serif; box-shadow: 0 25px 50px -12px rgba(0,174,239,.4); transition: background-color .2s, transform .1s;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m22 2-7 20-4-9-9-4Z'/%3E%3Cpath d='M22 2 11 13'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: calc(50% + 6rem) center; }
.amc-cf7 .amc-submit:hover { background-color: #0084b5; }
.amc-cf7 .amc-submit:active { transform: scale(.98); }
.amc-cf7 .wpcf7-spinner { display: block; margin: .75rem auto 0; }
.amc-cf7 .wpcf7-not-valid { border-color: #E6332A !important; }
.amc-cf7 .wpcf7-not-valid-tip { color: #E6332A; font-size: .8rem; font-weight: 700; margin: .5rem 0 0 1rem; }
.wpcf7 form .wpcf7-response-output { margin: 0 0 1.5rem; padding: 1rem 1.25rem; border-radius: 1rem; font-weight: 700; border-width: 1px; }
.wpcf7 form.sent .wpcf7-response-output { background: #ecfdf5; color: #065f46; border-color: #a7f3d0; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output { background: #fef2f2; color: #991b1b; border-color: #fecaca; }
