{"id":7726,"date":"2025-10-20T13:21:13","date_gmt":"2025-10-20T13:21:13","guid":{"rendered":"https:\/\/twobirdsonestoned.co\/?page_id=7726"},"modified":"2025-10-21T12:09:01","modified_gmt":"2025-10-21T12:09:01","slug":"whos-typing-da-words","status":"publish","type":"page","link":"https:\/\/twobirdsonestoned.co\/pl\/whos-typing-da-words\/","title":{"rendered":"Who&#8217;s typing da words?"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"7726\" class=\"elementor elementor-7726\" data-elementor-post-type=\"page\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a1098dc e-flex e-con-boxed e-con e-parent\" data-id=\"a1098dc\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1485cea elementor-widget elementor-widget-html\" data-id=\"1485cea\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    \n    <!-- Primary Meta Tags -->\n    <title>Who's Typing Da Words - Two Birds One Stoned | Meet James<\/title>\n    <meta name=\"title\" content=\"Who's Typing Da Words - Two Birds One Stoned | Meet James\">\n    <meta name=\"description\" content=\"Meet James Gallagher, the voice behind Two Birds One Stoned. From Dublin tech to Australian cannabis education, this is the journey that shaped the platform.\">\n    <meta name=\"keywords\" content=\"James Gallagher, Two Birds One Stoned, cannabis education, founder story, cannabis advocate\">\n    <meta name=\"author\" content=\"James Gallagher\">\n    <meta name=\"robots\" content=\"index, follow\">\n    \n    <!-- Canonical URL -->\n    <link rel=\"canonical\" href=\"https:\/\/twobirdsonestoned.co\/who\/\">\n    \n    <!-- Favicon and Icons -->\n    <link rel=\"icon\" type=\"image\/x-icon\" href=\"\/favicon.ico\">\n    \n    <!-- Fonts -->\n    <link href=\"https:\/\/fonts.googleapis.com\/css2?family=Montserrat:wght@400;600;700&display=swap\" rel=\"stylesheet\">\n    \n    <style>\n        \/* Reset and base styles *\/\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n        }\n\n        html {\n            background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 25%, #2a2a2a 50%, #1a1a1a 75%, #0a0a0a 100%);\n            width: 100%;\n            min-height: 100vh;\n            margin: 0;\n            padding: 0;\n            scroll-behavior: smooth;\n        }\n\n        body {\n            font-family: 'Montserrat', sans-serif;\n            background: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 25%, #2a2a2a 50%, #1a1a1a 75%, #0a0a0a 100%);\n            color: #fff;\n            width: 100%;\n            min-height: 100vh;\n            margin: 0;\n            padding: 0;\n            line-height: 1.6;\n        }\n\n        \/* VIDEO MODAL STYLES *\/\n        .video-modal {\n            display: none;\n            position: fixed;\n            z-index: 10000;\n            left: 0;\n            top: 0;\n            width: 100%;\n            height: 100%;\n            background-color: rgba(0, 0, 0, 0.9);\n            backdrop-filter: blur(5px);\n        }\n\n        .video-modal-content {\n            position: relative;\n            margin: 2% auto;\n            width: 90%;\n            max-width: 800px;\n            height: 80vh;\n            max-height: 600px;\n            background: #1d1d1d;\n            border-radius: 15px;\n            border: 2px solid rgba(156,175,136,0.3);\n            box-shadow: 0 20px 40px rgba(0, 0, 0, 0.5);\n            overflow: hidden;\n            display: flex;\n            flex-direction: column;\n        }\n\n        .video-modal-header {\n            padding: 1rem 1.5rem;\n            background: rgba(244, 197, 66, 0.1);\n            border-bottom: 1px solid rgba(156,175,136,0.3);\n            display: flex;\n            justify-content: space-between;\n            align-items: center;\n        }\n\n        .video-modal-title {\n            color: #F4C542;\n            font-size: 1.2rem;\n            font-weight: 600;\n            margin: 0;\n        }\n\n        .video-modal-close {\n            background: none;\n            border: none;\n            color: #fff;\n            font-size: 2rem;\n            cursor: pointer;\n            padding: 0;\n            width: 40px;\n            height: 40px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            border-radius: 50%;\n            transition: all 0.3s ease;\n        }\n\n        .video-modal-close:hover {\n            background: rgba(255, 255, 255, 0.1);\n            transform: rotate(90deg);\n        }\n\n        .video-container {\n            flex: 1;\n            position: relative;\n            background: #000;\n        }\n\n        .video-container iframe {\n            width: 100%;\n            height: 100%;\n            border: none;\n        }\n\n        \/* Light theme styles for modal *\/\n        .light-theme .video-modal-content {\n            background: #ffffff;\n            border: 2px solid #000000;\n        }\n\n        .light-theme .video-modal-header {\n            background: rgba(184, 134, 11, 0.1);\n            border-bottom: 1px solid #000000;\n        }\n\n        .light-theme .video-modal-title {\n            color: #B8860B;\n        }\n\n        .light-theme .video-modal-close {\n            color: #2A2A2A;\n        }\n\n        .light-theme .video-modal-close:hover {\n            background: rgba(0, 0, 0, 0.1);\n        }\n\n        \/* Video link styling *\/\n        .video-link {\n            color: #4CAF50;\n            text-decoration: underline;\n            cursor: pointer;\n            transition: color 0.3s ease;\n            font-weight: 500;\n        }\n\n        .video-link:hover {\n            color: #45a049;\n        }\n\n        .light-theme .video-link {\n            color: #B8860B;\n        }\n\n        .light-theme .video-link:hover {\n            color: #A0750A;\n        }\n\n        \/* PAGE SECTION *\/\n        .about-page {\n            background: transparent;\n            margin: 0;\n            min-height: 100vh;\n            width: 100%;\n            padding: 0;\n            position: relative;\n            padding-top: 150px;\n            padding-bottom: 4rem;\n        }\n\n        \/* Container *\/\n        .tbos-container {\n            max-width: 1200px;\n            margin: 0 auto;\n            padding: 0 2rem;\n            width: 100%;\n        }\n\n        \/* Title Section *\/\n        .title-container {\n            margin-bottom: 6rem;\n            text-align: center;\n            opacity: 0;\n            transform: translateY(-20px);\n            transition: all 0.8s ease;\n        }\n\n        .about-page .tbos-section-title {\n            font-family: 'Montserrat', sans-serif;\n            color: #ffffff;\n            word-break: break-word;\n        }\n\n        .page-subtitle {\n            font-size: clamp(12px, 2.5vw, 18px);\n            line-height: 1.4;\n            margin-bottom: 0;\n            margin-top: clamp(20px, 5vw, 30px);\n            text-align: center;\n            color: #E3E3DC;\n            opacity: 0.9;\n        }\n\n        \/* Content Cards *\/\n        .content-card {\n            background-color: #1d1d1d;\n            color: #fff;\n            padding: 2rem;\n            border-radius: 1rem;\n            border: 1px solid rgba(156,175,136,0.3);\n            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3);\n            margin: 2rem auto;\n            max-width: 800px;\n            transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.6s ease;\n            overflow: hidden;\n            opacity: 0;\n            transform: translateY(30px);\n        }\n\n        .content-card.animate-in {\n            opacity: 1;\n            transform: translateY(0);\n        }\n\n        .content-card:hover {\n            transform: translateY(-4px);\n            box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4);\n        }\n\n        \/* Content Text *\/\n        .content-text {\n            font-size: 1rem;\n            line-height: 1.6;\n            color: #E3E3DC;\n            margin-bottom: 1.5rem;\n        }\n\n        .content-text:last-child {\n            margin-bottom: 0;\n        }\n\n        \/* Links *\/\n        .content-card a {\n            color: #4CAF50;\n            text-decoration: underline;\n            transition: color 0.3s ease;\n            font-weight: 500;\n        }\n\n        .content-card a:hover {\n            color: #45a049;\n        }\n\n        \/* Theme Toggle *\/\n        .theme-toggle {\n            text-align: center;\n            margin-top: 20px;\n        }\n\n        .theme-toggle button {\n            background: rgba(0,0,0,0.8);\n            border: 2px solid #4CAF50;\n            color: #4CAF50;\n            padding: clamp(8px, 2vw, 12px) clamp(15px, 4vw, 25px);\n            border-radius: 25px;\n            cursor: pointer;\n            transition: all 0.3s ease;\n            font-size: clamp(16px, 3vw, 20px);\n            font-weight: bold;\n            font-family: 'Montserrat', sans-serif;\n        }\n\n        .theme-toggle button:hover {\n            background: rgba(76, 175, 80, 0.1);\n            transform: translateY(-2px);\n        }\n\n        \/* Content Break *\/\n        .content-break {\n            height: 3rem;\n            position: relative;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n        }\n\n        .content-break::before {\n            content: '';\n            width: 200px;\n            height: 2px;\n            background: linear-gradient(90deg, transparent, #F4C542, transparent);\n            border-radius: 1px;\n        }\n\n        \/* Enhanced Typography *\/\n        .content-text strong {\n            color: #F4C542;\n            font-weight: 600;\n        }\n\n        \/* CTA Button *\/\n        .cta-button {\n            display: inline-block;\n            background: linear-gradient(135deg, #4CAF50, #45a049);\n            color: #ffffff;\n            padding: 1.2rem 3.5rem;\n            border-radius: 50px;\n            text-decoration: none;\n            font-weight: 600;\n            font-size: 1.3rem;\n            transition: all 0.3s ease;\n            box-shadow: 0 4px 15px rgba(76, 175, 80, 0.3);\n            border: none;\n            cursor: pointer;\n        }\n\n        .cta-button:hover {\n            transform: translateY(-3px) !important;\n            box-shadow: 0 6px 20px rgba(76, 175, 80, 0.4) !important;\n            background: linear-gradient(135deg, #45a049, #3d8b40) !important;\n        }\n\n        \/* CTA Section *\/\n        .cta-section {\n            text-align: center;\n            margin: 4rem auto;\n            max-width: 950px;\n            padding: 2rem;\n        }\n\n        \/* Mobile Responsive *\/\n        @media (max-width: 768px) {\n            .tbos-container {\n                padding: 0 1rem;\n            }\n\n            .content-card {\n                padding: 1.5rem;\n                margin: 2rem auto;\n            }\n\n            .about-page {\n                padding-top: 150px;\n            }\n\n            .cta-button {\n                padding: 1rem 2.5rem;\n                font-size: 1.2rem;\n            }\n        }\n\n        @media (max-width: 480px) {\n            .video-modal-content {\n                margin: 10% auto;\n                width: 98%;\n                height: 60vh;\n                max-height: 400px;\n            }\n        }\n    <\/style>\n<\/head>\n<body>\n    <!-- Audio Elements (Hidden) -->\n    <div style=\"display: none;\">\n        <audio id=\"nightTimeAudio\" preload=\"auto\">\n            <source src=\"https:\/\/twobirdsonestoned.co\/wp-content\/uploads\/2025\/06\/Nighttime-Bird.mp3\" type=\"audio\/mpeg\">\n        <\/audio>\n        \n        <audio id=\"dayTimeAudio\" preload=\"auto\">\n            <source src=\"https:\/\/twobirdsonestoned.co\/wp-content\/uploads\/2025\/06\/Daytime-Bird-.mp3\" type=\"audio\/mpeg\">\n        <\/audio>\n    <\/div>\n\n    <!-- VIDEO MODAL -->\n    <div id=\"videoModal\" class=\"video-modal\">\n        <div class=\"video-modal-content\">\n            <div class=\"video-modal-header\">\n                <h3 id=\"videoModalTitle\" class=\"video-modal-title\">\u0141adowanie...<\/h3>\n                <button class=\"video-modal-close\" onclick=\"closeVideoModal()\">\u00d7<\/button>\n            <\/div>\n            <div class=\"video-container\">\n                <iframe id=\"videoIframe\" src=\"\" allowfullscreen><\/iframe>\n            <\/div>\n        <\/div>\n    <\/div>\n\n    <section class=\"about-page\">\n        <div class=\"tbos-container\">\n            <!-- Title Section -->\n            <div class=\"title-container\">\n                <h1 class=\"tbos-section-title translation-block\" style=\"font-size: clamp(28px, 8vw, 48px); font-weight: bold; margin: 0 0 25px 0; text-shadow: 2px 2px 8px rgba(0,0,0,0.8); line-height: 1.1; text-align: center; padding: 0; display: block; width: 100%; clear: both; background: none; border-radius: 0; box-shadow: none; max-width: none; margin-left: auto; margin-right: auto;\"><span>KTO<\/span> <span>TO<\/span> <span>PISZE?<\/span><\/h1>\n                <p class=\"page-subtitle\">Jedz swoje warzywa<\/p>\n                \n                <!-- Theme Toggle -->\n                <div class=\"theme-toggle\">\n                    <button onclick=\"toggleThemeAndText()\" id=\"theme-toggle\">\ud83c\udf19<\/button>\n                <\/div>\n            <\/div>\n\n            <!-- Content Break -->\n            <div class=\"content-break\"><\/div>\n\n            <!-- Intro Section -->\n            <div class=\"content-card\">\n                <p class=\"content-text\"><span class=\"video-link\" onclick=\"openVideoModal('JBNHQzSl3GM', 'Ah me neck')\">Ah me neckkkkk<\/span>.<\/p>\n                <p class=\"content-text\">No wi\u0119c tu jestem, Bangkok, 20:25 20 pa\u017adziernika 2025, pisz\u0119 w Google Docs. Troch\u0119 jak zamkni\u0119cie ko\u0142a tak naprawd\u0119. Kiedy zdecydowa\u0142em si\u0119 zacz\u0105\u0107 uczy\u0107 ludzi o zio\u0142o, Google Docs by\u0142 miejscem gdzie wszystko si\u0119 zacz\u0119\u0142o. By\u0142o tyle roboty \u017ceby strona wygl\u0105da\u0142a jak chc\u0119, funkcjonalna, filmiki jak chcesz, edytowanie tre\u015bci pisanych itp itd. M\u00f3g\u0142bym gada\u0107 w k\u00f3\u0142ko szczerze ale nie b\u0119d\u0119.<\/p>\n                <p class=\"content-text\">Od wczoraj to co jest napisane poni\u017cej by\u0142o przeznaczone na stron\u0119 'O nas'. Po prostu nie my\u015bla\u0142em \u017ce pasuje, to bardziej osobiste, bardziej o go\u015bciu co pisze te s\u0142owa :L Pami\u0119tasz wysy\u0142anie wiadomo\u015bci z tymi w \u015brodku hahaha :L :L :O<\/p>\n                <p class=\"content-text\">Anyway yea I didnt think it fit there so I've given it's own page. Easy to do when you figure out how to build the website. Shoutout Claude and its early coding capabilities. Everything feels like it's moving 100mph these days. It's really just a quick snapshot of what I've been doing for the last while. Not going to add or change things because I can't be arsed and been at this long enough. So yea, a bit about the person who built the first version of this website and what I've been at.<\/p>\n            <\/div>\n\n            <!-- The Journey Content -->\n            <div class=\"content-card\">\n                <p class=\"content-text\">Bardzo szybki przegl\u0105d: Dorasta\u0142em w Irlandii i mia\u0142em ekstremalnie du\u017co szcz\u0119\u015bcia patrz\u0105c wstecz. Komfort finansowy, dobre wykszta\u0142cenie i stabilny dom. Nie ma nic wi\u0119cej czego kto\u015b m\u00f3g\u0142by chcie\u0107 dorastaj\u0105c, chocia\u017c staje si\u0119 to bardziej jasne z wiekiem.<\/p>\n                \n                <p class=\"content-text translation-block\">Dorastaj\u0105c gra\u0142em w wiele sport\u00f3w, g\u0142\u00f3wnie w <span class=\"video-link\">hurling<\/span> i <span class=\"video-link\">futbol gaelicki<\/span>, sp\u0119dza\u0142em czas z ziomkami, quickscopowa\u0142em troch\u0119 noob\u00f3w, przedostawa\u0142em si\u0119 przez system edukacji i pi\u0142em w wi\u0119kszo\u015b\u0107 weekend\u00f3w. Przy okazji prawdopodobnie te\u017c przesun\u0105\u0142em kilka granic po drodze. Nic zbyt dzikiego, po prostu zwyk\u0142a mieszanka dobrych czas\u00f3w i lekcji, kt\u00f3re przychodz\u0105 z dorastaniem. Wszystko to prawdopodobnie ukszta\u0142towa\u0142o to, jak my\u015bl\u0119 o rzeczach dzisiaj.<\/p>\n                \n                <p class=\"content-text\">Po uko\u0144czeniu Uniwersytetu w Limerick sp\u0119dzi\u0142em wczesn\u0105 karier\u0119 w techowej scenie Dublina. Dzi\u0119ki ulgom podatkowym irlandzkiego rz\u0105du miasto sta\u0142o si\u0119 magnesem dla firm takich jak Google i dla ludzi takich jak ja, goni\u0105cych za szansami. Kr\u00f3tki kontrakt sprzeda\u017cowy tam zamieni\u0142 si\u0119 w kilka definiuj\u0105cych lat. Dosta\u0142em ekspozycj\u0119 kt\u00f3rej nie mog\u0142em zaplanowa\u0107, i w tamtym czasie \u017cycie wydawa\u0142o si\u0119 by\u0107 na w\u0142a\u015bciwej \u015bcie\u017cce.<\/p>\n                \n                <p class=\"content-text\">Potem \u017cycie zrobi\u0142o rzeczy \u017cyciowe. Po okresie chaosu, refleksji i wyja\u015bniania spraw straci\u0142em mi\u0142o\u015b\u0107 do wszystkiego, co robi\u0142em w moim \u017cyciu. Brutalne pytanie: czy mia\u0142em zbudowa\u0107 ca\u0142\u0105 swoj\u0105 karier\u0119 wok\u00f3\u0142 sprzedawania rzeczy, kt\u00f3re praktycznie nic dla mnie nie znaczy\u0142y, tylko dlatego, \u017ce oznacza\u0142o to bezpiecze\u0144stwo finansowe? Ta wizja mojej przysz\u0142o\u015bci mnie przestraszy\u0142a, wi\u0119c odpowied\u017a brzmia\u0142a nie.<\/p>\n                \n                <p class=\"content-text\">Chcia\u0142em odkrywa\u0107 swoje zainteresowania. Ale czym do cholery by\u0142y moje zainteresowania?<\/p>\n                \n                <p class=\"content-text translation-block\">C\u00f3\u017c, podczas spaceru w Dublinie pewnego wieczoru, pal\u0105c starego jointa,<strong style=\"font-weight: 600 !important\"> niezwykle dobrze wyczasowany<\/strong> <a href=\"https:\/\/open.spotify.com\/episode\/6ef7aaNiEm70KG8eWbnZVR?si=55800e7498804f1a\" target=\"_blank\">podcast Davida McWilliamsa<\/a> trafi\u0142 na moj\u0105 drog\u0119. Ten konkretny podcast rozpali\u0142 co\u015b we mnie, kierunek do eksploracji. Cannabis. Wi\u0119c tobie David, go raibh m\u00edle maith agat se\u00f1or.<\/p>\n                \n                <p class=\"content-text translation-block\">Nied\u0142ugo po pos\u0142uchaniu tego podcastu rzuci\u0142em robot\u0119 w Google i sp\u0119dzi\u0142em miesi\u0105ce podr\u00f3\u017cuj\u0105c przez Ameryk\u0119 Po\u0142udniow\u0105 i \u015arodkow\u0105. Do\u015bwiadczy\u0142em miejsc takich jak Kolumbia, Nikaragua, Belize, Peru i Meksyk, szczerze taka ciekawa cz\u0119\u015b\u0107 \u015bwiata. <a href=\"https:\/\/one-mans-thoughts.notion.site\/Quitting-my-job-Travelling-South-Central-America-Moving-to-Australia-3bdc5b5cce5d42adb028bcf5db3dad21\" target=\"_blank\">Napisa\u0142em co\u015b o je\u017adzie tam<\/a> wcze\u015bniej i nie mog\u0119 poleci\u0107 tego wystarczaj\u0105co. Wspomnienia zrobione z kilkoma \u015bwietnymi przyjaci\u00f3\u0142mi i przypadkowymi nieznajomymi po drodze.<\/p>\n                \n                <p class=\"content-text\">Potem zadzwoni\u0142a Australia (jak robi to po\u0142owie Irlandii). Sko\u0144czy\u0142em pracuj\u0105c w budowie, pi\u0142a \u0142a\u0144cuchowa w jednej r\u0119ce, m\u0142ot pneumatyczny w drugiej (jeste\u015b ABN czy TFN ziom). Ale druga cz\u0119\u015b\u0107 Australii wzywa\u0142a, wi\u0119c kupi\u0142em 4x4, zbudowa\u0142em \u0142\u00f3\u017cko z ty\u0142u, i pojecha\u0142em na wie\u015b. To te\u017c by\u0142o prze\u017cycie delikatnie m\u00f3wi\u0105c.. Cztery miesi\u0105ce p\u00f3\u017aniej zepsu\u0142o mi si\u0119 w outbacku i musia\u0142em wycofa\u0107 si\u0119 do Sydney, z ogonem mi\u0119dzy nogami. To upokarzaj\u0105ce do\u015bwiadczenie i niepowodzenie faktycznie otworzy\u0142o drzwi do australijskiego przemys\u0142u medycznej konopi. Tutaj sp\u0119dzi\u0142em dwa lata dzia\u0142aj\u0105c jak g\u0105bka i po prostu ucz\u0105c si\u0119 jak najwi\u0119cej.<\/p>\n                \n                <p class=\"content-text\">Przez ostatnie osiem miesi\u0119cy podr\u00f3\u017cowa\u0142em po Azji, laptop w r\u0119ku, pracuj\u0105c zdalnie a\u017c niedawno przeszed\u0142em na niezale\u017cne doradztwo. Mia\u0142em szcz\u0119\u015bcie mieszka\u0107 w miejscach takich jak Chiny, Tajlandia i Wietnam. Po drodze gra\u0142em w hurling w Hong Kongu i Wietnamie, i w pi\u0142k\u0119 gaelick\u0105 na Tajwanie i w Kuala Lumpur, kontuzje wliczone (bark i \u017cebro, shoutout Asia GAA). To wszystko by\u0142o troch\u0119 szalone szczerze, u\u015bwiadamiaj\u0105c sobie co tam jest. Wr\u00f3c\u0119 do tego ale szczerze, jed\u017a po\u017cy\u0107 w Azji przez chwil\u0119. Twoje spo\u0142eczno\u015bci ju\u017c tu s\u0105, czekaj\u0105.<\/p>\n                \n                <p class=\"content-text\">Ale tak, to wszystko \u0142\u0105czy kropki do miejsca, w kt\u00f3rym jestem teraz.<\/p>\n                \n                <p class=\"content-text\">Praca w przestrzeni cannabis otworzy\u0142a mi oczy. Zobaczy\u0142em, ile os\u00f3b u\u017cywa\u0142o cannabis nie po to, by ucieka\u0107, ale aby radzi\u0107 sobie z b\u00f3lem, stresem i chorob\u0105 oraz jak inni u\u017cywali go, aby zwolni\u0107, by\u0107 obecnym i faktycznie cieszy\u0107 si\u0119 \u017cyciem troch\u0119 bardziej. Zauwa\u017cy\u0142em te\u017c, jak ma\u0142o szerszy \u015bwiat o tym rozumia\u0142. Rozmowy by\u0142y albo zbyt kliniczne, albo zbyt \u0107punowskie. Nie by\u0142o z\u0142otego \u015brodka, \u017cadnej przestrzeni na szczere, zr\u00f3wnowa\u017cone dyskusje.<\/p>\n                \n                <p class=\"content-text\">Do tego jest ta strona. Nie chodzi o m\u00f3wienie ci, \u017ce cannabis jest bez skazy lub \u017ce to jaki\u015b cudowny lek. Jestem tu, aby da\u0107 ludziom miejsce do nauki, my\u015blenia, zadawania pyta\u0144 i mo\u017ce zobaczenia rzeczy troch\u0119 inaczej ni\u017c wcze\u015bniej.<\/p>\n            <\/div>\n\n            <!-- Go Exploring CTA -->\n            <div class=\"cta-section\">\n                <a href=\"https:\/\/twobirdsonestoned.co\/pl\" class=\"cta-button\">\n                    \ud83c\udf3f Id\u017a Odkrywa\u0107\n                <\/a>\n            <\/div>\n        <\/div>\n    <\/section>\n\n    <script>\n        \/\/ Track theme state\n        let isDarkTheme = true;\n\n        \/\/ VIDEO MODAL FUNCTIONS\n        function openVideoModal(videoId, title) {\n            const modal = document.getElementById('videoModal');\n            const iframe = document.getElementById('videoIframe');\n            const modalTitle = document.getElementById('videoModalTitle');\n            \n            modalTitle.textContent = title;\n            iframe.src = `https:\/\/www.youtube.com\/embed\/${videoId}?autoplay=1&rel=0&modestbranding=1`;\n            modal.style.display = 'block';\n            document.body.style.overflow = 'hidden';\n        }\n\n        function closeVideoModal() {\n            const modal = document.getElementById('videoModal');\n            const iframe = document.getElementById('videoIframe');\n            \n            iframe.src = '';\n            modal.style.display = 'none';\n            document.body.style.overflow = '';\n        }\n\n        window.onclick = function(event) {\n            const modal = document.getElementById('videoModal');\n            if (event.target === modal) {\n                closeVideoModal();\n            }\n        }\n\n        document.addEventListener('keydown', function(event) {\n            if (event.key === 'Escape') {\n                closeVideoModal();\n            }\n        });\n\n        function toggleThemeAndText() {\n            const button = document.getElementById('theme-toggle');\n            const currentEmoji = button.textContent.trim();\n            \n            if (currentEmoji === '\ud83c\udf19') {\n                button.textContent = '\u2600\ufe0f';\n                playAudio('dayTimeAudio');\n                isDarkTheme = false;\n            } else {\n                button.textContent = '\ud83c\udf19';\n                playAudio('nightTimeAudio');\n                isDarkTheme = true;\n            }\n            \n            toggleTheme();\n        }\n\n        function playAudio(audioId) {\n            const audio = document.getElementById(audioId);\n            \n            if (audio) {\n                audio.currentTime = 0;\n                const playPromise = audio.play();\n                \n                if (playPromise !== undefined) {\n                    playPromise.then(() => {\n                        console.log(`${audioId} played successfully`);\n                    }).catch(error => {\n                        console.log(`Audio play failed for ${audioId}:`, error);\n                        showVisualFeedback(audioId);\n                    });\n                }\n            }\n        }\n\n        function showVisualFeedback(audioId) {\n            const button = document.getElementById('theme-toggle');\n            const originalTransform = button.style.transform;\n            \n            button.style.transform = 'scale(1.1)';\n            button.style.transition = 'transform 0.1s ease';\n            \n            setTimeout(() => {\n                button.style.transform = originalTransform;\n                button.style.transition = 'all 0.3s ease';\n            }, 100);\n        }\n\n        function toggleTheme() {\n            const body = document.body;\n            const html = document.documentElement;\n            const contentCards = document.querySelectorAll('.content-card');\n            const title = document.querySelector('.tbos-section-title');\n            const subtitle = document.querySelector('.page-subtitle');\n            const toggleButton = document.getElementById('theme-toggle');\n            \n            \/\/ These elements don't exist on this page but keeping for consistency\n            const header = document.querySelector('.tbos-header');\n            const headerNavLinks = document.querySelectorAll('.tbos-nav a');\n            const headerSocialLinks = document.querySelectorAll('.tbos-socials a');\n            const dropdownContent = document.querySelectorAll('.dropdown-content');\n            const hamburgerLines = document.querySelectorAll('.hamburger-line');\n            \n            const mobileMenu = document.querySelector('.mobile-menu');\n            const mobileMenuLinks = document.querySelectorAll('.mobile-menu a');\n            const mobileSocialLinks = document.querySelectorAll('.mobile-socials a');\n            \n            const footerCardWrapper = document.querySelector('.footer-card-wrapper');\n            const footerTitle = document.querySelector('.footer-card h4');\n            const footerText = document.querySelectorAll('.footer-card p');\n            const footerLinks = document.querySelectorAll('.footer-bottom-row a');\n            const footerSocialLinks = document.querySelectorAll('.footer-social-group a');\n            \n            if (!isDarkTheme) {\n                \/\/ LIGHT THEME\n                console.log('Applying LIGHT theme');\n                \n                body.classList.add('light-theme');\n                \n                html.style.setProperty('background', 'linear-gradient(135deg, #f8f6f0 0%, #ede8d8 25%, #e5dcc9 50%, #ede8d8 75%, #f8f6f0 100%)', 'important');\n                body.style.setProperty('background', 'linear-gradient(135deg, #f8f6f0 0%, #ede8d8 25%, #e5dcc9 50%, #ede8d8 75%, #f8f6f0 100%)', 'important');\n                \n                html.style.setProperty('margin', '0', 'important');\n                html.style.setProperty('padding', '0', 'important');\n                body.style.setProperty('margin', '0', 'important');\n                body.style.setProperty('padding', '0', 'important');\n                html.style.setProperty('min-height', '100vh', 'important');\n                body.style.setProperty('min-height', '100vh', 'important');\n                \n                if (header) {\n                    header.style.setProperty('background', '#ffffff', 'important');\n                    header.style.setProperty('border', '2px solid #000000', 'important');\n                }\n                \n                headerNavLinks.forEach(link => {\n                    link.style.setProperty('color', '#2A2A2A', 'important');\n                });\n                \n                headerSocialLinks.forEach(link => {\n                    link.style.setProperty('color', '#2A2A2A', 'important');\n                });\n                \n                dropdownContent.forEach(dropdown => {\n                    dropdown.style.setProperty('background', '#ffffff', 'important');\n                    dropdown.style.setProperty('border', '2px solid #000000', 'important');\n                    \n                    const dropdownLinks = dropdown.querySelectorAll('a');\n                    dropdownLinks.forEach(link => {\n                        link.style.setProperty('color', '#2A2A2A', 'important');\n                    });\n                });\n                \n                hamburgerLines.forEach(line => {\n                    line.style.setProperty('background', '#2A2A2A', 'important');\n                });\n                \n                if (mobileMenu) {\n                    mobileMenu.style.setProperty('background', '#ffffff', 'important');\n                    mobileMenu.style.setProperty('border-left', '2px solid #000000', 'important');\n                }\n                \n                mobileMenuLinks.forEach(link => {\n                    link.style.setProperty('color', '#2A2A2A', 'important');\n                    link.style.setProperty('border-bottom', '1px solid rgba(0, 0, 0, 0.1)', 'important');\n                });\n                \n                mobileSocialLinks.forEach(link => {\n                    link.style.setProperty('color', '#2A2A2A', 'important');\n                    link.style.setProperty('background', 'rgba(0, 0, 0, 0.05)', 'important');\n                });\n                \n                if (footerCardWrapper) {\n                    footerCardWrapper.style.setProperty('background', '#ffffff', 'important');\n                    footerCardWrapper.style.setProperty('border', '2px solid #000000', 'important');\n                }\n                \n                if (footerTitle) {\n                    footerTitle.style.setProperty('color', '#B8860B', 'important');\n                }\n                \n                footerText.forEach(text => {\n                    text.style.setProperty('color', '#1a1a1a', 'important');\n                    text.style.setProperty('font-weight', '500', 'important');\n                });\n                \n                footerLinks.forEach(link => {\n                    link.style.setProperty('color', '#000000', 'important');\n                });\n                \n                footerSocialLinks.forEach(link => {\n                    link.style.setProperty('color', '#4CAF50', 'important');\n                });\n                \n                contentCards.forEach(card => {\n                    card.style.setProperty('background-color', '#ffffff', 'important');\n                    card.style.setProperty('border', '2px solid #000000', 'important');\n                    card.style.setProperty('color', '#2A2A2A', 'important');\n                    \n                    const texts = card.querySelectorAll('p, .content-text');\n                    texts.forEach(text => {\n                        text.style.setProperty('color', '#1a1a1a', 'important');\n                        text.style.setProperty('font-weight', '500', 'important');\n                    });\n                    \n                    const strongTexts = card.querySelectorAll('strong');\n                    strongTexts.forEach(strong => {\n                        strong.style.setProperty('color', '#000000', 'important');\n                        strong.style.setProperty('font-weight', '600', 'important');\n                    });\n                    \n                    const links = card.querySelectorAll('a');\n                    links.forEach(link => {\n                        link.style.setProperty('color', '#B8860B', 'important');\n                    });\n                    \n                    const videoLinks = card.querySelectorAll('.video-link');\n                    videoLinks.forEach(link => {\n                        link.style.setProperty('color', '#B8860B', 'important');\n                    });\n                });\n                \n                if (title) {\n                    title.style.setProperty('text-shadow', 'none', 'important');\n                    \n                    const spans = title.querySelectorAll('span');\n                    spans.forEach((span, index) => {\n                        if (index === 1) {\n                            span.style.setProperty('color', '#2A2A2A', 'important');\n                        } else {\n                            span.style.setProperty('color', '#B8860B', 'important');\n                        }\n                    });\n                }\n\n                if (subtitle) {\n                    subtitle.style.setProperty('color', '#000000', 'important');\n                    subtitle.style.setProperty('opacity', '1', 'important');\n                }\n\n                const ctaButtons = document.querySelectorAll('.cta-button');\n                ctaButtons.forEach(button => {\n                    button.style.setProperty('background', 'linear-gradient(135deg, #4CAF50, #45a049)', 'important');\n                    button.style.setProperty('color', '#FFFFFF', 'important');\n                    button.style.setProperty('box-shadow', '0 4px 15px rgba(76, 175, 80, 0.3)', 'important');\n                });\n                \n                if (toggleButton) {\n                    toggleButton.style.setProperty('background', '#ffffff', 'important');\n                    toggleButton.style.setProperty('border', '2px solid #B8860B', 'important');\n                    toggleButton.style.setProperty('color', '#B8860B', 'important');\n                }\n                \n            } else {\n                \/\/ DARK THEME\n                console.log('Applying DARK theme');\n                \n                body.classList.remove('light-theme');\n                \n                html.style.setProperty('background', 'linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 25%, #2a2a2a 50%, #1a1a1a 75%, #0a0a0a 100%)', 'important');\n                body.style.setProperty('background', 'linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 25%, #2a2a2a 50%, #1a1a1a 75%, #0a0a0a 100%)', 'important');\n                \n                html.style.setProperty('margin', '0', 'important');\n                html.style.setProperty('padding', '0', 'important');\n                body.style.setProperty('margin', '0', 'important');\n                body.style.setProperty('padding', '0', 'important');\n                html.style.setProperty('min-height', '100vh', 'important');\n                body.style.setProperty('min-height', '100vh', 'important');\n                \n                if (header) {\n                    header.style.setProperty('background', '#1d1d1d', 'important');\n                    header.style.setProperty('border', '1px solid rgba(156,175,136,0.3)', 'important');\n                }\n                \n                headerNavLinks.forEach(link => {\n                    link.style.setProperty('color', '#f5ebd6', 'important');\n                });\n                \n                headerSocialLinks.forEach(link => {\n                    link.style.setProperty('color', '#f5ebd6', 'important');\n                });\n                \n                dropdownContent.forEach(dropdown => {\n                    dropdown.style.setProperty('background', '#1d1d1d', 'important');\n                    dropdown.style.setProperty('border', '1px solid rgba(156,175,136,0.3)', 'important');\n                    \n                    const dropdownLinks = dropdown.querySelectorAll('a');\n                    dropdownLinks.forEach(link => {\n                        link.style.setProperty('color', '#f5ebd6', 'important');\n                    });\n                });\n                \n                hamburgerLines.forEach(line => {\n                    line.style.setProperty('background', '#f5ebd6', 'important');\n                });\n                \n                if (mobileMenu) {\n                    mobileMenu.style.setProperty('background', 'rgba(29, 29, 29, 0.98)', 'important');\n                    mobileMenu.style.setProperty('border-left', '1px solid rgba(156,175,136,0.3)', 'important');\n                }\n                \n                mobileMenuLinks.forEach(link => {\n                    link.style.setProperty('color', '#f5ebd6', 'important');\n                    link.style.setProperty('border-bottom', '1px solid rgba(255, 255, 255, 0.1)', 'important');\n                });\n                \n                mobileSocialLinks.forEach(link => {\n                    link.style.setProperty('color', '#f5ebd6', 'important');\n                    link.style.setProperty('background', 'rgba(255, 255, 255, 0.05)', 'important');\n                });\n                \n                if (footerCardWrapper) {\n                    footerCardWrapper.style.setProperty('background', '#1d1d1d', 'important');\n                    footerCardWrapper.style.setProperty('border', '1px solid rgba(156,175,136,0.3)', 'important');\n                }\n                \n                if (footerTitle) {\n                    footerTitle.style.setProperty('color', '#F4C542', 'important');\n                }\n                \n                footerText.forEach(text => {\n                    text.style.setProperty('color', '#f5ebd6', 'important');\n                    text.style.setProperty('font-weight', '400', 'important');\n                });\n                \n                footerLinks.forEach(link => {\n                    link.style.setProperty('color', '#4CAF50', 'important');\n                });\n                \n                footerSocialLinks.forEach(link => {\n                    link.style.setProperty('color', '#4CAF50', 'important');\n                });\n                \n                contentCards.forEach(card => {\n                    card.style.setProperty('background-color', '#1d1d1d', 'important');\n                    card.style.setProperty('border', '1px solid rgba(156,175,136,0.3)', 'important');\n                    card.style.setProperty('color', '#fff', 'important');\n                    \n                    const texts = card.querySelectorAll('p, .content-text');\n                    texts.forEach(text => {\n                        text.style.setProperty('color', '#E3E3DC', 'important');\n                        text.style.setProperty('font-weight', '400', 'important');\n                    });\n                    \n                    const strongTexts = card.querySelectorAll('strong');\n                    strongTexts.forEach(strong => {\n                        strong.style.setProperty('color', '#F4C542', 'important');\n                        strong.style.setProperty('font-weight', '600', 'important');\n                    });\n                    \n                    const links = card.querySelectorAll('a');\n                    links.forEach(link => {\n                        link.style.setProperty('color', '#4CAF50', 'important');\n                    });\n\n                    const videoLinks = card.querySelectorAll('.video-link');\n                    videoLinks.forEach(link => {\n                        link.style.setProperty('color', '#4CAF50', 'important');\n                    });\n                });\n                \n                if (title) {\n                    title.style.setProperty('text-shadow', '2px 2px 8px rgba(0,0,0,0.8)', 'important');\n                    \n                    const spans = title.querySelectorAll('span');\n                    spans.forEach((span, index) => {\n                        if (index === 1) {\n                            span.style.setProperty('color', '#F5EBD6', 'important');\n                        } else {\n                            span.style.setProperty('color', '#F4C542', 'important');\n                        }\n                    });\n                }\n\n                if (subtitle) {\n                    subtitle.style.setProperty('color', '#E3E3DC', 'important');\n                    subtitle.style.setProperty('opacity', '0.9', 'important');\n                }\n\n                const ctaButtons = document.querySelectorAll('.cta-button');\n                ctaButtons.forEach(button => {\n                    button.style.setProperty('background', 'linear-gradient(135deg, #4CAF50, #45a049)', 'important');\n                    button.style.setProperty('color', '#FFFFFF', 'important');\n                    button.style.setProperty('box-shadow', '0 4px 15px rgba(76, 175, 80, 0.3)', 'important');\n                });\n                \n                console.log('Applied dark theme CTA styling');\n                \n                if (toggleButton) {\n                    toggleButton.style.setProperty('background', 'rgba(0,0,0,0.8)', 'important');\n                    toggleButton.style.setProperty('border', '2px solid #4CAF50', 'important');\n                    toggleButton.style.setProperty('color', '#4CAF50', 'important');\n                }\n            }\n        }\n\n        \/\/ Initialize page\n        document.addEventListener('DOMContentLoaded', function() {\n            initializeAnimations();\n            toggleTheme();\n            \n            setTimeout(() => {\n                const ctaButtons = document.querySelectorAll('.cta-button');\n                ctaButtons.forEach(button => {\n                    button.style.setProperty('background', 'linear-gradient(135deg, #4CAF50, #45a049)', 'important');\n                    button.style.setProperty('color', '#FFFFFF', 'important');\n                    button.style.setProperty('box-shadow', '0 4px 15px rgba(76, 175, 80, 0.3)', 'important');\n                });\n            }, 100);\n        });\n\n        function initializeAnimations() {\n            setTimeout(() => {\n                const titleContainer = document.querySelector('.title-container');\n                if (titleContainer) {\n                    titleContainer.style.opacity = '1';\n                    titleContainer.style.transform = 'translateY(0)';\n                }\n            }, 200);\n\n            const observer = new IntersectionObserver((entries) => {\n                entries.forEach((entry, index) => {\n                    if (entry.isIntersecting) {\n                        setTimeout(() => {\n                            entry.target.classList.add('animate-in');\n                        }, index * 50);\n                        observer.unobserve(entry.target);\n                    }\n                });\n            }, {\n                threshold: 0.05,\n                rootMargin: '0px 0px -20px 0px'\n            });\n\n            const cards = document.querySelectorAll('.content-card');\n            cards.forEach(card => {\n                observer.observe(card);\n            });\n        }\n    <\/script>\n<\/body>\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Who&#8217;s Typing Da Words &#8211; Two Birds One Stoned | Meet James Loading&#8230; &times; WHO&#8217;S TYPING DA WORDS? Eat your vegtables \ud83c\udf19 Ah me neckkkkk. So here I am, Bangkok, 8:25pm on the 20th of October 2025, typing away in Google Docs. Bit of a full circle moment really. When I first decided to start [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-7726","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/twobirdsonestoned.co\/pl\/wp-json\/wp\/v2\/pages\/7726","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/twobirdsonestoned.co\/pl\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/twobirdsonestoned.co\/pl\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/twobirdsonestoned.co\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/twobirdsonestoned.co\/pl\/wp-json\/wp\/v2\/comments?post=7726"}],"version-history":[{"count":42,"href":"https:\/\/twobirdsonestoned.co\/pl\/wp-json\/wp\/v2\/pages\/7726\/revisions"}],"predecessor-version":[{"id":7779,"href":"https:\/\/twobirdsonestoned.co\/pl\/wp-json\/wp\/v2\/pages\/7726\/revisions\/7779"}],"wp:attachment":[{"href":"https:\/\/twobirdsonestoned.co\/pl\/wp-json\/wp\/v2\/media?parent=7726"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}