/*
Theme Name:   Wrapped
Theme URI:    https://wrapped.io/
Description:  Minimal block child theme for wrapped.io, based on Twenty Twenty-Five. Same look as the original site, no page builder, no slider.
Author:       wrapped.io
Template:     twentytwentyfive
Version:      2.0.2
Requires at least: 6.7
Tested up to: 7.1
Requires PHP: 7.4
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  wrapped
*/

/* Logo */
.wp-block-site-logo img, .custom-logo { height: 30px; width: auto; }
.wrapped-footer .custom-logo { height: 24px; }

/* Eyebrow label */
.wrapped-eyebrow { color: var(--wp--preset--color--accent-1); font-size: 12px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; margin-bottom: 4px; }

/* Outline button */
.wp-block-button.is-style-outline .wp-block-button__link { background: transparent; color: var(--wp--preset--color--accent-1); border: 2px solid var(--wp--preset--color--accent-1); padding: 15px 28px; }
.wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--wp--preset--color--accent-1); color: #fff; }

/* Check pills (as on the original site) */
.wrapped-check { list-style: none; padding-left: 0; margin: 0 0 24px; }
.wrapped-check li { display: flex; align-items: center; gap: 14px; background: var(--wp--preset--color--accent-2); border-radius: 999px; padding: 10px 22px 10px 10px; margin-bottom: 12px; color: var(--wp--preset--color--contrast); font-weight: 500; font-size: 14px; width: fit-content; max-width: 100%; }
.wrapped-check li::before { content: ""; flex: 0 0 32px; width: 32px; height: 32px; border-radius: 50%; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%233A8ED5' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E") center/16px no-repeat; }

/* Cards */
.wrapped-card { border: 1px solid var(--wp--preset--color--accent-6); border-radius: 6px; background: #fff; }
.wrapped-card .wp-block-image img { width: 56px; height: 56px; }

/* Contact form (Contact Form 7) – matches the original card */
.wrapped-form-card { background: #fff; border-radius: 4px; padding: 30px; box-shadow: 0 2px 12px rgba(0,0,0,.04); }
.wpcf7 .cf7-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.wpcf7 label { display: block; }
.wpcf7 p { margin: 0 0 16px; }
.wpcf7 input[type="text"], .wpcf7 input[type="email"], .wpcf7 textarea { width: 100%; padding: 11px 14px; border: 1px solid #e2e6ec; border-radius: 3px; font: inherit; font-size: 14px; background: #fff; }
.wpcf7 textarea { min-height: 120px; }
.wpcf7 input[type="submit"] { width: 100%; background: var(--wp--preset--color--accent-1); color: #fff; border: 0; border-radius: 3px; padding: 15px; font: inherit; font-size: 13px; font-weight: 500; text-transform: uppercase; letter-spacing: .03em; cursor: pointer; }
.wpcf7 input[type="submit"]:hover { background: var(--wp--preset--color--accent-3); }
.wpcf7 .wpcf7-not-valid-tip { color: #c0392b; font-size: .85em; }
/* Response messages: success becomes an overlay covering the whole form; errors stay a visible bar */
.wpcf7 form { position: relative; }
.wpcf7 form .wpcf7-response-output { margin: 16px 0 0; padding: 14px 18px; border: 0; border-radius: 4px; font-size: 14px; line-height: 1.5; }
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output { background: #fff3f2; color: #b3261e; border-left: 4px solid #c0392b; }
.wpcf7 form.sent .wpcf7-response-output { position: absolute; inset: 0; margin: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 12px; background: rgba(255,255,255,.97); color: var(--wp--preset--color--contrast); font-size: 20px; font-weight: 500; padding: 30px; border-radius: 4px; animation: wrapped-fade .35s ease; }
.wpcf7 form.sent .wpcf7-response-output::before { content: ""; width: 64px; height: 64px; border-radius: 50%; background: var(--wp--preset--color--accent-2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%233A8ED5' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M3.5 8.5l3 3 6-7'/%3E%3C/svg%3E") center/32px no-repeat; }
@keyframes wrapped-fade { from { opacity: 0; } to { opacity: 1; } }
@media (max-width: 600px) { .wpcf7 .cf7-grid { grid-template-columns: 1fr; } .wrapped-header .wp-block-buttons { display: none; } }
